我想要连接的目标 VPN 服务器只允许来自一个 IP 地址的连接。
当我在办公室时(网络公共 IP 在 VPN 服务器上是受信任的),一切都正常,但我发现当我在家里我可以执行以下操作:
连接到办公室 VPN(使用内置的 Windows VPN 客户端)
当我这样做时,我有2个活动的网络接口:
- 家庭网络
- 办公室网络(VPN)
连接到目标 VPN(使用自定义 VPN 客户端)
如果 VPN 服务器看到我的办公室 IP,它就会让我进入。
不幸的是,我被拒绝了。奇怪的是,我成功了。这边走:
我在办公室连接到 VPN
我启动一个桥接虚拟机
我在虚拟机中连接到目标 VPN
并且它有效。
可能所有虚拟机流量都通过办公室 VPN 连接路由。
我的问题是,如何在没有虚拟机的情况下使其工作?
系统:Windows XP VPN 客户端:Check Point VPN-1 连接设置:IKE over TCP、强制 UDP 封装
答案1
由于您使用的是 Windows XP,因此我们将使用 Windows 命令。
在工作站的命令提示符中输入route print
- 您应该得到如下内容:
IPv4 Route Table
===========================================================================
Interface List
0x1 ........................... MS TCP Loopback interface
0x10003 ...08 00 27 c3 52 ca ...... AMD PCNET Family PCI Ethernet Adapter
===========================================================================
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.89 20
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.0 255.255.255.0 192.168.1.89 192.168.1.89 20
192.168.1.89 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.1.255 255.255.255.255 192.168.1.89 192.168.1.89 20
224.0.0.0 240.0.0.0 192.168.1.89 192.168.1.89 20
255.255.255.255 255.255.255.255 192.168.1.89 192.168.1.89 1
Default Gateway: 192.168.1.1
===========================================================================
Persistent Routes:
None
您可以在这里获取有关路由命令的更多文档:
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/route.mspx?mfr=true
您可以做的是设置与 VPN 服务的连接路由。假设您在 192.168.1.0 网络上,并且您的办公室网络上的网关为 10.10.10.5,该网关配置为访问 72.21.211.1/24 网络上的 VPN 服务。您可以像这样使用“route add”:
route ADD 72.21.211.1 MASK 255.255.255.0 10.10.10.5
您的路由表现在应该反映该变化,并且所有到 72.21.211.0 范围的流量现在都将被发送到办公室网关。
仅当您使用 -p 标志添加路由添加更改时,该更改才会在重新启动后持续存在:
route -p ADD 72.21.211.1 MASK 255.255.255.0 10.10.10.5
答案2
这很大程度上取决于服务器和系统等上的脚本。但系统的基础将是这样的:
192.168.1.0/24 dev eth0 proto kernel scope link
parent.vpn.server via 192.168.1.1 dev eth0
10.0.0.0/24 dev ppp0 proto kernel scope link
child.vpn.server via 10.0.0.1
10.0.1.0/24 dev ppp1 proto kernel scope link
在哪里:
eth0
是本地接口,地址来自网络 192.168.1.0(网关 192.168.1.1)ppp0
是到父(主)服务器的点对点接口,地址来自10.0.0.0/24
网络(10.0.0.1 网关)ppp1
是到子(工作)服务器的点对点接口,地址来自10.0.1.0/24
网络(10.0.1.1 网关)
请注意:
- 网络不能重叠
- 路由表可能需要“手动”设置(通过脚本等)。我给出了示例路由表的 iproute2 格式。
- 接口名称可能有所不同。