LINUX.ORG.RU
ФорумAdmin

«прозрачное» перенаправление трафика


1

1

Здравствуйте уважаемые. Есть задача - перенаправить входящий трафик с сервера А на сервер В, оба сервера с белыми ip адресами. Вроде всё просто и делается за пару минут с помощью iptables и masquerade. Но нужно, чтобы на сервере В в поступающих/перенаправленых запросах светились ip клиентов генерирующих эти запросы, а не ip сервера-транслятора. ОС Debian, руки из жопы, ман курил-не помогло.

Все, что тебе нужно, сделать DNAT. Например, если на машине B стоит web-server, то на машине A добавляешь такое правило
iptables -t nat -A PREROUTING -d $A_IPaddress -p tcp --dport 80 -j DNAT --to-destination $B_IPaddress:80

getup ()
Ответ на: комментарий от getup

не совсем точно описал проблему. сервер В всё таки должен отдавать клиенту информацию, а без iptables -t nat POSTROUTING -j MASQUERADE ответы сервера улетают на сервер А.

evincar ()
Ответ на: комментарий от evincar

При DNAT правило для SNAT создается автоматически.
Если есть такая схема
клиент-A-B
То при вышеуказанном правиле B будет видеть в качестве source ip именно ip клиента.
Возможно, стоит проверить все правила в iptables, вдруг они мешают.
Да и tcpdump на сервере B можно запустить, глянуть, куда какие пакеты идут. А еще лучше показвать все правила на серверах A и B.
А masquerade - это «умный» SNAT.

getup ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.