Как сделать 2 ip виртуальных в общедоступных dan private с пересылкой в другое место назначения
Вот мой случай,
Сервер 1 публичный IP в 1 ящике (eth0) -> 203.xx55/28 и 57/28 gw 203.xx49 частный IP (eth1) -> 10.10.8.1
Частный IP-адрес сервера 2 в 1 коробке (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
тогда моя проблема заключается в том, что из ip private с целевым портом 9100 будет использоваться ip public 55, а через порт 9200 будет использоваться ip public 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