次のコマンドを使用して、着信トラフィックをポート30からポート1234に転送しています。しかし、機能していません。 Wiresharkでも、ポート1234に向かうパケットの痕跡は見つかりません。
Sudo iptables -t nat -I PREROUTING --src 0/0 --dst 127.0.0.1 -p tcp --dport 30 -j REDIRECT --to-ports1234。
異なるポートのパケットのローカル転送は、PREROUTINGチェーンを通過しません。それらはOUTPUTチェーンに従います。チェーンをPREROUTINGからOUTPUTに変更すると機能します。
Sudo iptables -t nat -A OUTPUT -p tcp --dport 30 -j REDIRECT --to-port 1234
Iptables NATフィルターについての詳細はここにあります:
https://www.karlrupp.net/en/computer/nat_tutorial
これが有効になっているかどうかを確認する
Sudo iptables -t nat -L
エントリがある場合は、次を使用して削除します。
Sudo iptables -F -t nat
Srcdestフラグなしで試してください。
Sudo iptables -t nat -A PREROUTING -p tcp --dport 30 -j REDIRECT --to-ports 1234
これが有効になっているかどうかをもう一度確認してください
Sudo iptables -t nat -L
デフォルトで「OUTPUT」ルートにキューに入れられたチェーンエントリを削除することが重要です。