C ++ iptables Umleitung bilden separate Pakete

Ich habe den gesamten Datenverkehr von Port 50 mit @ auf 5050 umgeleite

iptables -t nat -A POSTROUTING -p udp --dport 50 -j REDIRECT --to-port 5050

Ich höre mit einem RAW-Socket auf 5050 und sehe IP-Pakete von 0.0.0.0:50 bis 0.0.0.0:5050. Die ursprüngliche Zieladresse ist offensichtlich nicht vorhanden, da dies ein separates Umleitungspaket von Port 50 zu Port 5050 zu sein scheint.

Wenn das Originalpaket an a.b.c.d: 50 gesendet werden sollte, wie erhalte ich diese IP-Adresse? Wie kann ich die Zieladresse ermitteln, an die die Nachricht gesendet werden soll, damit ich sie dort weiterleiten kann?

Ich schätze Ihre Hilfe

P.S .: Ich möchte libipq nicht verwenden, da es aus irgendeinem Grund nicht funktioniert hat und ich nicht mehr Zeit damit verschwenden möchte, es zum Laufen zu bringen.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage