Переадресация Wan IP на другой Wan IP без изменения адреса источника
Я пробовал этот случай с помощью функции NAT в iptables, но не удалось
пример. ПК IP-адрес 1.1.1.1 (Win7) IP-адрес моего сервера 2.2.2.2 (CentOS 6.2), целевой сервер B - 3.3.3.3 (Windows Server 2003)
Поток: ПК A WanIP -> Мой сервер A -> Сервер B (WanIP)
Мои правила iptables:
1. iptables -t nat -A PREROUTING -d 2.2.2.2 -p tcp --dport 80 -j DNAT --to-destination 3.3.3.3:80
2. iptables -t nat -A POSTROUTING -d 2.2.2.2 -j MASQUERADE
наконец, я могу получить доступ к веб-сайту сервера B, введя 2.2.2.2:80
но когда я проверил журнал доступа на сервере B, я обнаружил, что его исходный адрес был изменен на src: 2.2.2.2 dst: 3.3.3.3
пожалуйста, помогите мне узнать, как получить реальный адрес: src: 1.1.1.1 dst: 3.3.3.3
2 ответа
Небольшое предложение: может быть, вы можете использовать прокси вместо пересылки iptables? Вы можете добавить заголовок X-Forwarded-For, и ваши журналы доступа покажут правильный IP-адрес.
Удалить строку
iptables -t nat -A POSTROUTING -d 2.2.2.2 -j MASQUERADE
Это переписывает адрес источника, чтобы быть сервером А (2.2.2.2
). Вы можете обнаружить, что его удаление нарушает любое количество других вещей, но это та линия, которая в настоящее время делает то, что, как вы говорите, вы не хотите делать.
Изменить: как я уже сказал, "вы можете обнаружить, что удаление его нарушает любое количество других вещей". Особенно, если выясняется, что реальный адрес ПК A, реальный адрес сервера B или оба являются адресами RFC1918 (то есть частными адресами из диапазонов 10/8, 172.16/12 и 192.168/16), тогда вам придется Выясните, как исключить этот пробой из NAT, не нарушая NAT для всего остального, и рассортируйте маршрутизацию для трафика обратной половины, для которого вполне может потребоваться root на сервере B. Поскольку вы решили отредактировать все IP-адреса в своем вопросе и мы ничего не знаем ни о таблицах маршрутизации ни на ПК, ни на сервере B, ни о других ваших текущих правилах брандмауэра, трудно сказать, сколько из этого будет необходимо или проблематично.