Clash 节点超时无法连接:从客户端设置到本机网络的排查顺序

节点测速全部超时或单个节点连不上,先分清是客户端配置、节点本身还是本机网络的问题;给出一条从系统代理、DNS、协议参数到防火墙的固定排查路径。

先判断是哪一种“超时”

Clash 显示超时,不等于问题一定发生在节点服务器。测速请求需要依次经过客户端内核、域名解析、本机网络、节点入口和测试网址,其中任何一步没有在限定时间内返回,都可能显示 Timeout。先缩小范围,再修改设置,比反复更新订阅更有效。

现象 优先怀疑 第一项检查
所有节点同时超时 内核未运行、入口域名无法解析、本机网络或防火墙拦截 检查内核状态与直连网络
只有一个节点超时 节点离线、端口关闭或单条协议参数错误 同订阅切换其他节点
测速超时但网页能打开 延迟测试地址不可达或测试超时时间过短 查看实际连接记录
浏览器可用,其他应用不可用 系统代理覆盖范围、应用绕过代理或 TUN 未接管 核对系统代理与 TUN 模式
开启 TUN 后全部断网 虚拟网卡、路由、DNS 劫持或权限问题 关闭 TUN,恢复基础代理测试

用对照测试区分节点问题与本机问题

  1. 保持当前订阅不变,连续测试至少 3 个不同地区、不同入口的节点。
  2. 关闭 Clash 的系统代理与 TUN,直接打开一个平时可访问的网站,确认基础网络正常。
  3. 重新启动 Clash 内核,只开启系统代理,再测试浏览器访问。
  4. 将同一订阅临时导入另一台设备或另一条网络,例如手机热点,比较结果。

如果同一节点在家庭宽带超时、手机热点可用,问题更可能位于本机、路由器或当前网络出口。如果多台设备、不同网络都只有同一个节点失败,而同订阅其他节点正常,通常应将范围收敛到该节点的入口、端口或协议参数。

第一步:确认客户端内核、配置与代理端口

排查全部节点超时时,先确认 Clash Meta(mihomo)内核已经成功启动。图形界面能够打开,不代表内核正在监听端口。若日志出现 address already in useconfiguration file test failed 或持续重启,应先处理端口冲突和配置错误。

检查内核状态与当前配置

以 Clash Verge Rev 2.4.2 的常见界面为例,可在「设置」→「Clash 设置」查看当前内核与端口,在「订阅」中确认正在使用的配置。不同客户端的名称可能是「内核」「配置」或「Profiles」,判断标准一致:配置处于启用状态,内核状态为运行中,日志没有循环报错。

  • Mixed Port:常见值为 7890,同时接受 HTTP 与 SOCKS5 请求。
  • HTTP Port:旧配置中常见 7890
  • SOCKS Port:旧配置中常见 7891
  • External Controller:常见监听地址为 127.0.0.1:9090,它是控制接口,不是应用代理端口。

不要把浏览器代理填写成控制端口 9090。如果配置只声明 mixed-port: 7890,浏览器或系统代理应指向 127.0.0.1:7890。修改端口后,还要同步更新系统代理、浏览器扩展和其他手动设置。

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

排除端口占用

Windows 可在 PowerShell 中检查 7890 端口是否已有进程监听:

Get-NetTCPConnection -LocalPort 7890 -ErrorAction SilentlyContinue
Get-Process -Id (Get-NetTCPConnection -LocalPort 7890).OwningProcess

macOS 与 Linux 可使用:

lsof -nP -iTCP:7890 -sTCP:LISTEN
ss -lntp | grep 7890

如果旧版 Clash、其他代理工具或残留后台进程占用同一端口,应先退出冲突程序,再重启当前客户端。不要同时让两个程序写入系统代理,否则界面显示的端口与操作系统实际使用的端口可能不一致。

第二步:从系统代理缩小到 TUN 模式

基础排查应先使用系统代理,不要一开始就开启 TUN。系统代理链路更短,便于确认节点是否能够建立连接。以 Clash Verge Rev 2.4.2 为例,进入「设置」→「系统设置」→「系统代理」,开启后检查系统代理服务器是否为 127.0.0.1,端口是否与 Mixed Port 一致。

浏览器正常但应用仍直连

系统代理只对主动读取操作系统代理设置的应用生效。部分游戏、命令行工具、虚拟机和使用自有网络栈的软件会忽略系统代理。此时浏览器可以正常访问,并不能说明所有应用都已被接管。

  • 先在 Clash 的「连接」面板中搜索目标域名或进程。
  • 看不到任何记录,通常表示流量没有进入 Clash。
  • 能看到记录但状态反复为连接中,继续检查节点入口与 DNS。
  • 记录显示 DIRECT,应检查规则命中结果,而不是更换节点。

