iptables冗長ポートトラフィック

iptables冗長ポートトラフィック

ポート8500からのすべての着信UDPトラフィックをポート8600に複製/コピーしたいと思います。ソースアドレスが変更されないことが重要です。また、両方のポートがアプリケーションからアクセスできる必要があります(パケットは依然として元のポートに到着する必要があります)。

このソリューション(nftables:特定の宛先IP:ポートから(2番目)宛先IP:ポートにUDPパケットを複製します。)は最新のシステムでも動作しますが、残念ながら問題のシステムはRHEL 7でカーネル3.10を実行しており、更新できません。

答え1

あなたのiptablesは十分に新しいようで、テーブルがあるので、次のようになりますmangle(注:まだテストしていません!仮想マシンや同様の環境で試してみてください。間違いをすることは、TEEすべてのCPUコアを占める良い方法です。ループパケットパス)

# copy ("TEE") to dummy local IP address 127.0.0.127
iptables -t mangle -A PREROUTING -i {public interface, not lo} -p UDP --dport 8500 -j TEE --gateway 127.0.0.127
# re-redirect things for 127.0.0.127 to 127.0.0.1
iptables -t nat -A PREROUTING -d 127.0.0.127 -p UDP --dport 8500 -j DNAT --to 127.0.0.1:8600

関連情報