ブリッジの特定のトラフィックを別のポートにリダイレクトする

ブリッジの特定のトラフィックを別のポートにリダイレクトする

2つの物理ネットワークインターフェイスを持つデバイスがあります。これをと呼びますAA2番目のデバイスBとネットワークに接続します。

B - A - network

Aこれで、ポート502のすべてのトラフィックとローカルトラフィックをポート5020にリダイレクトしたいと思いますA。ただし、ポート502からポート5020にすべてのトラフィックをリダイレクトすることはできませんA。だからB:502それで終わりますが、私はちょうどにリダイレクトしたいとA:5020思います。A:502A:5020

これが私が足を作る方法です:

brctl addbr br0 
brctl stp br0 on

brctl addif br0 eth0 
brctl addif br0 eth1

ifconfig eth0 0.0.0.0 
ifconfig eth1 0.0.0.0

私は次のiptablesルールを使用しました。

iptables -A PREROUTING -p tcp -m tcp --dport 502 -j REDIRECT --to-ports 5020

そして

iptables -A OUTPUT -p tcp -m tcp --dport 502 -j REDIRECT --to-ports 5020

答え1

iptablesルールの特定のインターフェイスを一致させるには、ルールが追加される-iテーブルを指定する必要があります(例nat:table:)。

iptables -t nat -A PREROUTING -i <eth> -p tcp -m tcp --dport 502 -j REDIRECT --to-ports 5020
iptables -t nat -A OUTPUT -i <eth> -p tcp -m tcp --dport 502 -j REDIRECT --to-ports 5020

関連情報