Приветствую. Прошу помочь разобраться с правильным использованием цепочек prerouting и postrouting. Задача: пакеты, приходящие на конкретный порт eth1, нужно перенаправить в ppp0 на конкретный порт. И соответственно нужно все организовать и в обратную сторону. Делаю так:
iptables -t nat -I PREROUTING -d "ip_eth1" -p tcp -m tcp --dport "port_eth1" -j DNAT --to-destination "ip_ppp0":"port_ppp0"
iptables -t nat -I POSTROUTING -o ppp0 -j MASQUERADE
Все работает. Но у меня много pptp подключений (ppp0....pppN) и как я монял из источников в сети использование MASQUERADE не самый лучший вариант. Больше нагрузки, чем при использовании SNAT. Но вот с SNAT у меня как раз проблема. Не идут пакеты. Делал так:
iptables -t nat -I POSTROUTING -s ''ip_ppp0" -j SNAT --to-source "ip_eth1"