Предположим, кто-то настроил стандартное соединение Ethernet - есть IPv4-адрес, спецификация подсети, маршрут по умолчанию, даже серверы имен в resolv.conf, статические маршруты везде - возможно ли для клиентского программного обеспечения найти другие хосты в той же сети, которые путь, скажем, в Интернет?
Я предполагаю, что можно просто отправить пакеты, например, на 8.8.8.8, используя кадр Ethernet, направленный на возможно-маршрутизатор, и посмотреть, вернется ли что-то еще. Не понимаю, почему это не сработает, но пытаюсь выяснить, почему это не делается на практике. Современная Windows делает это? Разве Skype не попробовал бы что-то подобное?
С точки зрения безопасности, я спрашиваю, может ли этот возможный скрытый канал быть автоматически обнаружен «слегка некорректным» программным обеспечением, таким как Skype.
Если типично, возможно обнаружение маршрутизаторов. Во многих крупных сетях маршрутизаторы обнаруживают друг друга и настраивают свои собственные маршруты, используя то, что называется протокол маршрутизации.
В локальной сети не так уж редко можно увидеть ПОКОЙСЯ С МИРОМ или OSPF работает, что позволяет обнаруживать маршрутизаторы. В общедоступном Интернете наиболее распространенным протоколом маршрутизации является BGP
Но большинство потребительских устройств «маршрутизатор / коммутатор / нат / шлюз» не поддерживают RIP или не включают его по умолчанию. Таким образом, потребительский продукт, такой как Skype, ничего от этого не выиграет. Также это было бы нарушением многоуровневости для Skype, которое является приложением TCP / IP, чтобы начать возиться с таблицами маршрутизации и протоколами маршрутизации. Таблицы маршрутизации принадлежат всей системе. Если одно приложение возится с таблицами маршрутизации, многие вещи могут выйти из строя.
Хотя это возможно, я почти уверен, что приложения, если не написано иначе, будут следовать тому, что предоставляет сетевой стек операционной системы.