在使用VPN后无法访问虚拟机原有内网的解决方案

一 问题

当使用VPN后,有的时候会无法访问虚拟机原有内网的解决方案

vmware 虚拟机网段为: 192.168.70.x /24

VPN连接后,则无法访问192.68.70.x网段

二 原因分析

通过使用Tracert命令后,发现访问192.168.70.134会直接送到VPN网卡,而无法使用直连路由至虚拟机。
在使用VPN后无法访问虚拟机原有内网的解决方案_第1张图片
分析路由发现,至192.168.70.x有两类路由,一条是直连路由,一条是指向172.22.4.204

router print 

在使用VPN后无法访问虚拟机原有内网的解决方案_第2张图片

路由选路三条原则

1、最长掩码匹配原则:掩码越长越优先

VPN的路由掩码长于本地链路的24位掩码,因此优先路由走到了VPN路由中。因此,只需要细化本地链路路由即可解决此问题

2、路由优先级越小越优

在使用VPN后无法访问虚拟机原有内网的解决方案_第3张图片

3、度量值越小约优先:

cost=参考带宽/实际带宽(注:参考带宽10^8,回环口为0)

100M带宽=100Mpbs=100 000 Kpbs = 100 000 000 bps=10^8bps

即:

100M带宽:

cost=10^8 / 10^8=1

10M带宽:

cost=10^8 /10^7=10
在使用VPN后无法访问虚拟机原有内网的解决方案_第4张图片

三 解决方法

使用语法及参数说明

1、使用语法

用法:ROUTE [-f] [-p] [-4|-6] command [destination] [MASK netmask] [gateway] [METRIC metric] [IF interface]

2、参数说明

参数 参数说明
-f 清除所有网关项的路由表。如果与某个命令结合使用,在运行该命令前,应清除路由表。
-p 与 ADD 命令结合使用时,将路由设置为在系统引导期间保持不变。默认情况下,重新启动系统时,不保存路由。忽略所有其他命令,这始终会影响相应的永久路由。Windows 95不支持此选项。
-4 强制使用 IPv4。
-6 强制使用 IPv6。
command 其中之一:
PRINT 打印路由
ADD 添加路由
DELETE 删除路由
CHANGE 修改现有路由
destination 指定主机。
MASK 指定下一个参数为“网络掩码”值。
netmask 指定此路由项的子网掩码值。如果未指定,其默认设置为 255.255.255.255。
gateway 指定网关。
interface 指定路由的接口号码。
METRIC 指定跃点数,例如目标的成本。

案例

将192.168.70.134写一条永久的直连路由即可解决此问题

C:\Windows\System32>route -p  add 192.168.70.134/32 192.168.70.1 if 5

C:\Windows\System32>route print
===========================================================================
接口列表
  5...xx xx xx xx xx xx ......VMware Virtual Ethernet Adapter for VMnet8

===========================================================================
IPv4 路由表
===========================================================================
活动路由:
网络目标        网络掩码          网关       接口   跃点数
192.168.70.134  255.255.255.255            在链路上      192.168.70.1     36

在使用VPN后无法访问虚拟机原有内网的解决方案_第5张图片

你可能感兴趣的:(网络安全,网络)