很多使用IPsec、SSL VPN的企业运维人员和远程办公用户,都遇到过VPN连接成功后部分网络访问异常的问题,闪电这类故障九成以上都和VPN默认路由的优先级、下发规则冲突有关。本文结合日常运维中常见的真实设备场景,梳理可落地的故障定位方法和VPN默认路由故障恢复思路,不需要依赖特殊工具就能完成全流程排查,避免用户盲目修改本地网络配置引发更多连锁问题。

运维人员现场排查VPN路由异常,快速定位默认路由冲突根源
先区分两类不同的默认路由故障表现
很多用户刚遇到故障就直接修改本地路由表,反而把原本清晰的路由规则改得更混乱,闪电正确的第一步是先区分故障属于哪一类。第一类是VPN连接后,原本可以访问的本地局域网资源,比如办公室的共享打印机、内网文件服务器完全无法连通,所有本地访问请求都被转发到了VPN远端网关。
第二类故障的表现刚好相反,用户连接VPN之后,原本应该走隧道转发的企业内网业务系统完全打不开,所有流量都还是走本地的家用宽带网关转发,VPN隧道相当于只建立了空连接,没有实际的业务转发效果。两类故障的根因完全不同,对应的VPN默认路由故障恢复思路也完全不一样,先做好分类能直接砍掉一半的无效排查步骤。
本地端路由表的快速定位检查步骤
完成故障分类之后,不需要先登录VPN网关后台,先在本地终端执行路由表查询操作就能拿到核心信息。Windows系统可以打开命令提示符执行route print命令,macOS和Linux系统可以在终端执行netstat -rn命令,直接查看当前系统的所有默认路由条目。
正常的VPN全隧模式下,系统会生成优先级更高的新默认路由,指向VPN虚拟网卡的网关地址,分流模式下则不会修改原有默认路由,只会生成对应企业内网网段的明细路由。如果查询之后发现,VPN连接后没有新增任何指向虚拟网卡的路由条目,首先要检查本地终端的安全软件,很多终端防火墙会拦截VPN客户端的路由写入权限,直接屏蔽VPN网关下发的路由规则。
VPN网关侧的路由下发规则校验方法
如果本地终端没有安全软件拦截路由写入,接下来就要登录VPN网关的管理后台,检查默认路由的下发配置是否符合预期。很多运维人员调整VPN策略的时候,误把全隧模式改成了分流模式,却没有补全所有需要访问的内网网段明细路由,就会导致部分内网业务的流量走本地网关转发,无法触达企业内网资源。
还有一类非常常见的配置错误,闪电是VPN网关本身的默认路由指向了VPN隧道接口,形成了路由环路,这种情况下终端下发的VPN默认路由也会跟着出现转发异常,哪怕终端侧路由表完全正常,流量进到VPN网关之后也无法正确转发到企业内网。校验的时候可以在VPN网关的诊断页面,直接测试从内网接口访问终端虚拟地址的连通性,就能快速确认是否存在环路问题。
通用的VPN默认路由故障恢复思路
针对本地安全软件拦截路由写入的场景,不需要重装VPN客户端,只需要先退出VPN连接,在终端防火墙的信任列表里把VPN客户端加入白名单,之后重新连接VPN,再重新查看路由表就能看到正常生成的VPN路由条目。如果是用户需要同时访问本地内网和VPN远端资源,不要直接删除VPN下发的默认路由,改成添加本地内网网段的明细路由指向原有本地网关即可,避免出现路由冲突。
针对VPN网关侧的配置错误,先把分流模式下缺失的内网网段明细路由补全,不需要强制下发全量默认路由,就能在保证用户可以访问本地局域网资源的同时,正常访问企业内网业务。如果确认存在路由环路,只需要把VPN网关的默认路由改回指向原有出口网关,不要指向隧道接口,就能直接恢复所有VPN终端的路由转发能力。
故障排查后的验证注意事项
完成所有配置调整之后,不要直接确认故障解决,要分别做双向的连通性验证。首先测试企业内网核心业务系统的访问连通性,确认所有走VPN隧道的流量都能正常转发,没有出现访问中断的问题。
之后还要测试用户本地局域网的资源访问,比如同一局域网下的其他设备、闪电加速器本地网关的管理后台,确认没有出现本地流量被强制转发到VPN远端的问题。验证过程中如果发现部分特殊网段访问异常,只需要针对性添加对应网段的明细路由即可,不需要大范围修改默认路由的优先级,避免引发新的路由冲突。


