複数の仮想インターフェイスのiptablesルーティング

複数の仮想インターフェイスのiptablesルーティング

外部には、Azure vm1のパブリックインターフェイスである1.1.1.1があります。 VM1の内部IPは192.168.1.1です。同じインターフェイスに接続され、内部的にそれぞれ 192.168.1.2 にマップされる 1.1.1.2 (仮想) と同様のバージョンがいくつかあります。これはルータ用であり、要求されたパブリックIPに応じてポート3389(およびその他)を外部IPに転送する必要があります。たとえば、1.1.1.1:3389が要求された場合、iptablesはそれをポート5000から2.2.2.2に渡す必要がありますが、1.1.1.2:3389が要求された場合、ipテーブルはそれをポート5000から2.2.2.3に渡す必要があります。 。これまで私は以下を設定しました。

iptables -I INPUT -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -i eth0 -d 1.1.1.1 --dport 3389 -j DNAT --to-destination 2.2.2.2:5000
sudo iptables -t nat -A PREROUTING -p tcp -d 1.1.1.2 --dport 3389 -j DNAT --to-destination 2.2.2.3:5000
iptables -t nat -A POSTROUTING -j MASQUERADE
iptables -I FORWARD -j ACCEPT
iptables -P FORWARD ACCEPT
sysctl net.ipv4.ip_forward=1`

しかし、うまくいきません。アドバイスしてください。

関連情報