Возможен ли пробой UDP? - PullRequest
       10

Возможен ли пробой UDP?

4 голосов
/ 21 августа 2010

Я пытаюсь выяснить, возможна ли пробивка дырок UDP за определенным NAT, но я обнаружил, что когда компьютер за NAT отправляет пакеты UDP на два разных IP на один и тот же порт, будучи привязанным к одномупорт, NAT назначает два разных номера внешних портов.Так что за этим конкретным NAT я считаю, что пробивание дырок в UDP невозможно, верно ли это?

Спасибо

Ответы [ 3 ]

1 голос
/ 06 декабря 2014

это означает ваш NaT Symetric, и если ваш NaT является Symetric, ему назначаются разные внешние порты для каждого соединения. И невозможно соединить перфорирование отверстий с двух сторон, но все еще возможно соединение p2p.Но возможно только в том случае, если на стороне агента используется конический нат.Ищите это.

Но если в двух местах с использованием Symetric NaT нет возможности соединить p2p-соединение с Udp Hole Punching.

  1. a: Symetric => b: symetric ---- невозможно
  2. a: Conic => b: Conic ------------ возможно легко
  3. a: Symetric => b: Coinc --------- возможно / только одностороннее рукопожатие 4: a: Conic => b: symetric --------- невозможно / возможно подключить одностороннее рукопожатие

Но вывсе еще может использовать методы прогнозирования порта.это означает, что вы должны угадать, какой порт можно использовать в соединении, и попытаться подключить его (Tcp Hole Punch)

Для Conic NaT можно посмотреть информацию о пробивании UDP отверстий. Проверьте образец в https://github.com/turapulku/NaT-Traversal-UDP-Hole-punch.git

Это все еще развивается, но сейчас я надеюсь, что это полезно

1 голос
/ 21 августа 2010

Не обязательно.Маршрутизатор может быть готов ответить на IGD .

0 голосов
/ 20 февраля 2013

Вы можете использовать этот веб-сайт для подтверждения поведения данного конкретного NAT.

http://nattest.net.in.tum.de/test.php

Он проверит ваш тип NAT и проверит, возможно ли пробивание отверстий UDP / TCP.

Но поскольку вы уже знали, что назначение порта является случайным, пробивание UDP-дыры невозможно. Использование UPnP to - это другой способ, но он не работает за вложенными NAT.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...