故障排查 预计阅读 12 分钟

Clash 节点超时无法连接怎么办:按这个顺序排查最快

节点全部超时和个别超时是两类问题。给出一条固定排查顺序:先看订阅有效期,再测直连网络,然后核对系统时间、端口与协议参数,最后才考虑换节点,每一步附具体操作。

先分型:全部超时还是个别节点超时

排查前先停止反复点击延迟测试。节点超时只是结果,不直接说明节点已经失效。订阅过期、当前网络断流、系统时间错误、DNS 异常、端口冲突和配置参数不兼容,都可能显示为 timeout。先确认故障范围,后面的检查才能缩短。

全部节点超时

如果同一订阅里的香港、日本、美国等不同地区节点都在同一时间超时,优先检查公共环节。公共环节包括订阅状态、直连网络、Clash 内核是否运行、系统代理或 TUN 是否建立,以及当前网络是否限制了相关协议。几十个节点同时故障的概率通常低于本地环境整体异常。

只有部分节点超时

如果同一订阅中仍有节点能测出 45 ms、120 ms 等延迟,说明客户端内核、基本网络和订阅格式大概率可用。此时重点转向故障节点本身:服务器离线、端口更换、协议参数变化、线路被当前运营商阻断,或者健康检查地址对该节点不可达。

现象 优先检查层 下一步
所有节点同时超时 订阅、直连网络、内核运行状态 按本文顺序从第一步开始
同一地区少数节点超时 节点服务器与地区线路 换同地区其他节点交叉测试
延迟正常但网页打不开 规则、策略组、DNS、系统代理 检查请求实际命中的出口
Wi-Fi 超时,手机热点正常 路由器、局域网 DNS、运营商线路 保留热点结果并检查当前网络

第一步:确认订阅仍有效且配置已更新

先进入客户端的订阅或配置页面。常见入口名称是「订阅」「配置」「Profiles」或「配置管理」。查看当前配置的更新时间、剩余流量和到期时间。不同客户端菜单略有差异,例如可沿「配置」→「订阅管理」或「Profiles」→ 当前配置 →「更新」查找。

  1. 确认订阅没有到期,剩余流量不是 0 GB。
  2. 手动更新一次订阅,记录更新成功或失败的提示。
  3. 更新成功后重新加载该配置,不要只停留在旧配置上。
  4. 进入代理组,确认节点列表确实发生刷新。
  5. 不要把订阅地址粘贴到公开测速网站或截图中。

订阅更新失败怎么判断

更新时出现 HTTP 401 或 403,通常表示订阅凭据失效、链接被重置或访问受到服务端限制。HTTP 404 表示地址不存在。持续返回 5xx,则要考虑订阅服务端暂时异常。若提示 connection timeout,需要继续检查直连网络能否访问订阅地址,因为不少客户端默认使用直连方式更新配置。

更新成功也不等于节点参数一定有效。打开配置详情,检查节点数量是否异常变成 0,或者新配置是否仍引用旧的 provider 缓存。使用代理集合的配置可能包含如下结构,真正的节点列表来自 provider 文件,而不是主配置本身:

proxy-providers:
  provider-main:
    type: http
    url: "订阅地址"
    path: ./providers/provider-main.yaml
    interval: 3600
    health-check:
      enable: true
      interval: 600
      url: https://www.gstatic.com/generate_204

interval: 3600 表示每 3600 秒尝试更新一次;健康检查的 interval: 600 表示每 600 秒检测一次。主配置更新了,但 provider 缓存仍旧,也可能继续看到已失效节点。可在客户端的代理提供者页面手动更新一次,再重启内核。

第二步:关闭代理,验证直连网络

Clash 依赖当前网络建立到代理服务器的连接。底层网络已经断流时,节点自然全部超时。先在客户端中关闭「系统代理」,如果正在使用 TUN 模式,也暂时关闭 TUN。完全退出浏览器后重新打开,访问一个日常可直连的网站。

做两组最小测试

  1. 关闭系统代理和 TUN,使用当前 Wi-Fi 打开直连网站。
  2. 保持 Clash 配置不变,把电脑或手机切换到手机热点,再测同一批节点。

如果当前 Wi-Fi 下全部超时,手机热点下立刻恢复,例如节点延迟从 timeout 变成 80 至 250 ms,故障层就在原网络、路由器或运营商路径,不在 Clash 配置。此时先重启光猫或路由器,检查路由器的上网状态和 DNS 设置,再询问网络管理员是否启用了出口限制。

Windows 还可打开终端执行基础连通测试。这里测试的是本地网络和 DNS,不是代理节点速度:

ping 1.1.1.1
nslookup example.com

