
私の場合、
1 つのボックス内のサーバー 1 パブリック IP (eth0) -> 203.xx55/28 および 57/28 gw 203.xx49 プライベート IP (eth1) -> 10.10.8.1
1 つのボックス内のサーバー 2 プライベート IP (eth0) -> 10.10.8.5/24 および 7/24 gw 10.10.8.1
iptables の
-A PREROUTING -d 203.x.x.55 -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.10.8.5:80
-A PREROUTING -d 202.10.39.57 -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.10.8.7:80
-A POSTROUTING -s 10.10.8.5 -j SNAT --to-source 203.x.x.55
-A POSTROUTING -s 10.10.8.7 -j SNAT --to-source 203.x.x.57
問題は、宛先ポート 9100 の IP プライベートから IP パブリック 55 が使用され、ポート 9200 から IP パブリック 57 が使用されるかどうかです。
-A POSTROUTING -s 10.10.8.5/24 -d 10.10.8.1 -p tcp -m tcp --dport 9100 -j SNAT --to-source 202.x.x.55
-A POSTROUTING -s 10.10.8.0/24 -d 10.10.8.1 -p tcp -m tcp --dport 9200 -j SNAT --to-source 202.x.x.57
結果は成功しませんでした。すべて IP 57 で検出されました。
これの何が問題なのですか?ご清聴ありがとうございます。
答え1
問題が解決しました。
宛先をoutside_targetに追加します:
-A POSTROUTING -s 10.10.8.0/255.255.255.0 -d (outside_target) -p tcp -m tcp --dport 9100 -j SNAT --to-source 202.x.x.55
-A POSTROUTING -s 10.10.8.0/255.255.255.0 -d (outside_target) -p tcp -m tcp --dport 9100 -j SNAT --to-source 202.x.x.57