- 由于Cisco AnyConnect的默认配置也就是Tunnel_All配置会接管所有网络流量导致服务器无法从外部访问,而我们可以通过Linux的路由表设置来实现Inbound流量不被代理而Outbound全部代理的特点。
- *远程配置网络为强烈不推荐的行为,请慎重尝试
- 还未完成
为了配置Linux路由表以使默认网关的入口优先级高于VPN,同时确保所有出口流量通过VPN代理,我们可以通过创建两个路由表并利用策略路由(policy routing)来实现。首先需要确定接口名称(通常是以eth0
、wlan0
等形式出现)和VPN接口的名称(可能是tun0
、ppp0
等)。
#查看当前的默认路由和VPN路由
ip route show
编辑/etc/iproute2/rt_tables
文件,添加两个自定义路由表(确保没有优先级更高或者数字更小的路由表):
100 default_gw
200 vpn
使用以下代码将会把出口流量通过out路由表处理
sudo ip route add 你的IP dev eth0 table default_gw
sudo ip route add default via 公网网关IP table default_gw
sudo ip rule add from 你的公网IP table default_gw
Comments NOTHING