1. 根因剖析一:旧 Token 被注销(重置订阅遗忘症)
这是发生 404 错误最常见的场景:
- 用户前几天在机场用户中心因为怀疑泄露而点击了「重置订阅链接」;
- 机场数据库在执行重置操作的瞬间,**已将旧 Token 的哈希记录从 Redis 缓存中永久删除**;
- 但用户忘记在电脑上的 Clash 客户端中更新配置 URL;
- 客户端在后台定时发起静默更新时,API 服务器查无此 Token,严格遵照 REST 规范返回 `404 Not Found`。
### 解决步骤:
登录机场官网 -> 用户中心 -> 复制最新的完整订阅链接 -> 打开 Clash Verge Rev -> 粘贴覆盖旧 URL -> 点击保存刷新。
💡 重置 Token 后,必须将手机、电脑、软路由上所有设备的订阅 URL 全部更新一遍。
2. 根因剖析二:机场下发域名被墙与 DNS 污染
由于监管审查,机场的订阅分发域名生命周期通常较短:
- 当某个订阅域名被骨干网列入阻断黑名单后,国内运营商 DNS 查询该域名会返回不存在(NXDOMAIN)或虚假 IP;
- 客户端向错误的 IP 发起 HTTP 请求,目标服务器找不到对应的 API 资源,抛出 404 或直接握手超时;
- **验证方法**:在手机 4G/5G 移动蜂窝网络下尝试打开该订阅链接,如果手机能正常下载而电脑报错,证明是本地运营商 DNS 污染。
bash
# Linux/Windows 终端使用 dig 查询订阅域名是否解析到了异常 IP
dig sub.your-airport-domain.com +short 3. 代理回环死锁导致的假性 404
当电脑当前正在开启「系统代理」或「TUN 模式」时:
- 客户端更新订阅的请求被操作系统拦截,并根据当前规则**强行送入了当前正在运行的代理节点**;
- 如果当前代理节点恰好已经失效、或者节点所在机房的出口 IP 被机场后端的防刷防火墙拉黑;
- 就会出现「开着代理更新报 404 / 500,关了代理反而能正常更新」的滑稽回环死锁现像。
### 应急解法:
临时将客户端的「系统代理」开关关闭,再点击订阅卡片右侧的刷新按钮。
❓ 常见疑问与排查步骤
404 报错代表机场跑路了吗?
绝大多数情况下不是跑路。通常是机场正在更换被污染的订阅域名,或者你的 Token 已经重置。登录机场官网查看最新公告即可明确真相。
为什么官网能正常登录,但订阅依然报 404?
机场的官网登录域名与订阅下发 API 域名通常在物理上完全分离,官网正常并不代表订阅 API 域名没有受到阻断。
可以在浏览器里直接下载配置文件再导入吗?
完全可以。在浏览器打开订阅链接,另存为 .yaml 文件,然后在客户端选择「从本地文件导入(New Profile -> Local)」,同样能恢复使用。