Ответы пользователя по тегу Компьютерные сети
  • Как подключиться к устройству в локальной сети из интернета через купленный у провайдера сервер?

    @Karpion
    Если NAT делает подвластное Вам устройство - можно настроить проброс портов внутрь сети. Сделать это можно для всего мира (т.е. любой желающий сможет законнектиться к устройству в локальной сети); или не для всех, а для избранных IP-адресов.

    Можно настроить не проброс портов, а SSh-туннель. Мануал есть на Хабре, искать по слову "ssh". Инициировать SSh-туннель может и Ваш VPS, и устройство в локальной сети.

    Можно настроить VPN от устройства в локальной сети к Вашему VPS. Инициировать VPN-соединение должно устройство в локальной сети.
    Ответ написан
    Комментировать
  • Как используя raspberry pi найти подключенные к wifi устройства?

    @Karpion
    Полную информацию о подключённых устройствах - знают сами устройства. Но они без специальной программы - не расскажут о себе.

    Следующий уровень - это сам роутер. Но он знает далеко не всё; и, что хуже - подключённые устройства могут ему наврать о себе.
    Что из этой информации роутер готов рассказать - зависит от прошивки роутера.

    И наконец, можно попытаться самостоятельно просканировать сеть - собрать IP-адреса и MAC/ARP-адреса; просканировать устройства на предмет определения информации о них на основе каких-то особенностей сетевого поведения. Для этого надо на raspberry pi взгромоздить операционку и запустить там программу-сканер.

    А с какой целью Вам это нужно? И почему именно python?
    Ответ написан
  • Для чего нужен адрес шлюза?

    @Karpion
    Чтобы послать пакет наружу - его надо пробросить роутеру.
    Если сеть построена на свичах - то надо запихнуть IP-пакет в Ethernet-кадр, где в качестве destignstion будет указан MAC-адрес шлюза_по_умолчанию (или иного шлюза, бывают разные конфигурации).
    Если сеть построена на хабах или на коаксиале - то тоже нужно. Но мне лень объяснять, ибо неактуально. Кому интересно - достаточно знать, что промискуитет на сетевой карте включают только только по особой надобности.

    Откуда наш компьютер может узнать MAC-адрес шлюза? Это можно узнать через протокол ARP; но для ARP-запроса надо знать IP-адрес запрашиваемого компьютера. Собственно, вот и ответ:
    Мы прописываем адрес шлюза для того, чтобы наш компьютер мог ARP-запросом узнать MAC-адрес шлюза.

    Кстати, есть альтернативный вариант настройки: компьютер знает свой IP-адрес, маска 0.0.0.0, а для всех внешних компьютеров прописывается ARP-соответствие. Такое решение годится для компьютера, который сам никогда не обращается наружу, а только получает обращения извне. И вообще, это извращение какое-то; хотя может работать.
    Ответ написан
    Комментировать
  • Openvpn и броадкаст траффик?

    @Karpion
    Я не понял, что значит "пушит маршрут через себя". Какой маршрут?

    По идее - при смене MAC-адреса и ряде иных операций, компьютер рассылает оповещения, т.е. ARP-ответы. Это нужно в первую очередь свичам, но и остальным тоже не помешает.

    А в чём вопрос или проблема? Что Вам не нравится?
    Ответ написан
  • Как организовать симметричное шифрование TCP/IP?

    @Karpion
    Проще всего - "SSh-туннель". Поищите на Хабре статью про SSh - там было чётко расписано и это , и овер до фига всего разного. Не найдёте - я найду. Когда-то давно я по ней делал примерно это.
    Для Windows - есть PuTTY.
    Ответ написан
    Комментировать
  • Какую антенну 4G/3G выбрать?

    @Karpion
    Есть мнение, что на 4G висят много людей, так что независимо от антенны, скорость там высокой не будет. А самых хитрых, которые пробовали переключаться на 3G - мало, поэтому там скорость свысокая.
    Ответ написан
    Комментировать
  • Как динамически менять шлюз по умолчанию?

    @Karpion
    Каждый модем при подключении создаёт eth-интерфейс с ip-адресом 192.168.8.100 и является шлюзом 192.168.8.1. И конфигурирует по dhcp все настройки.
    Возможно, этот параметр можно как-то изменить - отконфигурировать модем так, чтобы он на USB-соединении (ЕВПОЧЯ) делал другие IP-адреса.

    os.system("sudo bash -c 'echo nameserver 192.168.8.1 > /etc/resolv.conf'")
    Зачем каждый раз перезаписывать nameserver?

    Почему-то сеть не всегда поднимается. И главное, ладно бы стабильно не работало бы. А то, то срабатывает такой подход, то нет.
    Если Вы это делаете удалённо (по SSh), то команды изменения настроек д.б. в пакете (командном файле); и выполняться пакет должен оторванно от терминала (nohup на весь пакет. Если не так - то выполнение команд может прерваться, особенно если происходит вывод на терминал какого-то сообщения.

    Приму любые рекомендации!
    Поднять несколько вирт.машин. В каждую пробросить свой USB-порт. И тестировать скорость отдельно для каждой вирт.машины.
    (Я не страдаю извращениями - я ими наслаждаюсь.)
    Ответ написан
    Комментировать
  • Как узнать MAC спящего компьютера?

    @Karpion
    Я настоятельно рекомендую вести учёт MAC-адресов в связке с IP-адресами и NetBIOS-именами. На будущее.

    Если известен производитель сетевой карты или мат.платы - то можно узнать, какие диапазоны MAC-адресов ему выдавались. А дальше - будить всех подряд в этом диапазоне, brute-force перебором.

    arp-scan, nmap и прочие приблуды - в данном случае бесполезны, ибо на спящем компьютере отключены все сетевые службы, кроме WakeOfLan. А WakeOfLan работет не на центральном процессоре, а на процессоре сетевой карты.
    Ответ написан
    6 комментариев
  • Как сформулировать определение?

    @Karpion
    А с какой целью Вам нужно определение?

    "Носитель информации" - это функциональность устройства. Надо ли давать определение? Там всё довольно сложно, если рассматривать разные возможные варианты.
    "Жёсткий диск" - это устройство с функциональностью "носитель информации" и определённым внутренним устройством. Откройте сломанный (или морально устаревший по причине малого размера) диск да посмотрите, как он устроен. Там "блины" и головки - вот и определение.
    Ответ написан
  • Почему пока не запустишь /sbin/dhclient -d enp1s0 ен получает ip?

    @Karpion
    dhclient как раз и получает IP-адрес. Так и должно быть.

    Другое дело - что эта программа-демон должна запускаться автоматически. При инсталляции надо указать это в настройках сети.
    Ответ написан
  • Глупый вопрос: зачем изобретается криптография на разных уровнях сетевой модели?

    @Karpion
    Во-первых, криптография изобретается в математике - а там нет уровней сетевой модели. На уровни сетевой модели криптография внедряется разработчиками.

    Ну, для начала приведу такой пример:
    • PPTP и прочие VPN-протоколы с шифрованием - упихивают трафик в IP-пакеты. Это позволяет коннектиться в любую точку Интернета.
    • PPoE - упихивает трафик в Ethernet-кадры. Это значит, что протокол может работать не далее ближайшего роутера, на котором Ethernet-сегмент заканчивается. Зато мы имеет не такое сильное ужимание MTU.


    Простейшая причина шифровать трафик на уровне приложения - в том, что приложение само реализует шифрование, не спрашивая операционку. Ибо непривилегированный юзер не имеет права внедрять свой код в ядро - а в программе можно реализовать без участия админа. Ну и вообще - в ядре надо иметь как можно меньше кода.
    Ответ написан
    Комментировать
  • Как прописать стат. маршрут?

    @Karpion
    Компьютер(1) имеет VPN-соединение с роутер(1). Хорошо, а как сеть 10.1.1.0 соединена с сетью 192.168.11.0 ? Наверно, там тоже VPN - но со стороны 10.1.1.0 это делает тот же роутер(1) или дугой?

    Пользуйтесь для тестирования программой traceroute (tracert.exe).
    Ответ написан
    Комментировать
  • Возможно ли скрутить 3 кабеля витой пары?

    @Karpion
    Можно. Для этого берём двенадцать резисторов, номинал не помню. Спаиваем их в кольцо. Затем припаиваем к кольцу двенадцать проводов проводочков (по четыри от каждого компьютера), порядок не помню; помню, что Tx от любого компьютера перпендикулярен Rx от того же компьютера.
    Короче говоря, это - "краб", типа того, что делает разветвление телевизионного антенного кабеля на каждом этаже на лестничной клетке - от основного кабеля в квартиры.

    Вы правильно заметили, что краб работает как хаб, а не как свич. К тому же сильно проседает макс.дальность передачи сигнала. Короче, лучше купить самый постой свич. Или даже старый хаб.
    Ответ написан
  • Как маршрутизировать разные домены на разные IP адреса внутренней сети?

    @Karpion
    Из name-based сервисов (т.е. таких, которые могут различать, по какому имени к ним обратились) - есть только два:
    1. E-mail (UUCP, SMTP) - изначально;
    2. HTTP - начиная с версии, кажется, 1.1.
    Остальные известные мне сервисы могут разделяться либо по IP-адресаам, на которые обращаются клиенты (по Вашим условиям - это невозможно); либо по портам; ну, можно ещё отделить TCP от UDP и прочих протоколов этого уровня.

    "postgres" и "www", которые Вы привели как пример - различаются по портам. Поэтому не надо городить огород.

    Ещё есть вариант - клиенты коннектятся к Вашему серверу по VPN; попадают в как бы локальную сеть, связывающую докеры; и дальше резвятся с разными IP-адресами, доступными им напрямую.

    PS: Вы либо не очень понимаете работу протоколов/сервисов; либо невнятно сформулировали задачу. Впрочем, здесь почти все вопросы такие. Да и не здесь - тоже: большинство вопросов происходят от непонимания, потому криво сформулированы.
    Ответ написан
    Комментировать
  • Как поймать слабый wi-fi недорого?

    @Karpion
    Google://"Интернет на дачу" - уж не знаю, насколько это работоспособно, но предложения заманчивые.
    Ответ написан
    Комментировать
  • Хитрый VPN: почему недостаточно 1 ip для доступа к vpn серверу?

    @Karpion
    Для начала надо объяснить, что значит "***_remote", "***_remote_0", "***_remote_1".

    Объясните, что у Вас написано в графе "IP источн.". По идее - после слеша д.б. маска, как в "IP адресата".

    Попробуйте поменять местами правила 2 и 3 - сначала все правила "можно", потом все правила "нельзя".
    Ответ написан
    Комментировать
  • Какие термины и темы могут встретится при разработке сетевого движка для игры?

    @Karpion
    Для начала я советую использовать TCP, а не UDP. Популярность TCP как бы намекает, что с ним работать намного легче; а причина этому - он сам отслеживает и фиксит многие проблемы, присущие протоколу IP: пропажа пакетов, дублирование пакетов, изменение порядка пакетов, невлезание пакета в MTU на каком-то из участков. А в UDP - будете отслеживать и фиксить всё это сами.

    А некоторые игры используют протоколы, работающие поверх TCP - например, HTTP. Это проще, но не годится для интерактивных игр с быстрой реакцией.
    Ответ написан
    4 комментария
  • Как запустить приложение на другом IP адресе?

    @Karpion
    У Вас ошибка в том, что Вы путаете "сайт" и "приложение".

    Приложение в данном случае = Web-сервер. Оно/он может нести на себе много сайтов, которые разделяются: по IP-адресу; по доменному имени на одном IP-адресе; по порту.

    Если Web-сервер обслуживает один сайт - то надо конкретно указать ему, какой IP-адрес слушать.
    Если Web-сервер обслуживает много сайтов - то для каждого сайта надо создать секцию, в которой прописать, на каких IP-адресах этот сайт будет работать.

    При разделении по доменным именам - можно в DNS прописать резолвинг на конкретный IP-адрес, а Web-сервер может слушать их все.
    Короче, есть тьма решений.

    Фразу "через первый планирую только подключаться к серверу, на котором стоит сайт" я не понял. Как именно Вы хотите "подключаться к серверу"? Если по SSh/FTP/etc - то он разделяется с сайтами по порту.
    Ответ написан
    Комментировать
  • Как игровому серверу в локальной сети дать знать клиенту о том, что создана игра?

    @Karpion
    Это смотря как построена лок.сеть. Если это броадкастовый домен - то можно послать броадкастовый пакет, а клиенты будут слушать некий порт, на который направлен оповещательный пакет. Но если сеть поделена на сегменты роутерами или на вирт.сети VLAN-свичами - то это вряд ли получится. А уж если кто-то сидит за роутером, который делает NAT - то всё совсем плохо.

    Мультикаст на групповой адрес - это хорошо. Но роутеры д.б. настроены на трансляцию таких пакетов.

    Напишите подробнее, как Вы представляете себе процесс присоединения к игре и конфигурацию лок.сети.
    Ответ написан
  • Как устранить конфликт в сети между мобильным телефоном и ноутбуками?

    @Karpion
    Начать надо с команд ipconfig /all и arp -a на ноутбуке (я так понимаю, там Windows) и отправки результата сюда. Эту команду надо дать в двух ситуациях: "ноут подключается к сети после телефона" и "ноут подключается к сети перед телефоном". Причём если Вы построчно сравните результаты - то с высокой вероятностью найдёте источник ошибки.

    До кучи - хорошо бы дать команду tracert -d шлюз

    В первом приближении - телефон пытается раздавать Интернет и "оттягивает компьютеры на себя". Возможно, он даже пытается быть DHCP-сервером.
    Ответ написан