別のローカルホストポートへのポートミラーリング

別のローカルホストポートへのポートミラーリング

ポート Y (UDP) でアプリケーション a を実行しています。アプリケーション A に影響を与えずにミラーを作成し、アプリケーション a でメッセージを受信し、さらに別のポート Y 上のアプリケーション B (同じホスト) でもメッセージを受信することは可能ですか?

私は試してみました

socat udp-listen:x,reuseaddr,fork udp:localhost:y

残念ながら、socatポート X でリスナーを起動しましたが、アプリケーション a はメッセージを受信しません。

また、Mangle を使用した解決策もいくつか読みましたが、私のバージョンiptablesではサポートされていないようです。iptables

2 つの異なるプラットフォームで実行する必要があります。

  • Ubuntu 20.04 と iptables v1.8.4 (レガシー)
  • SLES12SP5(v1.4.21)

インターフェイスのサブネットで 2 番目の IP アドレスを使用できませんeth0

答え1

ああ、これならできるIPtablesで...

そのサイトから:

iptables -t mangle -A PREROUTING -p UDP --dport 162 -j TEE --gateway 127.0.0.2
iptables -t nat -A PREROUTING -d 127.0.0.2 -p UDP --dport 162 -j DNAT  --to 127.0.0.1:1162

詳細はリンク先のサイトをご覧ください。

関連情報