Назад | Перейти на главную страницу

NAT UDP Перфорация отверстий для начинающих Qn

Есть ли какой-нибудь простой пример пробивки отверстий UDP-NAT, способный пробивать отверстия для связи двух одноранговых узлов через Интернет?
Я пытаюсь выполнить пробивание отверстий UDP, чтобы можно было прохождение NAT. После просмотра текста, доступного в Интернете, мы можем использовать статью из Википедии в качестве ссылки. Как я это делаю?

Прежде всего, я выполнил преобразование NAT (виртуальный сервер) с общедоступного порта: 11235 на внутренний порт 11230, так что если я отправлю любой udp-пакет на PublicIP: PublicPort, он должен прийти на InternalIP: InternalPort. После этого я делаю следующее:
1. Я получил свой общедоступный IP-адрес из браузера по ответу www.whatismyip.org. Теперь я знаю свой общедоступный IP-адрес. скажем, его четыре октета IA.IB.IC.ID
2. Я создал приложение с привязкой сокета (UDP) к локальному порту 11230, которое отправляет некоторые UDP-пакеты на порт 11235.
3. Затем приложение запускается как сервер, прослушивающий UDP-порт 11230. На любой запрос, полученный от другого хоста, отвечает почти такое же тело сообщения.
4. Я запускаю другое приложение в той же системе, отправляя данные на свой общедоступный IP-адрес через порт 1135.

Пакеты, отправленные прослушивающему приложению UDP, не получают, если я отправляю пакеты в PublicIP: PublicPort. Однако, если я изменю общедоступный IP-адрес на внутренний IP-адрес локальной сети, пакеты будут получены.

Моя сетевая конфигурация выглядит следующим образом:

Почему мои приложения не могут подключаться при использовании общедоступного IP-адреса. Я также попытался отправить UDP-пакеты от клиента к серверу в цикле для всех номеров портов от 1000 до 65535, так что, если какой-либо порт сопоставлен для внутреннего порта ip, запрос будет приходить по крайней мере один раз от клиента к серверу. Но это тоже не сработало. Код для приложений можно найти здесь:
Клиент, отправляя пакеты на сервер
Сервер, прослушивание пакетов (запросов) от клиента
Любые подсказки, предложения ...

Многие системы NAT работают только с входящим трафиком из общедоступного Интернета. Они не работают при доступе к публичным IP-адресам изнутри сети. Вы должны вывести машину-отправитель за пределы NAT.