TUN 开启后全部超时

TUN 模式通过虚拟网卡和路由规则接管更多流量。Windows 通常需要管理员权限与可正常加载的虚拟网卡驱动;macOS 首次启用时需要批准网络扩展;Linux 则需要 /dev/net/tun 与相应网络管理权限。

如果关闭 TUN 后系统代理可用,说明节点本身大概率正常。此时应单独排查 TUN,而不是继续修改订阅。按以下顺序恢复:

  1. 关闭 TUN,退出客户端,确认系统网络恢复。
  2. 重新启动客户端,先验证 Mixed Port 代理可用。
  3. 以所需权限启动客户端,再开启 TUN。
  4. 检查是否同时运行 VPN、虚拟机桥接、流量过滤器或另一套 TUN 软件。
  5. 若出现域名打不开但 IP 可访问,转入 DNS 排查。

第三步:检查 DNS 与节点入口域名

节点地址既可能是 IP,也可能是域名。使用域名作为服务器地址时,Clash 必须先通过本地解析器或配置中的默认解析器获得入口 IP。如果入口域名解析失败,所有依赖同一入口的节点会一起超时,即使代理协议参数完全正确。

先在操作系统层检查解析

Windows 可执行:

nslookup node.example.com
Resolve-DnsName node.example.com

macOS 或 Linux 可执行:

dig node.example.com
nslookup node.example.com

node.example.com 应替换为配置中节点的实际 server 值。如果返回 NXDOMAIN、超时或没有 A/AAAA 记录,应先确认订阅中的入口域名是否仍有效。若多个失败节点共用一个入口域名,这项检查尤其重要。

区分入口解析与代理内 DNS

Clash 的 DNS 配置既负责应用域名解析,也可能参与节点入口解析。mihomo 配置中的 default-nameserver 主要用于解析 DNS 服务器自身及节点入口等基础目标,通常应填写可直接访问的 IP 形式 DNS 地址,避免形成“需要代理才能解析代理入口”的循环依赖。

dns:
  enable: true
  listen: 127.0.0.1:1053
  enhanced-mode: fake-ip
  default-nameserver:
    - 1.1.1.1
    - 8.8.8.8
  nameserver:
    - https://1.1.1.1/dns-query

这段内容只用于说明配置层级,并不表示每个网络都适合相同解析器。企业网、校园网或带有内网域名的环境,可能必须保留局域网 DNS。修改前应保存原配置,修改后重新载入,并观察日志中是否出现 lookupno such host 或 DNS 请求超时。

如果只有 IPv6 入口失败,可暂时验证当前网络是否具备可用 IPv6 路由。解析得到 AAAA 记录不代表本机一定能连接 IPv6。不要长期依赖随意关闭 IPv6 来掩盖问题,应进一步确认路由器、运营商链路和节点入口实际支持情况。

第四步:单个节点超时时核对协议参数

只有一个节点失败,而同订阅其他节点可用时,本机系统代理和基础 DNS 通常没有大问题。重点应转向该节点的服务器地址、端口与协议字段。重新导入订阅可以排除手工编辑造成的字段丢失,但不能修复服务器离线或订阅源本身的数据错误。

协议或传输 重点字段 常见错误表现
Shadowsocks server、port、cipher、password 加密方式或密码不一致,连接建立后立即失败
VMess uuid、alterId、cipher、network、tls UUID、传输层或 TLS 设置不匹配
VLESS uuid、flow、servername、network SNI、flow 或传输方式错误
Trojan password、servername、skip-cert-verify 证书名称与 SNI 不一致
WebSocket path、Host 请求头、TLS 路径或 Host 不一致,握手被拒绝
gRPC service-name、servername、TLS 服务名不一致或中间网络不支持
Reality servername、public-key、short-id、fingerprint 握手参数不匹配,日志出现 TLS 相关错误

不要凭经验随意切换 tlsudpskip-cert-verify。这些字段必须与服务端配置对应。尤其不应把跳过证书验证当作通用修复手段;它可能让错误暂时隐藏,却无法解决 SNI、证书期限或系统时间不正确的问题。

检查本机时间

TLS 握手依赖准确时间。Windows 可进入「设置」→「时间和语言」→「日期和时间」,启用自动设置时间并执行立即同步。macOS 可进入「系统设置」→「通用」→「日期与时间」,开启自动设定。系统时间偏差数分钟就可能导致证书尚未生效或已经过期的判断。

