Clash Verge Rev 内核通信错误且代理组为空:Windows 服务模式排查
真实问题指纹
Clash Verge Rev #7477 报告的是一个 Windows 服务模式下的特定状态:首页出现 core communication error,代理页没有代理组或当前节点;但 verge-mihomo 仍在运行、混合代理端口与命名管道已经监听,应用流量也可以转发。该报告环境为 Windows 10、Clash Verge Rev 2.5.1、Mihomo 1.19.28 和服务模式;这些版本只用于界定公开个案,不代表其他版本必然相同。
这与“核心进程启动后立即退出”是不同故障意图。前者优先证实前端与服务控制通道;后者才优先追查 YAML、权限、端口或内核崩溃日志。
先把 UI 状态与核心状态分开
在退出或重装前,保存配置导出文件,再以管理员以外的普通 PowerShell 进行只读核对。不要公开订阅地址、节点名称、账户信息或完整本地路径:
Get-Process | Where-Object { $_.ProcessName -match 'verge|mihomo' }
Get-NetTCPConnection -State Listen | Where-Object { $_.LocalPort -in 7890,7897 }
Get-Service | Where-Object { $_.Name -match 'clash|verge' } |
Select-Object Name, Status, StartType
端口并非所有安装都会使用 7890 或 7897;应以自己的配置和日志为准。若没有核心进程或监听端口,转到“启动失败/核心崩溃”路径;若二者存在而 UI 仍为空,继续记录控制通道问题,而不是把界面文案当作唯一证据。
诊断范围
“Clash Verge Rev 内核通信错误且代理组为空:Windows 服务模式排查”覆盖的是核心可运行但 UI 无法显示当前代理模式、节点或代理组的表现。它不证明订阅可用、节点可连接,也不适用于账号、线路质量或服务端故障。记录客户端版本、核心版本、服务模式、首次出现时间和 UI 中的原始错误文本;将日志中的 URL、令牌和个人网络标识脱敏。
操作步骤
- 先在 UI 中关闭“服务模式”或退出后重新以常规模式启动一次,仅改变这一项,再观察代理组是否恢复。不要同时更新核心、覆盖订阅和修改 TUN。
- 对照服务状态、核心进程和监听端口的时间戳。核心运行且系统代理可以使用时,保留对应时间段的前端日志和服务日志;核心不存在时,回到启动/配置解析路径。
- 若只在升级后出现,保留已导出的配置与版本信息,检查项目发布说明及同一错误文本的维护者回复;不从第三方下载所谓“修复核心”。
- 常规模式恢复而服务模式仍失败时,停止反复重启服务,带着脱敏后的版本、服务状态、首个 UI 错误和最小复现步骤向 Clash Verge Rev 项目反馈。
可观察的预期结果
一次只变更服务模式后,应能得到清晰分类:UI 与代理组恢复、核心本身停止、或核心仍运行但 UI 继续报告通信错误。第三种结果支持继续收集前端/服务控制通道证据;它不能由单次测速或“能打开网页”直接判定为已修复。
验证与回退
每次操作后回到同一个代理页,确认当前代理模式和代理组是否可见,再复测原先受影响的本地客户端动作。若出现新错误,恢复导出的配置和上一步服务模式;不要为追求临时可用而同时切换 DNS、TUN、系统代理与订阅。仍未解决时,准备客户端与核心版本、Windows 版本、服务状态、端口监听结果、首个错误文本及脱敏日志。
来源与适用边界
本文基于公开 Issue #7477 整理其用户可见表现与版本环境,并未复现或承诺所有 Windows、核心或服务模式组合都能得到同一结果。命令只读取本机状态;服务名称、端口和日志位置因安装方式而异。请以项目维护者的更新说明和自己的脱敏日志为最终依据。
来源与更新
本文的实际现象与命令依据下列公开来源整理;示例中的地址和标识符均已脱敏。
排查顺序
- 记录症状确认客户端、系统、错误文本与发生范围。
- 低风险核对先检查本文对应的配置、权限、网络或版本条件。
- 复测与回退只改变一项;现象变化后再决定是否继续。
常见问题
UI 显示内核通信错误就代表 Mihomo 已崩溃吗?
不一定。该 Issue 记录过核心监听并转发流量正常、但 UI 仍不能读取代理组的反例;需分别核对进程、监听与 UI 状态。
可以直接删除全部配置或重装吗?
先导出当前配置并做只读检查。若核心仍在运行,直接删除配置会掩盖服务模式或控制通道问题,且增加回退成本。
确认结果、回退与日志
每次只修改一项并复测原始现象。若出现新错误,恢复导出的配置或关闭刚启用的开关;仍未解决时,请保留客户端与系统版本、错误文本、发生时间、已尝试步骤以及脱敏日志。
不要公开订阅地址、账号或完整连接信息。文中的命令与配置片段仅适用于其标注的客户端和系统;未提供命令时,请以来源中的官方界面或系统文档为准。