我设置了一个使用多个子网的 VPN。我有三个 VPN 服务,假设为 A - 192.168.1.0/24
、B -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
我已经在服务器机器上设置了路由
ip route add 192.168.3.0/24 dev tun0
在客户端机器上
ip route add 192.168.1.0/24 dev tun0
此时,我可以使用 SSH 从客户端连接到服务器,所以我认为这部分已经解决了。但是,当我尝试添加一条经过服务器机器的路由时,例如
ip route add 1.1.1.1 via 192.168.1.49
我无法再 ping 1.1.1.1 。我可以看到在 VPN 网关上,FORWARD 表中的数据包以与我的 ping 请求相对应的速率被丢弃,但不确定我做错了什么。
当尝试通过 VPN 网关后面的主机路由流量时,如何调试此连接问题?