Назад | Перейти на главную страницу

Правило пересылки iptables не работает в openwrt

Я пытаюсь применить некоторые правила пересылки iptables в openwrt.

Вот мой сценарий -

На моем сервере две карты ath0 и br-lan. br-lan подключен к Интернету, а ath0 - к частной сети.

Другой компьютер в сети также имеет ath0, который соединяется с ath0 этого сервера, и они могут пинговать друг друга.

Теперь я хочу, чтобы другой компьютер в сети использовал Интернет с использованием br-lan сервера, поэтому я подумал об использовании правила пересылки iptables -

Вот что я пробовал -

Сервер:

$ ping 1.1.1.6 // <ath0-ip of client> works fine
$ iptables -A FORWARD -i ath0 -o br-lan -j ACCEPT
$ /etc/init.d/firewall restart

Клиент:

$ ping 1.1.1.5 // <ath0-ip of server>  works fine
$ ping 132.245.244.60 // <br-lan ip of server> (not working)

Я новичок в iptables и openwrt. Что я здесь делаю не так ??

Любая другая помощь, если кто-нибудь может предложить мой сценарий

Предположительно, у вас 1 из 2 проблем, а возможно и то и другое.

  1. У машины 2 нет маршрута по умолчанию (или любого маршрута) через машину 1. Вы не упомянули используемые операционные системы или подсети, поэтому я не могу дать вам больше информации о том, как решить эту проблему.

  2. На самом деле ты не включен IP Forwarding на машине 1:

    • sysctl -w net.ipv4.ip_forward=1

      или

    • echo 1 > /proc/sys/net/ipv4/ip_forward