В чем разница между перфорацией UDP и UPnP?

Поэтому Skype и другие приложения p2p-типа часто работают с помощью так называемого дырокола (см. Простое руководство здесь), чтобы соединить двух клиентов, которые находятся за брандмауэрами, которые блокируют входящие соединения.

uPnP также используется, чтобы обойти пользователя вручную, чтобы переадресовать порты. Насколько точно он отличается от вида перфорации, описанного выше? Я предполагаю, что он должен работать по-другому, так как большинство маршрутизаторов имеют настройку для его включения / выключения, в то время как я не вижу способа, которым можно было бы остановить вышеупомянутый тип пробивки дырок UDP (кроме блокирования исходящих соединений и входящих / установленных).

Во-вторых, если, скажем, Skype/bittorrent может установить и установить прямое соединение между AB с пробиванием отверстий, означает ли это, что на маршрутизаторе не требуется включение upnp?

1 ответ

Решение

Для работы UPnP соответствующий маршрутизатор должен поддерживать его. Устройство с UPnP в основном просит маршрутизатор с поддержкой UPnP открыть порт и перенаправить трафик на него. Ни одна сторона, внешняя по отношению к ЛВС, не должна быть в состоянии сделать это, если только маршрутизатор ЛВС не настроен неправильно или широко открыт для всего мира.

Перфорация отверстий использует преимущества UDP-соединения:

  • A отправляет пакет UDP по порту +IP на B
  • NAT A запоминает это, и, поскольку A создал пакет, считает, что A начал диалог (хотя технически с UDP нет способа узнать это наверняка), а затем разрешает входящий трафик на этот порт +IP
  • Промежуточная сторона (в статье, которую вы предоставили, это сервер коммутации Skype) по-прежнему необходима, поскольку брандмауэр B будет блокировать входящий трафик, но теперь сервер коммутации может MITM и отправлять ответ через порт A +IP, который должен достичь A, потому что NAT переадресовывает из-за инициирующего трафика.

Перфорация отверстий в основном позволяет стороне, находящейся вне локальной сети, достичь чего-то, слушающего за NAT, с помощью посредника.

Другие вопросы по тегам