Udprelay implementa um relé UDP simétrico trivial. Após iniciar, ele “abre” duas portas UDP e aguarda clientes. Quando os clientes estão conectados, a ferramenta envia os dados recebidos de um deles para outro e vice-versa. O caso de uso típico é permitir que clientes UDP atrás de diferentes NATs se comuniquem entre si.
Uma (e talvez a única) aplicação é ajudar o cliente Mosh a se conectar ao servidor Mosh atrás do NAT enquanto permanece atrás de outro NAT. Os detalhes estão descritos nesta resposta do StackOverflow.
Para construir, basta make install
. O único modo de operação é:
$ udprelay bind-ip port-a port-b
onde bind-ip
é um IP para vincular ambas as portas (como 0.0.0.0), port-a
e port-b
são portas UDP para aguardar mensagens.
port-a
e port-b
Em vez disso, ele apenas envia os dados de uma mão para o último endereço visto da outra mão.As seguintes ferramentas podem ser úteis:
strace
tcpdump -i IFACE udp portrange PORTA-PORTB -vv -X -n
Baseado no programa udp_redirect
C de Ivan Tikhonov