ChatGPT 桌面版「每次重连 5 次」修复复盘:一个 VMware 残留如何瘫痪了整台机器的虚拟网卡

结论先行:问题不是 ChatGPT,不是代理软件,甚至不是网络本身------是我机器上 VMware 卸载后留下的一个残破桥接协议组件,它让 Windows 再也创建不出任何新的虚拟网卡。而 ChatGPT 桌面版的 app-server websocket 恰恰依赖全流量 TUN 隧道才能绕过校园网的 DNS 污染和 SNI 阻断。链条一环扣一环,断点却在最想不到的地方。

症状

ChatGPT 桌面版(Store 版,主进程 ChatGPT.exe)每次启动都要「重新连接」好几次才勉强能用。查应用日志(~/.codex/logs_2.sqlite),里面是对 wss://chatgpt.com/backend-api/wham/remote/control/server 的无限重连,清一色 os error 10060(连接超时),历史上从未成功过一次

这层原因很快定位:这个 websocket 是应用 Rust 内核直连 的,不读系统代理(聊天 Tab 是 webview,走系统代理所以正常)。而校园网环境里,chatgpt.com 被 DNS 污染 100%(解析到 Twitter/Facebook 假 IP),即使拿到真 IP,SNI=chatgpt.com 的 TLS 握手也有约 90% 概率被 RST。

结论:必须让应用的全部流量进隧道------即 yepfast(Flutter + mihomo 内核的代理客户端)的 TUN 模式。

第一层墙:TUN 网卡永远创建不出来

TUN 开关一直是开的,内核也以 SYSTEM 身份跑着(yepfastHelperService 服务拉起的),但系统里从来没有出现过 TUN 网卡。setupapi.dev.log 里有个诡异的现象:内核每 15 秒对同一个设备 SWD\WINTUN\{A654C402-...} 执行一次"Delete Device",每次都失败:

复制代码
! dvi: Query-and-Remove failed: 0x05: CR_INVALID_DEVNODE

而唯一一次完整的设备安装日志显示,驱动安装本身成功了(驱动包入 DriverStore、wintun.sys 落盘、服务创建),但设备启动时卡住:

复制代码
! dvi: Device 'SWD\WINTUN\{A654C402-...}' pending start:
       Device has problem: 0x38 (CM_PROB_NEED_CLASS_CONFIG)

0x38 的意思是"设备等待类配置"------对网卡来说,就是网络类安装器(netclass)还没来得及给它分配 NetCfgInstanceId、在系统里登记成一块真正的网卡。类配置不完成,设备就是一块僵尸。

第二层墙:僵尸节点删不掉

顺着常规思路先清残留:删设备节点、删 NetClass 键、sc delete wintunpnputil 移除驱动包,然后让客户端重装。结果遇到一个离谱的事:

那个僵尸设备节点,连管理员权限都删不掉。 提升的 PowerShell 里 reg delete 报"删除请求已部分完成",Remove-Item 报"子项不存在"------但 Test-Path 明明说键还在。最后祭出杀招:建一个 SYSTEM 身份的计划任务去执行删除,秒删。ACL 显示 Administrators 有 FullControl,但就是删不动,怀疑是驱动类安装的中间态把节点锁住了。

清干净后让客户端全新重装驱动------还是 0x38,一模一样。到这里排除了"残留导致失败"的假设,说明类配置失败是系统性的。

转折点:一个 NTSTATUS 和一次巧合的搜索

重看安装日志,失败后设备状态是:

复制代码
! dvi: Device Status: 0x01802400 [0x1c - 0xc0000490]

RtlNtStatusToDosError 解码 0xC0000490,得到 Win32 错误 1169 = ERROR_ELEMENT_NOT_FOUND(「元素没有与指定的值匹配的项」)。这是 NetCfg 网络配置接口的经典报错。

搜索这个错误码,撞到一条几乎量身定做的已知问题:Windows 11 Build 26200 系列上,VMware Bridge Protocol 状态异常会破坏网络设备类安装流程,导致任何新的虚拟网卡都无法创建------症状原文"客户端进程正常、端口正常监听,但 Get-NetAdapter 里永远没有 TUN 网卡",和我的机器一字不差。

