1. 典型现象:为什么「浏览器能开」不等于「内核能拉」
浏览器访问订阅 URL 时,往往沿用你在 Windows 里设置的系统代理,或浏览器自己的代理插件,出口路径与 Clash 内核进程独立。而 Clash 订阅更新失败时,请求通常由内核或 GUI 包装的内核发起,遵循的是 config.yaml里的 DNS 模块、路由规则与出站策略。于是会出现「Edge 秒开、客户端一直转圈」——这不是玄学,而是两条不同的网络栈路径。
另一个常见误区是把「能打开网页」等同于「TLS 一定健康」。某些杀软或企业网关会对 HTTPS 做中间人解密,浏览器已信任其根证书,但 Clash 作为独立进程仍按系统信任库校验,表现为证书校验失败或握手异常。反过来,若订阅站使用国内 CDN 而你的节点地区不合适,浏览器若走了直连、内核却走了高延迟代理,也会出现一侧成功一侧超时。
因此排错的第一步,是固定复现动作:在客户端里点一次「更新订阅」,同时打开内核日志(或 GUI 的日志面板),记下完整报错行。下文所有判断都围绕这几类关键词展开:resolve、dial、TLS、certificate、timeout、i/o timeout等。
2. 日志怎么开:订阅拉取在 mihomo 里对应什么请求
在 mihomo系内核中,订阅更新本质是对订阅 URL 发起一次(或多次)HTTPS GET。日志里通常会打印目标主机名、解析到的 IP、选用的策略组与出站接口。请先在 GUI 中将日志级别调到 info或 debug(不同客户端菜单位置不同,但都会映射到内核的 log-level),再触发更新,避免对着空白面板猜。
若日志里完全没有订阅域名的记录,优先怀疑:客户端没有真正把请求交给内核、订阅地址被剪贴板截断、或更新按钮触发了缓存逻辑。可尝试删除订阅后重新粘贴 URL,并确认没有多余空格与不可见字符。若日志里出现了域名但立刻失败,继续按下一节的类型归类。
需要区分「策略组测速」与「订阅下载」:前者访问的是各节点自带的测速 URL,后者访问的是你配置的 subscription地址。把两类日志混读容易误判为「节点全红所以订阅也挂」。若你正在调 url-test与 fallback,可对照站内 策略组 url-test 与 fallback一文,避免把测速失败当成订阅 TLS 问题。
3. DNS 解析类:从日志到 nameserver 与 Fake-IP
当日志出现 couldn't find address、no such host、lookup failed或长时间停在解析阶段,应归类为DNS 解析问题。此时浏览器仍可能正常,因为浏览器可能使用 DoH、路由器 DNS 或系统缓存,而 Clash 的 dns段落指定了另一组 nameserver,在 TUN 或 redir-host模式下还会与 Fake-IP交互,路径更复杂。
实务上可先做最小化验证:在 PowerShell 中对该订阅域名执行 nslookup 你的订阅域名,观察是否返回预期记录。若系统解析正常而内核仍失败,检查 dns.nameserver是否指向了被墙或公司内网拦截的地址;必要时为订阅域名配置 nameserver-policy,让解析走可信 DoH/DoT。若你启用了 Fake-IP,请确认 fake-ip-filter是否包含订阅主机名,避免内核拿到「假地址」去建连。更系统的 DNS 与分流关系可参考 DeepSeek 分流与 DNS 专文中的思路,把「解析」与「出站」拆开思考。
Windows 上还要注意 多网卡与虚拟网卡:装了 TUN、虚拟机或公司 VPN 后,默认路由与 DNS 劫持顺序可能变化,导致 Clash 的 DNS 出口与浏览器不一致。临时关闭 VPN 对比一次日志,常常能快速缩小范围。
4. TLS 与证书:握手失败、x509、时间漂移与杀软扫描
日志若含 TLS handshake、x509、certificate signed by unknown authority或 hostname mismatch,说明 TCP 已通但TLS 层校验失败。先核对 Windows 系统时间与时区:时间漂移过大会让证书被视为未生效或已过期,表现为莫名其妙的握手失败。
其次排查HTTPS 扫描类安全软件。若企业环境或杀软对出站 HTTPS 做解密,需要在对应软件中为 Clash 进程放行,或导入其根证书到系统信任库——这比在配置里盲目打开 skip-cert-verify更安全。后者虽能绕过校验,但会把中间人风险静默放大,仅建议在可信内网测试环境短期使用。
若订阅商使用自签名或链不完整的证书,浏览器可能因 HSTS 或内置例外而「看起来能用」,内核仍严格失败。此时应联系订阅提供方修复证书链,而不是长期关闭校验。若错误信息明确写出 SNI 或 ALPN 相关字段,还要确认是否被本地 hosts 或分流规则改写了目标。
5. 超时与代理回环:规则把订阅域名送进节点
当日志出现 i/o timeout、context deadline exceeded或长时间卡在 dial tcp,要先判断是真连不上还是走了错误出站。最典型的坑是:全局规则或 GEO 规则把订阅域名也送进了需要代理才能访问的节点,而节点本身尚未就绪,形成「拉订阅依赖代理、代理依赖订阅」的死锁。
修复思路是让订阅主机名显式直连(DIRECT),或放在独立的 DIRECT策略组之前匹配。示例(域名请替换为实际订阅主机):
# Put subscription host BEFORE broad proxy rules rules: - DOMAIN,sub.example.com,DIRECT - MATCH,PROXY
若订阅托管在 GitHub Raw、Cloudflare Workers 等对地区敏感的平台上,还要对照你当前节点的地理位置:直连能访问不代表「从日本节点访问同一 URL」也能通。日志里若显示选中了某个延迟很高的出站,可临时手动切到延迟低的节点再试更新,验证是否为出口质量问题。
另一种超时来自本机防火墙或第三方套件拦截了 Clash 进程的外连。Windows 安全中心中可检查「专用网络」与「公用网络」配置文件是否对 Clash 可执行文件放行。与「局域网共享 mixed-port 入站」不同,订阅拉取主要是出站,若你刚为 mixed-port加过入站规则仍失败,不要混淆两类方向;局域网共享细节见 allow-lan 与防火墙专文。
6. mixed-port、系统代理与「谁在发起订阅请求」
mixed-port表示在同一 TCP 端口上同时接受 HTTP 与 SOCKS 风格的入站,是多数桌面 GUI 的默认入口。它解决的是「本机应用如何把流量送进 Clash」,而不是「订阅 URL 一定从该端口出去」。订阅更新请求通常由内核直接外拨,不经过你在浏览器里填的 127.0.0.1:7890。
但当 GUI 或脚本错误地把「系统代理环境变量」指向了尚未就绪的本地端口,或把内核嵌套在另一个需要代理才能联网的容器里,仍会出现间接依赖 mixed-port的现象。排错时可在关闭「系统代理」开关后重试订阅更新:若关闭后立刻恢复,说明之前存在代理链路与规则组合问题,而不是订阅站宕机。
若你希望整体理解端口、TUN 与系统代理的关系,可把本文与 Clash 使用教程一起阅读:先把「入站 mixed」「出站节点」「DNS 模块」三块黑板分开,再叠加上 Windows 的全局代理与路由表,就不容易在日志里迷路。
7. 对照表与可勾选清单
下表汇总日志关键词与优先动作,建议打印或在第二屏幕对照操作。
| 日志线索 | 更可能原因 | 优先动作 |
|---|---|---|
| lookup / resolve / no such host | Clash DNS 与系统 DNS 路径不一致、Fake-IP 未过滤订阅域 | 检查 nameserver、fake-ip-filter、临时 nslookup 对照 |
| TLS handshake / x509 / certificate | 系统时间错误、杀软 HTTPS 扫描、订阅证书链不完整 | 校时、放行或导入根证书、联系提供方修链;避免长期 skip 校验 |
| i/o timeout / dial tcp 卡住 | 规则误走代理、节点地区不适、出口被 QoS、防火墙出站拦截 | 为订阅域加 DIRECT、换节点对比、检查本机出站拦截 |
| 浏览器正常、日志无记录 | 更新未触发内核、URL 粘贴错误、客户端缓存 | 删订阅重加、调高 log-level、重启内核 |
开源内核的迭代与发行注记可在上游仓库查阅(例如 mihomo(Clash Meta)GitHub 仓库),便于核对某版本是否修复了特定 TLS 或 DNS 行为;这与「去哪里下载安装包」是两条信息通道,安装包仍建议通过本站下载页获取以保持一致体验。
把Clash 订阅更新失败拆成「解析 → 路由 → TLS → 出口质量」四步之后,大多数 Windows 上的玄学问题都会落回可验证项:DNS 解析是否一致、TLS handshake是否被中间人干扰、规则有没有把订阅域送进不该走的节点、以及 mixed-port与系统代理是否让你误判了流量路径。相比一次次重装客户端,对照日志做小步验证往往更快定位根因。整体体验上,成熟内核加上清晰的直连/分流边界,在长期使用中比临时关证书校验或全局盲目直连更稳,也更对得起自己的时间与数据安全。
相关阅读 · 同主题集群
按主题相关度匹配的延伸阅读,覆盖同分类下的实战配置文章。
Clash 已开但浏览器仍直连?在 Windows 上关闭安全 DNS 并校准系统代理
Clash 与系统代理已开,Chrome、Edge 却像本地直连?说明浏览器「使用安全 DNS」与 DoH 如何绕开 mihomo 的解析栈;分步关 Chrome、Edge 与 Windows 加密 DNS,再对照 mixed-port、系统代理与 fake-ip。与订阅 TLS 拉取、TUN+UWP 文互补,专盯「只…
阅读全文Windows 11 安装 Clash Verge Rev:系统代理与 TUN 模式首次配置步骤
在 Win11 上从零安装 Clash Verge Rev:厘清系统代理与 TUN、先浏览器验证再开 TUN;说明 Wintun 与 UAC、驱动失败与多 VPN 路由冲突,并与 CFW 迁移文、macOS Verge 专篇互补。
阅读全文IPv6 双栈下用 Clash TUN 仍漏地址?关闭 IPv6 与分流校准实测(2026)
已开 Clash TUN 仍能测出真实地址或 IPv4、IPv6 表现割裂?说明双栈下 DNS、路由与规则如何脱节,给出系统层关闭或约束 IPv6、mihomo DNS、Fake-IP 与 GEOIP 分流校准思路,及 2026 可复现测试顺序;与 UWP、UDP 语音等专文并列但单独覆盖 IPv6 长尾。
阅读全文