У меня настроен VPN, в котором используются несколько подсетей. У меня есть три сервиса VPN, скажем A - 192.168.1.0/24
, В - 192.168.2.0/24
и C - 192.168.3.0/24
. Я хотел бы получать определенный трафик от хоста в подсети C через хост в подсети A. Фактически
(CLIENT) 192.168.3.12 ----> VPN GATEWAY ---> (SERVER) 192.168.1.49 ---> INTERNET
Я настроил переадресацию портов на шлюзе VPN и на машинах СЕРВЕРА с
sysctl net.ipv4.conf.all.forwarding=1
Я настроил трафик между подсетями на шлюзе VPN, используя
iptables -A FORWARD -i tun1 -o tun3 -j ACCEPT
iptables -A FORWARD -i tun3 -o tun1 -j ACCEPT
Я настроил маршруты на машине SERVER
ip route add 192.168.3.0/24 dev tun0
и на машине КЛИЕНТА
ip route add 192.168.1.0/24 dev tun0
На этом этапе я могу подключиться от КЛИЕНТА к СЕРВЕРУ по SSH, поэтому я считаю эту часть решенной. Однако, как только я пытаюсь добавить маршрут, проходящий через машину SERVER, например
ip route add 1.1.1.1 via 192.168.1.49
Я больше не могу пинговать 1.1.1.1. Я вижу, что на шлюзе VPN пакеты в таблице FORWARD отбрасываются со скоростью, которая соответствует моим запросам ping, но не уверен, что я делаю неправильно.
Как я могу отладить эту проблему с подключением при попытке маршрутизировать трафик через хост за шлюзом VPN?