Udprelay реализует тривиальную симметричную ретрансляцию UDP. После запуска он «открывает» два UDP-порта и ждет клиентов. Когда клиенты подключены, инструмент отправляет данные, полученные от одного из них, другому и наоборот. Типичный вариант использования — разрешить UDP-клиентам, находящимся за разными NAT, общаться друг с другом.
Одно (и, возможно, единственное) приложение — помочь клиенту Mosh подключиться к серверу Mosh за NAT, оставаясь при этом за другим NAT. Подробности описаны в этом ответе StackOverflow.
Для сборки просто make install . Единственный режим работы:
$ udprelay bind-ip port-a port-b
bind-ip — это IP-адрес, к которому необходимо привязать оба порта (например, 0.0.0.0), port-a и port-b — это UDP-порты, от которых нужно ожидать сообщений.
port-a и port-b . Вместо этого он просто отправляет данные одной руки на последний замеченный адрес другой руки.Следующие инструменты могут оказаться полезными:
stracetcpdump -i IFACE udp portrange PORTA-PORTB -vv -X -n На основе программы udp_redirect C Ивана Тихонова.