ping 被禁不一定代表断网,但如果域名解析失败、浏览器直连也打不开网页,就应先修复网络。macOS 和 Linux 可在终端使用相同命令;部分系统需要用 dig example.com 替代 nslookup

公共 Wi-Fi 的额外检查

酒店、机场和校园网常有认证页。连接 Wi-Fi 后看似已联网,实际仍需浏览器完成登录。关闭代理后访问一个普通 HTTP 页面,确认是否跳转到认证入口。认证完成前,Clash 发出的连接通常会被拦截或重定向,表现为节点全超时。

第三步:校准系统时间,再检查内核与本地端口

系统时间误差会破坏握手

TLS 证书验证依赖日期和时间。系统时间相差数分钟甚至数小时,可能导致订阅请求、WebSocket TLS、gRPC TLS 或其他加密连接失败。进入 Windows「设置」→「时间和语言」→「日期和时间」,打开自动设置时间和自动设置时区,然后点击立即同步。macOS 可进入「系统设置」→「通用」→「日期与时间」,开启自动设置。

同步后完全退出客户端,再重新启动。不要只切换节点,因为旧连接和 DNS 缓存可能仍留在内核进程中。若日志出现 certificate has expired、not yet valid 或 handshake failure,时间和证书链应列为重点。

确认 Clash 或 mihomo 内核正在运行

图形界面能打开,不代表内核进程正常。进入「设置」→「内核」或「设置」→「Clash 内核」,检查状态是否为运行中。采用 Clash Meta 后续内核 mihomo 的客户端,日志和进程名称可能显示 mihomo。若内核反复启动失败,先打开日志查看第一条 error,而不是只看最后一条重试信息。

检查端口是否冲突

常见本地 HTTP 与 SOCKS 混合端口是 7890,控制端口常见为 9090。具体值以当前 YAML 和客户端设置为准。下面是常见配置形式:

mixed-port: 7890
external-controller: 127.0.0.1:9090
allow-lan: false
mode: rule
log-level: info

若另一个代理程序已经占用 7890,Clash 可能无法监听该端口。Windows 可在终端执行:

netstat -ano | findstr :7890
netstat -ano | findstr :9090

macOS 或 Linux 可执行:

lsof -nP -iTCP:7890
lsof -nP -iTCP:9090

发现端口被旧进程占用后,先退出旧代理程序,或在「设置」→「端口设置」中把 mixed port 改为未占用端口,例如 7891。修改后还要让系统代理同步使用新端口。只改 YAML、不更新系统代理,会导致浏览器继续连接旧的 127.0.0.1:7890。

第四步:核对节点协议参数与配置兼容性

当订阅有效、直连正常、内核也在运行时,再检查节点参数。不要根据节点名称手工猜测协议。应以服务端下发内容为准,重点核对服务器地址、端口、UUID 或密码、传输方式、TLS、SNI、ALPN 和 Reality 参数。

容易造成超时的参数差异

旧版 Clash 内核不认识部分新字段时,可能在载入配置阶段直接报错,也可能跳过不兼容节点。遇到配置包含 Reality、Hysteria2、TUIC 等类型时,应确认客户端使用支持对应协议的 mihomo 版本。版本过旧时,优先通过客户端内置的「设置」→「内核」→「更新内核」完成更新,并在更新后重新载入配置。

如果日志中出现 unsupported proxy typefield not found 或配置解析失败,问题发生在配置载入层,还没有进入节点连接层。此时反复延迟测试没有意义,应先处理内核兼容性或订阅格式。

健康检查超时不等于所有网站都不可用

客户端延迟测试通常访问指定 URL,例如返回 HTTP 204 的轻量页面。测试地址可能被节点出口、DNS 或当前网络单独限制。可以把测试 URL 临时换成另一个稳定的 HTTPS 地址进行交叉验证,但不要用大文件下载地址作为健康检查,否则会增加流量和测试时间。

判断节点是否真能使用,应同时看三项:健康检查延迟、日志中的连接结果、实际网页请求。单次 5000 ms 超时只能说明该测试在限定时间内没有完成。连续三次超时,并且实际请求也失败,才更接近节点或线路故障。

第五步:检查系统代理、TUN 与 DNS 所在层

系统代理模式

系统代理模式主要接管遵循系统代理设置的应用。先进入客户端「设置」→「系统代理」,关闭后再开启一次,并核对代理地址是 127.0.0.1、端口与 mixed port 一致。浏览器扩展、其他代理软件和手工 PAC 配置可能覆盖系统设置,排查时应暂时停用这些额外入口。

