Здравствуйте, Shmj, Вы писали:
S>Кто может подробнее рассказать как это можно осуществить, как работает внутри?
Плохо работает.
Как предполагает автор:
Программа отправляет UDP пакет другому клиенту и указывает source port и destination port одно и то же значение, равное 2222.
NAT запоминает исходящий порт, чтобы принимать ответ.
Та же программа на другой машине отправляет первому клиенту пакет и указывает source port и destination port также равный 2222.
NAT первого клиента думает, что это пришел ответ и прокидывает пакеты куда надо.
Но на практике на любом роутере NAT переписывает порты, чтобы две программы, использующие один source порт на разных компьютерах могли работать.