iptables ポートミラーリング

iptables ポートミラーリング

ポート8001で受信したパケットのコピーをポート8002にインポートできる必要があります。次の試みたが--tee未定義のエラーが発生します。

sudo iptables -t nat -A PREROUTING -p TCP -s 127.0.0.1 --sport 8001 -j DNAT --to-destination 127.0.0.1:8002 --tee

ベストアンサー1

さらに進むガレブiptables答え、もはや対象外の最新バージョン(v1.4.14)を使用している場合は、ROUTEDebian Wheezy*でテストしてください。

iptables -A PREROUTING -t mangle -p tcp ! -s 127.0.0.1 --dport 8001 -j TEE --gateway 127.0.0.1
iptables -A OUTPUT -t nat -p tcp -s 127.0.0.1/32 --dport 8001 -j DNAT --to 127.0.0.1:8002

「netcat」()を使ってman ncテストします。ターミナルウィンドウに次のように入力し、キーを押しますEnter

nc -l 8002

このコマンドは、2番目の端末ウィンドウに入力した入力を待ちます。

2番目の端末ウィンドウに次のように入力し、[次へ]をEnterクリックします。

nc 127.0.0.1 8001

コマンドは追加の入力を待ちます。何かを入力してEnterキーを押します。 2番目の端末ウィンドウでキーを押した後、2番目の端末ウィンドウEnterに入力したテキストが最初の端末ウィンドウに表示されます。Ctrlセッションを終了するには、2番目のウィンドウで-cを押します。


*この構文はいいえRHEL / Centos(6.5以下)でサポートされています:-(したがって、socatteeを使用して元のポートから着信パケットを2つの新しいポートに転送する必要があります。元の着信ポートでリッスンするプロセスがある場合は、リッスンするように再構成する必要があります。socat現在、元のポートのリスナーと同様に、転送されたポートの1つです。このSEポストたとえば、socatポート複製構文があります。

おすすめ記事