对照我的机器,两条全中:

  • 系统版本正是 10.0.26200
  • 装了 VMware Workstation,而且------查证发现 C:\Windows\System32\drivers\vmnetbridge.sysE:\vmnetbridge.dll 都已经不存在了 !这是 VMware 被半卸载(或某次清理误删)留下的状态:桥接协议的注册表组件还在网络栈里,其 Ndi 配置写着 ComponentDll: vmnetbridge.dll,还有一个通知对象 CLSID {3d09c1ca-...}。Windows 每次做网络配置变更(包括创建新网卡)都会去加载这个组件,DLL 没了,整个 INetCfg 操作随之失败------于是所有新网卡,包括 wintun,全部胎死腹中。

vmnetbridge 服务最后一次启动的退出码是 2(文件不存在),就是铁证。

修复

摘除这个残破组件(它本来就已损坏,而且没绑定任何网卡):

  1. 删协议组件键 HKLM\SYSTEM\CurrentControlSet\Control\Network\{4d36e974-...}\{49444745-4252-4554-79AC-EA6CADE4227F} 及其 Descriptions 条目
  2. 删残破服务 Services\vmnetbridge
  3. 删通知对象 CLSID {3d09c1ca-2bcc-40b7-b9bb-3f3ec143a87b}
  4. 全量备份后操作,随后在 yepfast 里切一次 TUN(关→开)

网卡一次创建成功:

复制代码
Name: yepfast | yepfast Tunnel | Status: Up | 198.18.0.1/30
默认路由 0.0.0.0/0 → 198.18.0.2 (metric 0)   # 全流量进隧道

验证

重启 ChatGPT 桌面版,查应用日志:

复制代码
12:20:11 remote control websocket status changed
        previous_status=Errored → next_status=Connected

历史首次 Connected,之后零断线、零重连。界面上的"重新连接"提示彻底消失。

几点教训

  1. 「半卸载」比「卸载」危险得多。 软件卸载不干净不是小事------残留的注册表组件 + 丢失的 DLL,能让操作系统层面的功能(这里是网络设备类安装)整体瘫痪,而且症状出现在完全不相干的软件(ChatGPT)上。
  2. 错误码要一路解码到底。 0x38 只是"设备没配好"的表象,0xC0000490 → 1169 ELEMENT_NOT_FOUND 才指向 NetCfg 层,再结合 Kernel-PnP 事件日志(Event 400/420)和 build 号,才锁定了那个已知问题。
  3. 常规排查工具链 :setupapi.dev.log(设备安装全流程)、pnputil(驱动包管理)、Kernel-PnP/Configuration 事件通道、RtlNtStatusToDosError 解码 NTSTATUS,再配合有针对性的搜索------这套组合拳这次帮了大忙。
  4. 顽固的僵尸设备节点,试试 SYSTEM 计划任务。 管理员权限不等于万能,有些系统中间态只认 SYSTEM 本人。

*附:本次修复全程由 Claude Code 协作排查,备份与可复用的修复脚本保留在 C:\Users\22842\scripts\(fix-vmware-bridge.ps1 幂等可重跑)。若日后重装/卸载 VMware 后 TUN 再次罢工,大概率是同一个坑。

相关推荐
RAOY的AI笔记1 小时前
从ChatGPT注册场景理解Web身份认证:Session、Cookie、Token与MFA基础原理
人工智能·chatgpt
ClouGence2 小时前
GPT-6 做 UI 自动化测试:Demo 惊艳,但真的适合长期回归吗?
前端·chatgpt·测试
Mr.朱鹏4 小时前
科技周报(第2026-09-10期):模型激战量子降温
人工智能·科技·chatgpt·机器人·开源
Behaviour4 小时前
ChatGPT Images2.5 全面开放
人工智能·chatgpt
吨吨ai7 小时前
2026年9月10日|ChatGPT Pro + GPT‑6 Astra:Codex 数据工程实战
gpt·chatgpt
dozenyaoyida18 小时前
AI与大模型新闻日报 | 2026-09-09
人工智能·ai·chatgpt·大模型·新闻
晚安code1 天前
GPT-Image-2.5 凌晨发布,速度精度交互三升级,Flare 与 Sunburst 怎么选
人工智能·gpt·chatgpt
Ming_studying1 天前
近期AI热点010|ChatGPT Images 2.5 加入 Sketch:图像生成从文字提示走向草图交互
人工智能·chatgpt·openai·ai绘图·sketch
全栈弄潮儿²⁰²⁴1 天前
AI Agent 开发实战(7):如何接入搜索和数据库工具?
数据库·人工智能·ai·chatgpt·oracle·agent·ai编程