一、故障定位五步标准流程(SOP)

遇到网络异常时,请按顺序执行以下五步,可在 90% 的场景下精准找出故障源头:

  1. 第一步:检查本地物理网卡与宽带。 关闭代理软件,直接访问国内大型网站(如 bilibili.com 或 baidu.com),确认本地宽带是否正常联网。
  2. 第二步:核对系统时间精准度(精确到秒)。 这是最常见却最易被忽略的盲区。加密通信(VMess、Trojan、Reality、Hysteria 2)均强制校验时间戳,偏差超过 60 秒将导致握手无条件被服务端丢弃。
  3. 第三步:在客户端内发起真实 URL-Test 测速。 点击节点测速,查看是否有节点返回数字延迟。若全部显示 Timeout,说明前置握手失败;若个别节点有延迟,说明是单节点故障。
  4. 第四步:检查系统代理开关与端口监听。 确认 Windows/macOS 系统代理设置指向的本地 IP 是否为 127.0.0.1,端口是否与客户端一致(默认 7890)。
  5. 第五步:查阅客户端实时日志(Logs)。 打开 Clash 的日志面板,搜索红色 [ERROR] 或 [WARNING] 关键字,查看具体错误堆栈。

二、高频故障深度排查与修复方案

故障一:节点测速全部超时,提示 Handshake Timeout

💡 根因:系统本地时钟漂移

由于主板电池老化或双系统切换(Windows 与 Ubuntu 双系统时间不同步),本地时钟比国际原子时钟慢了数分钟。

修复方法: 在 Windows 设置中搜索“时间和语言” → “日期和时间” → 点击“立即同步(Sync now)”。确认时钟同步成功后,重启 Clash 客户端即可瞬间连通。

故障二:开启客户端后提示 Port 7890 Listen Failed

这是典型的端口占用冲突。开发者电脑上常运行 Docker 容器、WSL 子系统或抓包工具(Charles、Postman),抢先占用了 7890 端口。

修复方法: 打开命令行终端,执行 netstat -ano | findstr 7890 查看占用该端口的进程 PID,并在任务管理器中将其结束;或者直接在 Clash 设置中将混合代理端口(Mixed Port)修改为其他空闲端口,如 7898。

故障三:能打开网页,但命令行终端无法下载依赖(npm / pip / git)

系统代理(System Proxy)默认仅接管支持系统代理 API 的图形软件(如 Chrome、Edge、Slack),而终端 CLI 工具通常不会自动读取系统代理。

修复方法: 在 Clash Verge Rev 中开启 TUN 模式,利用虚拟网卡在网络层无差别捕获所有进程的流量;或者在终端中手动临时注入环境变量:

# PowerShell 临时代理设置
$env:HTTP_PROXY="http://127.0.0.1:7890"
$env:HTTPS_PROXY="http://127.0.0.1:7890"

🎮 选用稳定少故障的 glados 网络加速

自动化线路监控与故障自愈,减少 95% 令人头疼的网络中断与重连。

获取专属接入凭证 →

三、DNS 污染防范与 Fake-IP 模式解析

在加速场景中,最棘手的问题之一是 DNS 污染(即查询被境外拦截的域名时,本地运营商 DNS 返回虚假错误的 IP)。

在 Clash 体系中,推荐将 DNS 模式配置为 fake-ip 模式:

  • 客户端在本地拦截应用的 DNS 解析请求,立刻返回一个保留网段的伪造 IP(如 198.18.0.x);
  • 应用程序拿到该伪造 IP 后建立 TCP 连接,流量进入本地 Clash 内核;
  • 内核在内部将该伪造 IP 还原为原始目标域名,通过远端加密节点完成真实的远端 DNS 查询。

这种机制从根本上杜绝了本地 DNS 污染,同时节省了本地等待 DNS 回包的时间,极大加速了网页首屏开启速度。

说明书常见问题 (FAQ)

这是因为在退出软件前,没有正常关闭“系统代理”开关,导致系统网络设置里依然挂着指向 127.0.0.1:7890 的代理服务,而此时 Clash 已经停止监听。只需进入系统“代理设置”,将手动代理开关重置为“关”即可恢复。
说明该内部域名被误判走了代理节点,导致境外 IP 被安全系统拦截。请检查分流规则,在自定义规则中添加 DOMAIN-SUFFIX,your-bank.com,DIRECT 即可强制直连访问。