Iptables перенаправляет весь трафик на другой интерфейс, за исключением локального межсетевого

Iptables перенаправляет весь трафик на другой интерфейс, за исключением локального межсетевого

У меня есть две локальные сети

Локальная сеть: 172.30.30.0/24 с gw 172.30.30.254

Удаленная локальная сеть: 192.168.2.0/24 с gw 192.168.2.1

обе локальные сети могут взаимодействовать и пинговать друг друга устройства.

Я ввел новую машину 172.30.30.10 и установил шлюз для всех устройств 172.30.30.0/24 на этот IP.

Мне нужно перенаправить весь трафик на интерфейс eth0 >>> tun0 172.30.30.10, за исключением локального межсетевого взаимодействия.

Итак, что я сделал до сих пор, это

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
ip route add -net 192.168.2.0/24 gw 172.30.30.254 dev eth0 metric 101

Итак, после этого я могу пинговать из сети 172.30.30.0/24 в 192.168.2.0/24 и наоборот.

но когда интерфейс tun0 создается после подключения к vpn, происходит только односторонний пинг 172.30.30.0/24 на 192.168.2.0/24, а НЕ наоборот.

Что еще можно сделать, чтобы можно было пинговать сети друг друга даже после подключения к VPN (интерфейс tun0)?

Связанный контент