同一台 Mac 上的工作 VPN 和 Karing:为什么连接会断,怎么设置
如果同时开着工作 VPN 和 Karing 时,Codex 和 ChatGPT 总是断开,或者打不开公司内部网站,原因几乎总是工作 VPN 自己的连接走错了路。下面是分步设置方法和一条命令的检查方式。
很多人这样用电脑:Karing 在 Mac 上一直开着,另外还需要工作 VPN(通常是 OpenVPN)来连公司内网。两个程序单独用都没问题,一起用就出怪事:Codex 的长任务做到一半中断,ChatGPT 提示 “stream disconnected before completion”,公司内部的 Jira 打不开,工作 VPN 自己反复重连。可服务器是好的,测速也正常。
原因几乎总是同一个,几分钟就能找到并解决。

为什么两个 VPN 会互相干扰?
在 Mac 上,Karing 以系统隧道的方式工作:它接管电脑的全部流量。全部,也包括工作 VPN 连接自己服务器的那条连接。结果就成了“VPN 套 VPN”:工作隧道走在 Karing 里面。
一切稳定时几乎察觉不到。但只要 Karing 重新连接(比如它自动更新订阅时),工作 VPN 就会失去服务器并重连。Karing 发现网络设置变了,就重置自己的连接。工作 VPN 再次重连,如此循环。每次重置都会打断正在进行的一切:Codex 的回答、下载、通话。
正确的方式是:工作 VPN 直接通过 Wi-Fi 或网线连接自己的服务器,绕开 Karing。这样两条隧道并排运行,互不干扰。
怎么检查工作 VPN 走的是哪条路?
需要知道工作 VPN 服务器的地址。它写在 .ovpn 配置文件的 remote 一行里,例如 remote 203.0.113.10 1194。也可以在工作 VPN 程序的日志里找到。
打开“终端”(用聚焦搜索:⌘ + 空格,输入“终端”),执行:
```
route -n get 203.0.113.10
```
把 203.0.113.10 换成你的服务器地址,然后看 interface 这一行:
| interface 显示 | 含义 |
|---|---|
en0(或 en1) | 工作 VPN 直接走 Wi-Fi 或网线,这是正确的 |
utun 加数字(如 utun5) | 工作 VPN 走在 Karing 隧道里,断线就是这个原因 |
怎么设置才不会断?
1. 注意顺序:先开 Karing,再开工作 VPN。 工作 VPN 连接时会为自己的服务器添加一条路由。如果 Karing 后连接,可能会把这条路由抢走。所以先打开 Karing,等它连上,然后再连接工作 VPN。
2. Karing 重连后,重新连接工作 VPN。 Karing 有时会自己重连,比如更新订阅或切换网络之后。这时断开工作 VPN 再重新连接,Karing 不用动。
3. 再检查一次路由。 用服务器地址执行 route -n get。如果 interface 仍然是 utun,就手动添加路由。先查路由器地址:
```
route -n get default
```
找到 gateway 一行,例如 192.168.1.1。然后执行:
```
sudo route -n add -host 203.0.113.10 192.168.1.1
```
第一个地址是工作 VPN 服务器,第二个是你的路由器。Mac 会要求输入账户密码。之后 route -n get 应该显示 en0。这条路由在 Mac 重启或切换网络前有效,之后需要重新执行。
4. 如果工作 VPN 用的是 UDP,在 Karing 里选 TCP 服务器。 Hysteria 这类基于 UDP 的协议和 UDP 的工作 OpenVPN 不太兼容:隧道能建立,但内部网站一直加载不出来。工作 VPN 的协议写在 .ovpn 的 proto 一行。
5. 打不开内部网站时,关闭 FakeIP。 在 Karing 中:设置 → DNS → 关闭 FakeIP。开着 FakeIP 时,浏览器从 Karing 拿到的是 198.18.x.x 这样的替代地址,访问内部网站的请求就进了 Karing,而不是工作 VPN。检查方法很简单:ping -c 1 jira.你的公司 不应该显示 198.18。
如果工作 VPN 接管了全部流量怎么办?
也有反过来的情况:工作 VPN 设置为接管电脑的全部流量,这时是 Karing 走在它里面。解决方法正好相反:在 .ovpn 里为 Karing 连接的每台服务器各加一行:
```
route <服务器地址> 255.255.255.255 net_gateway
```
服务器地址可以向客服确认。如果 .ovpn 由公司管理员下发和更新,这些行最好先和管理员商量。
简短清单
- 先开 Karing,再开工作 VPN。Karing 重连了,就重新连接工作 VPN。
route -n get <工作 VPN 服务器>显示en0,而不是utun。- 工作 VPN 用 UDP,就在 Karing 里选 TCP 服务器。
- 打不开内部网站,就关闭 FakeIP。
如果仍然断线,请把断线时间和工作 VPN 服务器的 route -n get 输出发给客服。有了这些信息,通常马上就能看出原因。
如果连接不断但很慢,可以看看我们的文章:如何检查连接速度和稳定性。从头设置 Karing 的方法见电脑和手机上的安全连接设置指南(英文)。协议之间的区别见 WireGuard 和 OpenVPN 对比。
Windows 上的同样设置见 Windows 上的工作 VPN 和 Karing。