Перш за все - слід перевірити, чи дозволено переадресація взагалі:
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
є серед повернених записів маршрутизації.