早上9点,两个网络工具突然「打」起来了

早会前十分钟,你先打开公司发的VPN客户端连上内网,准备把昨晚整理的文档同步到内部系统;顺手又开着自己装的个人加速工具,打算等会开完会去查点资料、刷新几个常用的外部平台页面。结果呢?内部系统的登录页面转了半天转不出来,提示连接超时;好不容易把加速工具关掉,内网倒是通了,可加速工具优化过的那些线路又全部断线,几个常用的外部工具页面又全部打不开。类似的场景,在居家办公的人身上几乎每周都会碰上一次——不是设备坏了,也不是网速问题,而是两个软件在悄悄抢同一样东西:你这台电脑的流量到底该走哪条路。

先分清楚:这两个工具压根不是一路人

要理清楚冲突,得先弄明白这两个工具各自在干什么。它们看起来都在「改网络」,工作的层级却完全不一样。

公司VPN:负责把你「接进」内网

公司发的VPN客户端,本质上是一把钥匙——它的任务是在你的电脑和公司内部网络之间建立一条加密通道,让你的设备看起来就像插在公司内网的网线上一样,能访问只有内部才能看到的系统:OA审批、内部文档库、代码仓库、财务后台。这些系统的域名和地址外部根本查不到,必须先通过VPN把自己「接进去」才能访问到。它解决的问题是「能不能进公司内网」,跟你访问外部网站快不快、稳不稳没有直接关系。

个人加速工具:负责优化你「出去」的线路

你自己装的网络加速工具解决的是完全不同的问题:它不负责把你接进任何内部系统,而是负责给你访问外部服务的流量挑一条更好走的线路。当你要打开一个海外网站、使用某个跨境协作工具、或者访问延迟较高的境外服务器时,加速工具会把这部分流量导到经过优化的节点绕一圈,减少丢包和延迟。它面对的是互联网上的公开服务,跟公司内网完全不搭边。

一个负责「进得去」,一个负责「走得快」,本来应该各管一段、互不打扰。问题出在:它们俩最终控制的是同一张路由表,规则谁说了算,系统只认一个结果。

为什么两个一起开,系统就开始「选边站」

电脑访问任何一个地址之前,都要先查一遍路由表,确认目标该从哪张网卡、走哪条路径出去。公司VPN和个人加速工具连接成功后,都会往这张路由表里写规则,写规则这件事本身就存在抢占关系。

路由表被谁「接管」,谁就赢

不少公司VPN客户端出于安全合规考虑,启用的是全局模式——连接后会把你电脑的默认出口整个接管过去,不管是访问内部系统还是打开一个普通网页,统统先绕道公司网关再出去。这时候如果个人加速工具也在跑,它优化过的线路会被公司网关这一层拦腰截断,你会感觉加速工具「失效了」,打开外部服务反而比不开加速还慢,因为多绕了一圈。

反过来,如果个人加速工具的虚拟网卡在公司VPN连接之后重新抢回了默认出口,情况就会掉个个:原本应该发往公司内网网段的请求,被错误地送去了加速工具的节点。加速节点自然没办法把请求转发进一个它根本不认识的私有内网,于是内部系统直接连接超时——这正是开头场景里内网连不上的真实原因。

DNS解析也会跟着「打架」

比路由更隐蔽的一层是域名解析。公司VPN连接后,通常会把内部专用的DNS服务器推送给你的系统,这样内部系统的域名才能被正确解析成对应的内网地址。而个人加速工具为了让你访问外部服务时解析更快,往往会把系统DNS改成它自己指定的服务器。这两者一旦互相覆盖,就会出现路由其实是通的,但域名死活解析不出来、或者解析到了错误地址的情况——表现出来就是网页打不开,但换成用IP地址反而能连上,很容易被误判成网络本身出了问题。

三种实用解决思路,按麻烦程度排列

搞清楚冲突的根源之后,解决思路其实不复杂,核心就一句话:让两个工具各管各的流量,别让它们抢同一条默认路由。

