Clash 常见问题与故障排查
覆盖内核、订阅、节点、系统代理、TUN、DNS 与 Windows 回环限制。先确认故障发生在哪一层,再修改对应设置。
基础认知
先分清内核、客户端、订阅和代理模式。概念混在一起时,故障往往会被归到错误的位置。
Clash、mihomo 内核和图形客户端是什么关系?
mihomo 是负责读取配置、建立代理连接、执行规则分流与处理 DNS 的内核。Clash Plus、Clash Verge Rev、FlClash 等图形客户端在内核外提供订阅管理、节点选择、日志查看和系统代理开关。排查问题时应区分界面故障与内核报错:界面能打开不代表内核已经启动,内核启动成功也不代表系统流量一定进入了代理。
订阅链接从哪里获得,客户端会自动提供节点吗?
客户端本身不生成订阅链接,也不内置可用节点。订阅地址通常由所使用的网络服务提供方给出,并由其负责账户状态、线路与流量额度。导入前应确认复制的是完整订阅地址,而不是网页地址、订单编号或单个节点名称。涉及订阅续费、账户停用和线路维护的问题,需要向对应服务提供方确认。
规则、全局和直连模式应该选择哪个?
日常使用通常选择规则模式,流量会按照配置中的规则自上而下匹配,并分别进入代理、直连或拒绝策略。全局模式会把大部分连接交给当前选定的代理节点,适合临时判断规则是否导致访问异常。直连模式主要用于暂停代理效果或对照测试。切换模式不会修复失效节点,也不会自动改变订阅中的规则内容。
系统代理与 TUN 模式有什么区别?
系统代理通过操作系统的 HTTP 或 SOCKS 代理设置接管愿意遵循该设置的程序,配置简单,适合浏览器和常见桌面软件。TUN 模式会创建虚拟网络接口,在更低层处理流量,可覆盖不读取系统代理的应用、部分游戏和命令行工具,但通常需要管理员权限,并可能与其他 VPN、虚拟网卡或安全软件发生冲突。
安装配置
订阅导入、配置解析和端口监听发生在连接之前。这里的错误应先处理,节点测试才有参考意义。
导入订阅后为什么没有任何节点?
先进入配置或订阅页面手动执行更新,并查看更新结果而不是只观察节点页。若仍为空,检查链接首尾是否带有空格、复制内容是否完整、订阅是否过期,以及当前网络能否访问订阅地址。也可能是服务端返回了登录页、错误页面或空配置。不要把网页控制台地址直接当作订阅地址导入,两者通常不是同一个链接。
订阅更新失败或提示连接超时怎么办?
先在浏览器中打开订阅地址,确认它能返回配置内容或触发下载。若浏览器也无法访问,应检查网络、账户状态和服务端可用性。若浏览器可访问而客户端失败,暂时关闭系统代理与 TUN 后重试,避免更新请求被旧配置循环转发;再核对客户端时间、代理端口和证书相关报错。保留日志中的状态码与错误行,便于判断是超时、拒绝连接还是鉴权失败。
配置文件提示 YAML 解析错误如何定位?
YAML 依赖缩进表达层级,应使用空格并保持同一层级的缩进宽度一致,不能用制表符代替。先查看日志标出的行号,再从该行向上检查缺少冒号、列表项短横线位置错误、引号未闭合和重复键名等问题。手动修改前保留原文件副本;如果错误来自订阅更新,应重新下载配置,不要在大段生成内容中逐行猜测。
启动时出现 address already in use 或端口被占用怎么办?
这表示 mixed-port、port、socks-port 或控制端口已被其他进程监听。先退出重复运行的 Clash 客户端,再检查任务管理器或系统进程中是否仍有残留内核。Windows 可用 netstat -ano 查找监听端口的进程编号,macOS 与 Linux 可用 lsof -i 查看占用者。确认无法释放后,再把配置中的监听端口改为未使用的值,并同步更新需要手动填写代理端口的应用。
使用技巧
节点可用只是起点。流量是否经过内核,还取决于应用代理方式、系统权限、DNS 与规则匹配结果。
节点全部显示超时,应该先检查什么?
先更新订阅并确认本机基础网络正常,再只测试一个节点,避免并发测试造成误判。检查系统时间是否准确,因为时间偏差可能导致 TLS 连接失败;随后切换不同网络,例如从公司网络改用手机热点,以排除局域网限制。如果所有节点在不同网络下都超时,问题更可能来自订阅线路或账户状态;如果只有部分节点超时,可直接避开这些线路。
已开启系统代理,但浏览器仍然直连怎么办?
先确认客户端内核处于运行状态,当前策略组已经选择可用节点,并检查操作系统代理地址是否指向本机与正确端口。浏览器中的代理扩展、企业策略或手动代理设置可能覆盖系统代理,应暂时停用后重新测试。也可访问一个显示出口地址的页面作对照,但不要只依据客户端按钮状态判断。若浏览器明确忽略系统代理,可改用其独立代理设置或评估 TUN 模式。
开启 TUN 模式时提示权限不足如何处理?
TUN 需要创建虚拟网络接口并调整路由,因此 Windows 通常要以管理员身份启动客户端,macOS 可能要求输入系统密码并批准网络扩展,Linux 则需要相应网络管理权限。授权后仍失败,应检查旧版虚拟网卡、其他 VPN、容器网络和安全软件是否占用接口。先关闭冲突程序再重启客户端,不要同时开启多个会修改默认路由的工具。
Fake-IP 导致局域网设备或特定网站异常怎么办?
Fake-IP 会为域名返回映射地址,再由内核还原域名并执行规则。依赖真实 DNS 结果的局域网服务、打印机发现、企业内网或少数应用可能因此异常。先确认问题只在 Fake-IP 模式出现,再把相关域名加入 fake-ip-filter,或为局域网域名设置直连 DNS 与直连规则。不要直接加入过宽的通配范围,否则会削弱域名规则匹配并增加 DNS 泄漏风险。
故障排查
从基础网络到应用入口逐层缩小范围。一次只改变一个变量,日志中的首个错误通常比后续连锁报错更有价值。
Clash 已连接但所有网页都无法打开怎么办?
按链路逐层检查:先关闭代理确认基础网络可用,再启动内核但不启用系统代理,随后选择一个已通过测试的节点,最后开启系统代理或 TUN。若开启代理后立刻断网,查看日志中是 DNS 失败、连接被拒绝还是规则进入了错误策略组。还应确认监听端口未冲突、配置已经成功加载,并暂时停用其他 VPN。逐步启用比反复重装更容易定位故障所在。
Windows UWP 或商店应用不走 Clash 代理怎么办?
部分 UWP 应用受 Windows 回环限制影响,不能直接访问监听在本机回环地址上的代理,因此浏览器正常而商店应用连接失败。可在客户端提供的 UWP 回环工具中勾选目标应用并保存豁免,或使用 Windows 的 CheckNetIsolation 机制处理对应包。完成后完全退出并重新打开应用。若使用 TUN 后应用已能联网,通常不需要再重复设置回环豁免。
浏览器可以访问,但命令行、游戏或其他应用不能联网怎么办?
这通常说明浏览器读取了系统代理或安装了代理扩展,而其他程序没有采用同一设置。命令行工具可能需要单独设置 HTTP_PROXY、HTTPS_PROXY 或 SOCKS 地址,游戏和部分桌面程序则可能只支持直连。先查看应用自身是否有代理选项;没有时可使用 TUN 接管流量。还要检查规则是否把该程序访问的域名或 IP 误分到直连或拒绝策略。
电脑休眠或切换网络后代理失效如何恢复?
休眠唤醒、Wi-Fi 切换和有线网络重连会改变接口、DNS 与默认路由,TUN 或系统代理可能保留旧状态。先关闭系统代理与 TUN,等待网络恢复,再重新启用;仍无效时重启内核而不是只关闭窗口。检查当前配置是否仍被选中,并重新测试节点。频繁发生时,应更新客户端并避免多个网络管理工具同时接管路由,也可在唤醒后手动刷新订阅与 DNS。