网络加速

OpenVPN路由推送生效校验日常实用检查方法全攻略

不少运维人员和远程办公用户部署完OpenVPN服务后经常遇到这类问题:明明已经在服务端配置好了内网网段的推送规则,客户端连接成功后却始终访问不到指定的内部业务系统,很多人不知道该从哪一步开始排查,甚至反复修改服务端配置也找不到根因。这篇攻略整理了全流程可落地的OpenVPN路由推送日常检查方法,不需要复杂的付费工具,普通用户也能一步步校验路由推送是否真的生效,快速定位故障点。

客户端系统路由表原生校验方法

这是OpenVPN路由推送日常检查方法的第一层基础校验,所有OpenVPN下发的路由规则最终都会同步写入操作系统内核的路由表中,并非只存在于VPN软件的虚拟网卡缓存里,只要路由表中没有对应条目,后续所有的连通性测试都没有意义。

Windows系统下不需要安装任何额外工具,连接上OpenVPN之后直接打开管理员权限的命令提示符,输入route print指令,在输出的活动路由列表里查找你预期推送的目标网段,比如企业内网的172.16.0.0/12这类条目,确认该条目的下一跳指向OpenVPN虚拟网卡分配的网关地址,而不是本地物理网卡的默认网关。

Linux和macOS环境下可以直接使用ip route show或者netstat -rn命令,过滤对应目标网段的路由条目,确认该条目的出接口是tun0或者tap0这类OpenVPN生成的虚拟接口,而不是本地的以太网、Wi-Fi物理接口,避免本地更高优先级的直连路由覆盖VPN推送的规则。

OpenVPN客户端运行日志定向排查

很多用户连接上VPN之后就直接关闭了客户端的主窗口,其实OpenVPN的运行日志里完整记录了服务端下发的所有指令,是判断OpenVPN路由推送有没有正常发出的最直接依据,不需要登录服务端翻配置就能快速缩小故障范围。

Windows平台的官方OpenVPN GUI客户端可以右键系统托盘里的VPN图标,选中当前正在使用的连接配置文件点击“查看日志”,macOS常用的Tunnelblick客户端直接在连接详情页就能看到完整的实时日志,在日志里搜索关键词“PUSH_REPLY”,后面跟着的route字段就是服务端实际推送给当前客户端的所有路由规则。

如果日志里完全没有出现你预期的目标网段的route条目,说明问题根本不在客户端侧,直接返回OpenVPN服务端检查server.conf配置,确认push配置行的语法有没有写错,是不是遗漏了子网掩码参数,或者对应网段被服务端的客户端分组权限规则拦截,没有推送给当前登录的账号。

三层连通性逐跳校验验证路由流向

确认系统路由表里已经存在对应推送的网段条目之后,不能直接判定路由推送完全生效,还要实际验证数据包的真实转发路径,避免出现路由条目存在但优先级被其他规则覆盖的隐形问题。

最常用的测试手段就是用traceroute工具,Windows系统下对应指令是tracert,直接追踪目标推送内网网段下某个存活IP的路径,看路径的第一跳是不是指向OpenVPN虚拟网卡的对端地址,第二跳就应该到达OpenVPN服务端的内网侧网关,而不是先走到你本地的家用路由器或者本地局域网网关。

这里要注意一个非常常见的误区,如果用户本地局域网的网段和OpenVPN推送的目标网段完全重合,系统本地的直连路由优先级天然高于VPN推送的路由,就算路由表里同时显示了VPN的路由条目,实际数据包还是会往本地局域网转发,这时候要先排查本地网段冲突的问题,不要反复修改OpenVPN服务端的推送配置做无用功。

服务端侧路由回包反向校验

很多时候客户端侧的路由检查全部正常,但是访问目标内网服务还是不通,看起来像是OpenVPN路由推送没有生效,实际上大概率是OpenVPN服务端本身没有配置回程路由,导致客户端发过去的数据包到了服务端之后,回包找不到返回VPN虚拟网卡网段的路径,出现双向路由不对称的问题。

你可以直接登录OpenVPN服务端的操作系统,确认已经开启了ip_forward转发功能之后,在服务端上用tcpdump工具筛选虚拟网卡tun0的流量,看有没有收到客户端发往目标推送网段的ICMP或者业务请求包,如果能正常收到请求包但是没有对应的回包返回,就说明目标内网的设备没有把回包的网关指向OpenVPN服务端的内网网卡地址,需要调整内网侧的静态路由配置完成双向打通。

日常执行OpenVPN路由推送日常检查方法的相关操作时,不要一上来就盲目修改服务端配置,按照从客户端路由表校验、客户端日志排查、连通性逐跳验证到服务端回包校验的顺序逐步推进,绝大多数路由推送失效的问题都能在短时间内定位根因,不需要借助任何付费的专业网络工具,有基础网络知识的用户都能独立完成全流程排查。

VPN 基础编辑组
VPN 基础编辑组
内容编辑

解释加密隧道、连接协议与出口地址,帮助理解 VPN 的工作方式。

查看更多文章
配置入门

找到适合当前设备的指南

遇到现场替换设备做对照相关问题,可从“保持网络和目标相同,记录必要配置差异”开始阅读。不同设备成功不能自动说明原设备硬件损坏,需要结合具体环境判断。