在 Windows 7 中建立 VPN 连接后我可以自动 ROUTE ADD xxxx 吗?

在 Windows 7 中建立 VPN 连接后我可以自动 ROUTE ADD xxxx 吗?

在我与工作/其他地方建立 VPN 连接后,我现在必须进入命令提示符并手动添加路由。

例如。

ROUTE ADD 10.1.0.0 255.255.0.0 172.16.3.0 METRIC 1或任何命令。

成功建立 VPN 连接后是否可以自动发生这种情况?

答案1

如果你想让它成为一个单步过程,你可以创建一个运行的批处理文件拉迪亚尔自动化您的 VPN 连接,然后执行 ROUTE ADD:

rasdial "connection name" username password ('*' to prompt for password)
ROUTE ADD 10.1.0.0 255.255.0.0 172.16.3.0 

假设您正在连接到 Microsoft VPN,但您可以按照相同的方式编写 OpenVPN 客户端脚本:

openvpn c:\path\to\config-file.ovpn
ROUTE ADD 10.1.0.0 255.255.0.0 172.16.3.0 

答案2

如果您有多个 VPN,您可能会遇到这样的问题:当它们以随机顺序连接时,它们的接口 ID 会发生变化。在这种情况下,正常ROUTE -P ADD 10.0.0.0 MASK 255.255.0.0 10.0.0.1 IF 42操作不起作用。下次 VPN 连接时,它可能具有不同的接口号。

Powershell 有一个可用的 cmdlet,可以在 VPN 连接上添加路由,并在 VPN 断开连接时再次删除它们:添加 VpnConnectionRoute. 无需指定接口 ID 即可工作。

基本语法如下:

Add-VpnConnectionRoute -ConnectionName "VPN Connection Name" -DestinationPrefix 10.0.0.0/16

输入该命令后,在VPN连接/断开连接时将自动创建/删除路由。

答案3

netsh interface ipv4 add route [destination/prefixlength] "[interface/connection name]"

我使用它来处理具有子网重叠的连接,通过为远程子网上的主机(服务器等)添加静态路由。

答案4

您可以使路由持久化(我认为可以使用route -p),这样您就不需要每次都输入它。如果您使用的是 openVPN,服务器可以向客户端发送路由:push "route 192.168.1.0 255.255.255.0"例如。我不知道其他 VPN 服务器是否也一样,但我猜他们可能也有类似的选项。

相关内容