Udprelay implémente un relais UDP symétrique trivial. Après le démarrage, il « ouvre » deux ports UDP et attend les clients. Lorsque les clients sont connectés, l'outil envoie les données reçues de l'un à l'autre et vice versa. Un cas d'utilisation typique consiste à permettre aux clients UDP derrière différents NAT de communiquer entre eux.
Une (et peut-être la seule) application consiste à aider le client Mosh à se connecter au serveur Mosh derrière NAT tout en restant derrière un autre NAT. Les détails sont décrits dans cette réponse StackOverflow.
Pour construire, make install
. Le seul mode de fonctionnement est :
$ udprelay bind-ip port-a port-b
où bind-ip
est une adresse IP à laquelle lier les deux ports (comme 0.0.0.0), port-a
et port-b
sont des ports UDP à partir desquels attendre les messages.
port-a
et port-b
. Au lieu de cela, il envoie simplement les données d'une main à la dernière adresse vue d'une autre main.Les outils suivants peuvent être utiles :
strace
tcpdump -i IFACE udp portrange PORTA-PORTB -vv -X -n
Basé sur le programme udp_redirect
C d'Ivan Tikhonov