连接VPN后无法上网 Windows Route 轻松解决
引言
很多时候,我们公司的 VPN 为了不占用公司的外网带宽和安全起见,都会禁止访问外网。我们的电脑连接 VPN 后,所有的网络数据包都会走 VPN,从而导致我们无法访问互联网。而我们大多数情况下工作时需要连接互联网去查询资料。这时候我们可以使用 Windows Route
将我们的 VPN 网络和外网隔开,以实现同时可以访问内网和互联网。
Windows Route
还可以解决两个网关不在一个IP段内的网络互通。
文档
在 cmd
或者 powershell
中输入
route --help
添加路由
- 连接好
VPN
,假如我们不加任何路由的话,所有的网络请求数据包都是走的VPN
,所以互联网是打不开的。 - 在
cmd
中输入route print
查看路由。
route print // 查看所有路由
route print -4 // 查看IPV4路由
-
下图中
红框1
代表的是本地路由,红框2
代表的是 VPN 路由。我们可以看到我本地的网关是 192.168.50.1,VPN 网关是 192.168.253.1。而我们内网的服务器 IP 段为 192.168.1.2-192.168.1.255。那么我们只需要添加一条让 192.168.1.2-192.168.1.255 段的数据请求走 VPN 网关的路由就可以解决问题。
注:在路由表中,前一列为网络的目标地址,即可以访问的网络段,如:0.0.0.0 为所有网段
-
最好不要将自己本地的网关和服务器的网关设为一样,会出现冲突现象。这也是为啥我的网关是 192.168.50.1 而不是 192.168.1.1 的原因。因为公司服务器的网关是 192.168.1.1。
-
输入命令
route add -p 192.168.1.0 mask 255.255.255.0 192.168.253.1
其中-p
代表永久添加。然后再输入route print
查看路由,出现永久路由代表添加成功。添加成功后就可以访问外网和VPN
网络了。
route add -p 192.168.1.0 mask 255.255.255.0 192.168.253.1
- 如果不能访问互联网注意查看一下跃点数,跃点数越小代表他的优先级越高。可以看到我的 VPN 路由的跃点数比本地路由的跃点数小。所以会优先匹配 VPN 路由。