默认状态下在Windows中创建好VPN连接后,该VPN连接就会作为系统默认网关代理本地全部流量,那么是否可以让指定的IP或IP段走VPN连接?
当然可以,不然写这篇文章干啥…
这里以L2TP连接为例。
首先需要先移除默认路由,打开”网络与Internet属性“ - 高级网络设置(更改适配器选项)- 右键VPN所在的适配器 - 属性 - 网络选项卡 - TCP/IPv4 - 高级 - 移除 “在远程网络上使用默认网关”。
添加路由:
- 首先先创建PPTP连接并确保本地计算机可以正确连接到VPN服务器。
- 以管理员模式打开PowerShell,输入
arp -a
,按照路由查找PPTP连接所在网卡的网卡编号。例如我这里L2TP所在虚拟网卡编号为1
2
3
4接口: 10.1.0.2 --- 0x63
Internet 地址 物理地址 类型
0.0.0.0 静态
··· ···0x63
,网关为10.1.0.1
。 - 添加对应的路由到L2TP的网卡上:如果需要将其作为静态路由则再加
1
route add 10.0.0.0/16 10.1.0.1 metric 1 if 0x63
-p
开关,使添加的路由在重启计算机后仍不失效。
如上示例即为将10.0.0.0 - 10.0.255.255
(/16
)的全部流量路由到10.1.0.1
网关上,可根据实际情况更改。
修改后最好重新拨(连接)一下对应VPN连接。
查看当前路由
1 | PS C:\Windows\system32> route print -4 |
移除静态路由
移除静态路由时需要先从上面的命令获得网络目的地址,然后delete即可:
1 | route delete 10.0.0.0 |
此时再重新打印路由表就会发现该条已被删除。