In diesem Post möchte ich nicht erklären wie UDP Hole Punching funktioniert, sondern mir nur schnell die Befehle notieren.
Client starten. -u = UDP; -l = listen;
local/1# nc -u -l -p 14141
Ein Paket an den remote Rechner senden. -c = count; -2 UDP Mode; -s source port, -p = dest port
local/2# hping2 -c 1 -2 -s 14141 -p 5353 remote
Oder ohne root
nc -p 14141 -u remote 5353
Nun kennt NAT eine gültige IP+Port und leitet eingehende Pakete weiter
remote# echo "hello" | nc -p 5353 -u local-fw 14141
Das ganze ist mehr oder weniger geklaut [1] . Weitere Informationen gibts unter dem Suchwort STUN und [2]
[1] http://www.heise.de/security/Wie-Skype-Co-Firewalls-umgehen--/artikel/82054/1
[2] http://www.ietf.org/rfc/rfc3489.txt