确认节点端口能否到达

Windows PowerShell 可针对节点服务器与端口执行 TCP 探测:

Test-NetConnection node.example.com -Port 443

macOS 或 Linux 可使用:

nc -vz node.example.com 443

TCP 测试成功只说明入口端口可建立连接,不代表 UUID、密码、TLS 或传输参数正确。测试失败则可能是服务器未监听、入口地址失效、防火墙丢弃或当前网络限制。部分 UDP 协议也不能用 TCP 探测直接判断,需要结合内核日志与其他网络对照测试。

第五步:排查防火墙、路由器与当前网络

当所有节点都失败,且配置能在另一台设备上正常使用时,应检查本机安全策略。Windows 防火墙可能允许图形界面联网,却阻止实际运行的 mihomo 内核;第三方安全软件也可能按进程路径建立规则,客户端升级后内核文件路径变化,旧放行规则不再匹配。

Windows 检查顺序

  1. 打开「Windows 安全中心」→「防火墙和网络保护」→「允许应用通过防火墙」。
  2. 确认当前 Clash 客户端与 mihomo 内核在正在使用的网络类型下获得访问权限。
  3. 进入「设置」→「网络和 Internet」→「代理」,检查是否残留失效的手动代理。
  4. 退出其他 VPN、代理与网络过滤程序,再重新启动 Clash。
  5. 使用手机热点复测,判断问题是否只出现在当前路由器或宽带。

临时关闭防火墙只能作为短时间对照测试。确认是规则导致后,应恢复防火墙并为实际内核程序建立明确规则,而不是长期保持关闭状态。

路由器与网络出口

路由器的家长控制、访客网络隔离、企业出口 ACL、公共 Wi-Fi 认证页都可能影响节点连接。先打开普通 HTTP 与 HTTPS 网站,确认认证流程已经完成。若连接手机热点立即恢复,可依次检查路由器 DNS、IPv6、MTU、访问控制和上游网络限制。

MTU 问题常表现为 TCP 能建立、TLS 或大数据包阶段卡住。TUN 环境下若小网页偶尔可开、图片和下载长期停滞,可将 MTU 作为后续检查项,但不应在没有对照结果时随意修改。先记录原值,再按客户端支持的配置逐步调整,每次变化控制在较小范围。

日志怎么读:用错误关键词定位阶段

将日志级别暂时设为 info 通常已经足够。只有需要追踪规则与握手细节时再短时使用 debug,完成后恢复,避免日志快速增长。复现问题时记录准确时间、节点名称和目标域名,再搜索同一时间附近的信息。

日志关键词 含义方向 下一步
no such host 域名解析失败 检查入口域名与 DNS
i/o timeout 限定时间内没有完成网络操作 检查入口可达性、防火墙与网络对照结果
connection refused 目标主机明确拒绝连接 检查服务器端口与节点状态
network is unreachable 本机没有对应路由 检查 IPv4、IPv6、TUN 与默认路由
certificate TLS 证书校验异常 检查系统时间、servername 与证书状态
address already in use 本地监听端口冲突 结束占用进程或更换端口

i/o timeout 只是结果,不直接指出责任方。必须结合它前面的目标地址判断:如果超时目标是节点入口,检查节点和本机出口;如果目标是 DNS 服务器,检查解析链路;如果只在延迟测试网址出现,而其他连接正常,则应检查测速地址。

固定排查顺序与恢复标准

完整流程可以压缩成八步。按顺序执行,并在每一步记录结果:

  1. 确认直连网络:关闭系统代理与 TUN,验证基础网络正常。
  2. 确认内核运行:检查配置加载、端口监听与启动日志。
  3. 只开系统代理:使用 127.0.0.1:7890 等实际 Mixed Port 测试。
  4. 横向测试节点:比较至少 3 个节点,区分单节点与全局故障。
  5. 检查入口解析:查询节点域名,核对 IPv4、IPv6 和 DNS 日志。
  6. 核对协议字段:只针对单节点检查端口、TLS、SNI 与传输参数。
  7. 更换网络复测:使用手机热点区分本机、路由器与当前出口。
  8. 最后恢复 TUN:基础代理稳定后,再检查虚拟网卡、路由与 DNS 接管。

恢复标准不只是节点延迟出现数字。至少应同时满足:客户端内核稳定运行;网页请求出现在连接面板;规则命中符合预期;连续打开多个目标没有间歇超时;切换节点后新连接使用新的策略。若只恢复测速而实际连接仍失败,排查还没有结束。

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