思路一:分应用分流,一次配置长期有效

如果个人加速工具支持按域名或IP段设置规则,最干净的做法是把公司内网的地址段和内部域名整体加入直连例外名单,让这部分流量永远不经过加速工具,原样交给公司VPN处理;其余外部流量再交给加速工具优化。常见需要加入例外名单的内容包括:

  • 公司内网常见的私有地址段,如 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16
  • 内部系统域名,比如公司OA、内部Wiki、代码仓库这类只在内网能解析的地址
  • VPN网关本身的连接地址,避免连VPN用的这条线也被加速工具接管

如果公司VPN客户端本身支持分离隧道选项(常见于设置里「仅路由内部网段」或「不将所有流量通过VPN发送」这类开关),同时打开它,两边就都只认领属于自己的那部分流量,不会再互相抢占默认路由。这是最彻底的办法,配置好一次,以后开会、查资料同时进行也不会互相影响。

思路二:错开使用时段,适合临时应急

如果公司要求VPN必须用全局模式、没有分流选项可调,或者暂时没空折腾配置,最直接的办法就是错峰使用:需要访问内部系统、开线上会议时,先断开个人加速工具,单独连公司VPN;内部事务处理完,再断开公司VPN,重新连上加速工具处理外部相关的工作。不够优雅,但胜在零配置、不会出错,遇到突发的内网访问需求时最保险。

思路三:检查路由表优先级,适合喜欢刨根问底的人

如果想更精确地知道究竟是谁抢了默认路由,可以查看当前的路由表:Windows下打开命令行执行 route print,Mac或Linux下用 netstat -rn,重点看两条默认路由(目标地址为0.0.0.0)各自对应的网卡接口和跃点数,数值越小代表优先级越高。如果排在前面的接口不是预期的那一个,可以到网络适配器设置里手动调整对应网卡的接口跃点数,或者到公司VPN客户端设置里找到类似「使用远程网络的默认网关」的选项,取消勾选,让它只接管内部网段的路由,不再抢占全局默认出口。

排查自查清单
排查自查清单
对比维度公司VPN个人加速工具
核心任务把设备接入公司内网优化访问外部服务的线路
连接对象公司内部系统、私有网段互联网上的公开服务
典型冲突表现被加速工具抢占默认路由后,内网系统连接超时被VPN全局模式接管后,加速线路被拦截,速度不升反降
DNS影响依赖内部DNS解析内部域名常自定义DNS加快外部解析
推荐配置方式开启分离隧道,只路由内网网段按域名或IP设直连例外,绕开内网地址

这里顺带说一句,如果个人在用的加速工具规则做得比较死——只有开关没有分流选项,那即便想按思路一操作也无从下手。这也是挑加速工具时值得留意的一点:能不能自己设置域名或IP段的例外规则,直接决定了它会不会跟公司VPN这类需要接管特定网段的工具产生冲突。TonBoVPN 在这方面做得比较灵活,可以按域名或IP段单独设置直连规则,把公司内网网段排除在加速范围之外,不会跟公司VPN抢默认路由,居家办公时两边同时开着也不会互相干扰。

选加速工具时留意这一点
选加速工具时留意这一点

写在最后

公司VPN和个人加速工具「打架」,本质上不是哪个软件坏了,而是两个各管一段的工具在抢同一张路由表的控制权。分清楚「谁负责接入内网」「谁负责优化外部线路」这两件事之后,剩下的就是给它们划清各自的地盘:能分流的尽量按规则分流,不能分流的就错峰使用,拿不准的时候翻一眼路由表看看究竟是谁抢了默认出口。如果暂时找不到支持精细分流的加速工具,也可以看看 TonBoVPN 的直连规则配置,几分钟就能把公司网段排除在加速范围之外。理清楚这层关系,居家办公时开会连内网、查资料连外部,两件事完全可以互不耽误。