Прежде всего - вы должны проверить, разрешена ли переадресация вообще:
cat /proc/sys/net/ipv4/conf/ppp0/forwarding
cat /proc/sys/net/ipv4/conf/eth0/forwarding
Если оба возвращаются, 1
все в порядке. Если нет, сделайте следующее:
echo '1' | sudo tee /proc/sys/net/ipv4/conf/ppp0/forwarding
echo '1' | sudo tee /proc/sys/net/ipv4/conf/eth0/forwarding
Второе - DNAT
можно наносить nat
только на стол. Итак, ваше правило должно быть расширено путем добавления спецификации таблицы ( -t nat
):
iptables -t nat -A PREROUTING -p tcp -i ppp0 --dport 8001 -j DNAT --to-destination 192.168.1.200:8080
iptables -A FORWARD -p tcp -d 192.168.1.200 --dport 8080 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
Оба правила применяются только к TCP-трафику (если вы также хотите изменить UDP, вам нужно предоставить аналогичные правила, но с -p udp
набором опций).
И последнее, но не менее важное - это настройка маршрутизации. Тип:
ip route
и проверьте, есть ли 192.168.1.0/24
среди возвращенных записей маршрутизации.