Будте добры посоветуйте как решить проблему..есть такая связка компов.
хост1(service) <-прямой eth провод-> хост2(iptables) <-internet-> хост3(client)
хост1:
if1(int): 11.11.11.10
if2(inet): 22.22.22.20
default router: 22.22.22.21
хост2:
if1(int): 11.11.11.11
if2(inet): 33.33.33.30
default router: 33.33.33.31
хост3:
if1(inet): 44.44.44.40 (dynamic_ip)
default router: 44.44.44.41
теперь попробую об'яснить в чем подкавырка.
надо попасть на сервис находящийся на хост3 на определенном порту (1234) С хост1 через обращение на порт (1234) на хост2.
т.е. в iptables на хост2 добавляется
-t nat -A PREROUTING -d 33.33.33.30 --dport 1234 -j DNAT --to-destination 11.11.11.10:1234
и все бы было хорошо но маршрут по умолчанию на хост1 указан 22.22.22.21 и соответственно получается что хост3 посылет пакет на один адрес(хост2) а получает ответ с другого адреса (хост3), конечно если я правильно представляю как работает iptables.