若节点测试正常,但只有某个应用无法联网,故障通常不在节点。检查该应用是否读取系统代理,或者是否自行指定了代理端口。可先用浏览器验证,再与故障应用对比。

TUN 模式

TUN 模式通过虚拟网络接口接管更多流量,通常需要管理员权限。开启失败时,客户端日志可能出现 interface、route、permission 或 device 相关错误。Windows 可用管理员权限启动客户端;macOS 首次启用时需要批准网络扩展或 VPN 配置。若系统内还有其他 VPN,先完全退出,避免路由表和虚拟网卡冲突。

排查 TUN 时使用二分法:关闭 TUN,仅开启系统代理。如果浏览器恢复,节点本身可用,问题集中在 TUN 权限、路由或 DNS;如果两种模式都超时,继续查看节点与线路层。

DNS 异常的识别方法

节点延迟正常,但输入域名打不开;直接访问已知 IP 却有响应,这类现象应检查 DNS。mihomo 配置中常见 dns.enablenameserverfallbackfake-ip 等字段。不要在不理解原配置的情况下同时改动全部 DNS 项。

dns:
  enable: true
  listen: 0.0.0.0:1053
  enhanced-mode: fake-ip
  nameserver:
    - 1.1.1.1
    - 8.8.8.8

端口 1053 也必须未被占用。若使用 TUN 与 fake-ip,关闭 TUN 后应重新测试,避免旧路由和缓存干扰。Windows 可执行 ipconfig /flushdns 清理系统 DNS 缓存;macOS 可在重启网络或系统后复测。清缓存只是辅助动作,不能修复错误的上游 DNS 配置。

第六步:最后再换节点,并用日志确认结论

前面公共环节均正常后,才进入换节点阶段。先在同一地区选择 2 至 3 个不同节点,每个节点连续测试三次,间隔约 10 秒。不要一次测试几十个节点,因为并发健康检查可能触发网络限速,也会让日志难以阅读。

  1. 选择节点 A,测试延迟并打开一个实际网页。
  2. 选择同地区节点 B,重复相同操作。
  3. 切换到另一地区节点 C,判断是否为地区线路问题。
  4. 再切换手机热点,保留一组不同网络的对照结果。

如果节点 A、B 在家庭宽带超时,在手机热点正常,结论偏向当前运营商路径。如果同一节点在两种网络都超时,而同订阅其他节点正常,结论偏向节点服务器或端口。如果所有地区在两种网络都超时,则应回到订阅和协议参数层重新核对。

日志里看哪些关键词

日志级别先用 info。只有在信息不足时短暂切换到 debug,复现一次后恢复。分享日志前应移除订阅地址、UUID、密码、令牌、服务器凭据和个人网络信息。

常见误判与最快处理路径

误判一:看到 timeout 就立即重装

重装只能重置客户端文件,无法修复订阅到期、服务器离线、运营商线路和系统时间错误。还可能丢失原有日志,使问题更难定位。应先导出必要配置,再完成基础分层检查。

误判二:延迟数字越小就一定能连接

延迟测试只反映特定测试请求。40 ms 的健康检查不保证目标网站一定可访问,也不保证规则把请求发到该节点。网页失败时进入连接日志,确认域名命中了哪条规则、进入哪个策略组、最终选择了哪个节点。

误判三:只切换策略组,不确认实际选择

规则模式下,请求先匹配规则,再进入指定策略组。手工切换了名为「节点选择」的组,但目标域名可能命中另一个「自动选择」组。日志中应能看到类似 DOMAIN-SUFFIX、MATCH 等规则结果。排查时可临时使用全局模式做交叉测试,但测试完成后应恢复原来的规则模式。

十分钟分诊清单

  1. 第 1 分钟:确认全部超时还是个别超时。
  2. 第 2 分钟:查看订阅到期时间、剩余流量和更新时间。
  3. 第 3 分钟:关闭代理与 TUN,验证直连网络。
  4. 第 4 分钟:切换手机热点做网络对照。
  5. 第 5 分钟:同步系统时间并重启内核。
  6. 第 6 分钟:核对 7890 等本地端口是否被占用。
  7. 第 7 分钟:查看日志中的第一条错误。
  8. 第 8 分钟:核对协议、TLS、SNI 和传输参数。
  9. 第 9 分钟:关闭 TUN,仅用系统代理复测。
  10. 第 10 分钟:选择不同地区节点做最终交叉测试。

这套顺序的核心是先查所有节点共享的环节,再查单个节点。全部超时优先处理订阅、网络、内核和端口;个别超时优先处理节点服务器、协议参数与线路。每一步保留测试结果,下一次出现同类故障时就能直接跳到对应层。

下载 Clash 客户端Windows · macOS · Android · iOS · Linux