Udprelay implementa un relé UDP simétrico trivial. Después del inicio, "abre" dos puertos UDP y espera a los clientes. Cuando los clientes están conectados, la herramienta envía los datos recibidos de uno de ellos a otro y viceversa. El caso de uso típico es permitir que los clientes UDP detrás de diferentes NAT se comuniquen entre sí.
Una (y quizás la única) aplicación es ayudar al cliente Mosh a conectarse al servidor Mosh detrás de NAT mientras permanece detrás de otra NAT. Los detalles se describen en esta respuesta de StackOverflow.
Para compilar, simplemente make install
. El único modo de operación es:
$ udprelay bind-ip port-a port-b
donde bind-ip
es una IP a la que vincular ambos puertos (como 0.0.0.0), port-a
y port-b
son puertos UDP desde los que esperar mensajes.
port-a
y port-b
. En cambio, simplemente envía los datos de una mano a la última dirección vista de la otra mano.Las siguientes herramientas pueden resultar útiles:
strace
tcpdump -i IFACE udp portrange PORTA-PORTB -vv -X -n
Basado en el programa udp_redirect
C de Ivan Tikhonov