通用准备:客户端、订阅与接管方式
先分清界面、内核和配置
Clash 通常指一类基于规则的代理工具,实际安装时需要选择具体客户端。客户端负责提供界面、管理配置和申请系统权限;内核负责接收连接、解析域名并执行分流。mihomo 是这一生态中的内核之一。界面能正常打开,不等于内核已经启动;出现节点列表,也不代表系统流量已经交给代理。
普通设备优先从 Clash Plus 开始;需要其他界面或功能时,再参考下载中心的平台列表。不要把多个客户端同时设为接管网络,它们可能争用本地端口、系统代理或虚拟网卡。迁移时先记录原客户端的端口和接管方式,退出旧客户端,再启用新的客户端,便于判断变化来自哪里。
配置文件通常使用 YAML 格式,内容可能包含节点、策略组、规则和 DNS。不同客户端支持的导入格式并不完全相同,不能只看文件扩展名判断兼容性。遇到加载失败,先看日志提示的是语法错误、字段不支持,还是下载请求失败,再决定修改文件还是更换订阅格式。
准备订阅并保护访问凭据
客户端本身不等于可用的代理服务。开始前应准备自己有权使用的订阅地址或本地配置,确认服务仍在有效期内。复制地址时使用订阅提供方的复制按钮,避免把网页说明、换行或尾部空格一起带入。只有节点分享链接时,先确认客户端是否支持该格式,不能直接把任意网页地址作为订阅导入。
订阅链接可能携带访问凭据,应按密码处理。排查时只描述错误类型,不在公开评论区粘贴完整地址,也不要上传带真实节点密码的配置。需要求助时,删除订阅参数、服务器地址及认证信息,保留字段名、缩进和错误行附近的结构。处理订阅转换前,请先阅读订阅转换说明。
导入成功后先确认当前配置已选中,再检查策略组中是否存在可选节点。有些客户端把下载配置和激活配置分成两个动作;更新按钮成功,只能说明文件取回来了。若新配置加载失败,客户端也可能仍沿用上一份配置,需结合当前配置名称与日志确认,不能仅凭成功提示判断。
选择系统代理或 TUN,避免重复接管
系统代理通常让遵循系统代理设置的应用连接本地监听端口,适合先验证浏览器访问。TUN 通过虚拟网络接口接收更多类型的连接,还涉及路由和 DNS。它们不是简单的高低级关系:系统代理足够满足需求时,可以先保持较少的接管范围;某些应用不遵循系统代理,再考虑 TUN。
| 接管方式 | 主要范围 | 先检查什么 |
|---|---|---|
| 系统代理 | 遵循系统代理设置的应用 | 本地端口、应用自身代理设置 |
| TUN | 由虚拟接口与路由接收的连接 | 系统授权、路由排除、DNS |
| 应用单独配置 | 指定浏览器、终端或其他程序 | 代理协议、地址与端口 |
安装前暂时退出其他 VPN 和代理软件,尤其是会修改默认路由的工具。办公设备还可能受组织策略限制,不应绕过管理要求。若网络原本就需要网页登录认证,应先完成认证,再启用代理;否则订阅请求可能得到认证网页,而不是预期的配置文件。
用同一套顺序完成首次验证
先启动内核,导入并激活配置,选择规则模式,再选一个明确的节点,最后开启一种接管方式。打开客户端的连接页,访问一个已知目标,查看是否出现对应连接及规则记录。验证时每次只改一项设置,并保留原值;同时更换节点、DNS 和模式,会让成功或失败都难以归因。
Windows:安装、服务模式与系统代理
按架构选包,完成首次启动
进入Windows 下载区,首选 Clash Plus,也可以按需要选择 Clash Verge Rev、FlClash 或 Clash Nyanpasu。Clash for Windows 已停止维护,归档包适合处理旧环境迁移,不宜作为新设备的默认选择。界面名称相近不代表配置目录相同,切换客户端前应导出必要设置。
在系统设置的“系统—系统信息”中查看系统类型,区分处理器架构与操作系统位数。下载页未提供适合本机的构建时,不要靠改文件名尝试安装。运行安装程序后,按提示选择目录,首次启动先保持普通用户权限;只有安装系统服务、驱动等明确要求提升权限的操作,才接受授权。
防火墙提示出现时,按实际使用范围决定是否放行。仅供本机使用的代理不需要为其他设备开放局域网入口。家庭设备确实要共享代理时,再检查网络类型、监听地址和防火墙范围。不要为了让程序启动就关闭整套防火墙,这会扩大与故障无关的网络访问权限。
导入订阅并检查配置是否生效
打开配置或订阅页面,使用从地址导入的入口,粘贴完整订阅地址,给它设置容易识别的本地名称。等待下载结束后,选中这份配置,确认策略组里能看到节点。先使用规则模式,再选择一个手动节点,避免首次排查时受到自动策略切换的影响。订阅的具体准备方法见订阅导入指南。
若客户端提示解析失败,打开日志查看报错位置。YAML 的缩进应使用空格,列表项前的短横线也有结构含义。不要把另一种客户端的整份配置直接覆盖进去;某些扩展字段只适用于特定内核。新配置不能加载时,可退回上一份可用配置,再单独处理新文件,避免把故障变成整机断网。
先验证系统代理,再决定是否启用 TUN
在客户端开启系统代理后,到 Windows 的代理设置中核对本地地址和端口。界面可能显示 HTTP 端口,也可能使用混合端口,以当前客户端实际值为准。浏览器能访问而某个应用不能访问时,检查该应用是否自带代理配置,或是否完全忽略系统代理,不要直接认定节点失效。
需要 TUN 时,先按客户端提示安装服务模式或相关网络组件,再打开 TUN 开关。服务安装成功与服务运行中是两个状态;若开关立即回弹,查看日志中是否存在权限、设备创建或路由写入错误。正常启用后,检查连接页是否收到目标应用的请求,而不是只观察系统托盘图标。
部分安全软件会限制虚拟网卡、服务进程或网络过滤操作。应根据明确日志检查对应权限,不必把整个客户端目录加入宽泛排除。若另一个 VPN 正在运行,先退出它再重试。对于公司内网、远程桌面和打印机访问,启用 TUN 前应确认私有网段路由不会被错误接管。
退出后无法上网与端口占用
客户端退出后,若 Windows 仍指向已经停止监听的本地代理,遵循系统代理的应用就会连接失败。先重新启动客户端并关闭系统代理,再检查系统代理设置是否恢复。确实不再使用该代理时,清除遗留的手动代理项;不要顺手删除单位下发的自动配置脚本或原有网络策略。
日志出现监听失败时,检查端口是否被旧客户端占用。以下命令只用于查看示例端口的监听情况;如果实际端口不是这个值,应改为设置页显示的端口。根据进程编号确认所属程序后,优先正常退出冲突程序,而不是直接结束不认识的系统进程。
netstat -ano | findstr :7890
如果浏览器沿用了自己的代理扩展,也可能在系统设置正常时继续走旧端口。测试时暂停扩展,使用默认网络设置,再比较结果。重启电脑只能清掉部分临时状态,不能替代对代理地址、服务状态和配置错误的检查;恢复网络后应记录实际原因,避免下次启动再次出现。
配置自动启动时保留可观察性
先连续完成一次正常启动、连接和退出,再设置开机自启。图形界面、后台服务和自动开启代理可能是独立选项,不要把启动界面误认为已经接管网络。重启登录后核对当前配置与连接记录,尤其注意服务比用户会话更早启动时,是否能读取用户目录中的配置。通用检查见开机自启排查,更完整的平台流程见Windows 安装与防火墙教程。
macOS:安装授权、辅助服务与网络扩展
区分芯片架构与客户端维护状态
在苹果菜单的“关于本机”中确认设备使用 Apple 芯片还是 Intel 处理器,再到macOS 下载区选择对应安装包。首选 Clash Plus,也可以使用 Clash Verge Rev 或 FlClash;ClashX Meta 已停止维护,主要用于旧配置兼容和迁移场景。不要把客户端名称中的 Meta 当作仍在持续维护的证明。
打开磁盘映像后,将应用复制到“应用程序”目录,再从该目录启动。一直从下载目录或映像里运行,可能导致辅助服务路径、自动启动项和升级行为不稳定。若系统提示现有文件冲突,应先退出正在运行的客户端,备份配置,再按正常替换流程处理,不要同时保留多份会自动启动的副本。
首次打开的安全提示应结合来源判断。优先重新取得可信下载,确认文件是否完整下载以及是否与系统兼容。不要直接执行网络上流传的全局关闭系统保护命令。若仍遇到“已损坏”或无法打开提示,按macOS 安装授权说明逐项处理,而不是把所有拦截都当作相同故障。
导入订阅,区分应用权限与配置问题
启动后进入配置管理,添加订阅地址,等待拉取完成并设为当前配置。看到节点后先选择规则模式和一个手动节点。若导入按钮成功但列表为空,检查订阅是否返回了登录页或错误说明,也要确认客户端支持该格式。系统授予网络权限并不会修复订阅语法,两类问题需要分别验证。
客户端可能请求安装辅助工具,以便设置系统代理或执行需要较高权限的网络操作。只接受与当前操作一致的授权提示,并核对应用名称。输入系统账户密码通常是在授权系统修改,不等于把该密码写入订阅。若授权持续循环,检查辅助服务是否安装成功,以及应用是否仍位于原来的安装路径。
钥匙串提示应单独判断:它可能与应用保存或读取敏感设置有关,不能仅因为正在使用代理就一概允许所有请求。若更换过账户密码或迁移过系统,钥匙串状态也可能影响读取。先确认请求来自正在使用的应用,再按系统提示处理,避免把不相关的钥匙串问题误判为节点认证失败。
检查当前网络服务的系统代理
开启系统代理后,在系统设置的网络详情中查看当前使用的网络服务。Wi-Fi、有线网卡及其他连接可能分别保存代理设置;在一个网络下生效,不代表切到另一个网络后仍然一致。使用自动代理脚本的办公环境,应先了解原设置,防止客户端切换时覆盖组织要求的代理入口。
测试时先使用遵循系统代理设置的浏览器,并在客户端连接页查找相应域名。终端工具不一定自动读取图形系统的代理设置,终端访问失败不能单独证明系统代理无效。若应用自带代理选项,应只保留一条明确路径,避免系统代理指向客户端、客户端又被其他代理工具转发的循环。
关闭客户端前先关闭系统代理,随后验证直连是否恢复。若异常退出留下本地代理地址,可以重新打开客户端恢复状态,再正常关闭。手动清理时应只修改确定属于该客户端的条目,保留原本需要的自动发现、自动配置及其他网络服务设置,避免修复一处问题却破坏整个网络配置。
TUN、网络扩展与内网路由
不同 macOS 客户端实现网络接管的方式不同,可能使用辅助服务、虚拟接口或网络扩展。不要要求所有软件都出现同一个授权窗口,应以当前客户端的说明为准。确实出现网络扩展请求时,在系统设置对应的隐私、安全或扩展管理位置完成允许,再返回客户端确认状态。
TUN 启用失败时,先看系统授权与辅助服务,再看路由和 DNS。若打开后只能访问部分网站,检查是否有其他 VPN、过滤软件或企业网络组件同时修改网络路径。先逐个停用非必要工具做对照测试,不要同时删除全部网络服务。局域网设备不可达时,要检查私有网段的直连与路由排除。
睡眠唤醒后网络短暂变化也值得单独记录:设备可能更换了地址、默认网关或 DNS,而后台连接仍保留旧状态。先等待当前网络完成连接,再查看内核日志,必要时只重启接管功能。若每次都需要重启整个系统才能恢复,保留唤醒前后的日志,比不断更换订阅更有助于定位。
Android:安装应用、VPN 授权与后台运行
选择适配架构并保留原配置
从Android 下载区选择安装包,首选 Clash Plus,其他选项包括 Clash Meta for Android、FlClash 和 Surfboard。多数较新的设备使用 ARM64,但仍应根据设备架构和客户端支持情况选择。通用包适合无法判断架构且下载区明确提供该构建的情况,不要把所有手机都视为同一种处理器环境。
通过浏览器或文件管理器安装时,Android 可能要求允许该来源安装应用。只为本次使用的来源授予必要权限,完成后可恢复原设置。更新安装若提示签名不一致,不要立即卸载旧应用;先备份订阅名称、分应用设置和本地覆写,再确认安装包来源及是否属于同一个客户端。
系统版本、厂商定制和应用权限管理可能改变菜单路径,但判断顺序一致:先确认能安装并启动,再处理网络接管。若应用启动即退出,先看系统兼容性和安装包架构,不能通过修改 DNS 解决。不要从不明渠道安装所谓驱动补丁,Android 客户端通常通过系统 VPN 接口工作。
导入订阅并理解首次 VPN 提示
打开配置管理,添加远程订阅或导入本地文件。为配置命名后执行更新,再切换为当前配置,检查代理组是否有节点。部分客户端需要在更新完成后返回主界面启动连接。若导入的是文件,后续远程订阅刷新不会自动维护这份本地副本,应明确它的更新来源,避免一直使用过期节点。
首次开始连接时,系统会提示建立 VPN 连接。这里的 VPN 是 Android 提供的网络接管接口,并不表示设备自动连接到另一家传统 VPN 服务。接受授权后,客户端才能接收由系统交给它的流量;取消授权时,即使节点列表和规则都已加载,也不会开始接管应用连接。
Android 通常只允许一个普通 VPN 接口同时工作。另一个 VPN、使用本地 VPN 的过滤工具或某些防火墙应用启动后,可能替换当前连接。遇到开关立即关闭或状态反复变化,先检查是否有其他应用正在占用接口,再看订阅和节点,不要反复导入同一个地址。
分应用代理与局域网访问
Android 客户端一般不依赖桌面系统代理开关,而是在 VPN 接管范围内处理连接。分应用列表可能使用“仅代理选中应用”,也可能使用“绕过选中应用”的语义,两者正好相反。修改前先阅读当前模式说明,选一个目标应用验证连接记录,确认含义后再批量添加。
如果某个应用始终没有出现在连接页,先检查它是否被排除、是否位于工作资料空间,或是否由另一个用户运行。系统为个人空间与工作空间提供的网络范围可能不同。修改分应用设置后,有时需要重新建立 VPN,并重新打开目标应用,旧连接不会自动变成新的接管路径。
投屏、打印机、路由器管理页等依赖局域网访问。启用代理后这些功能失效,应检查私有地址的直连规则和客户端提供的局域网绕过选项。允许局域网连接到手机代理,与手机自身绕过局域网是两个概念:前者涉及监听与共享,后者涉及路由范围,不要把一个开关当成两种功能。
后台保活要围绕实际断连原因调整
亮屏时正常、锁屏后断开,优先检查电池优化、后台运行和厂商的应用清理策略。为客户端允许合理的后台活动,再做一次锁屏测试,观察系统 VPN 图标和重新打开后的日志。无需给所有应用开放后台权限,也不必仅凭耗电提示判断内核发生故障,应结合实际连接是否中断。
“始终开启 VPN”和“阻止不使用 VPN 的连接”属于系统层功能,开启前先理解恢复路径。后者会在 VPN 未建立时限制网络,订阅或客户端发生故障时也可能表现为整机断网。建议先确认配置稳定,并记住系统 VPN 设置入口,再决定是否启用,不能把它当作修复连接失败的按钮。
从 Wi-Fi 切换到移动网络后,旧连接可能需要重建;移动网络的 IPv6、UDP 支持与当前节点路径也可能不同。先比较同一节点在两种网络下的表现,再更换节点或协议。只有一个应用失败时检查分应用范围,所有应用都失败时检查 VPN 状态和默认网络,按影响范围缩小排查。
iOS:商店安装、配置导入与按需连接
安装 Clash Plus 并确认功能入口
iPhone 和 iPad 可从 App Store 安装 Clash Plus,相关产品信息见官网 clashplus.io。也可以先查看iOS 下载说明。安装完成后打开应用,先熟悉配置、策略和连接状态的位置,再导入已有订阅,避免把系统 VPN 设置页面当成订阅管理入口。
移动系统的接管方式与桌面不同,不需要照搬 Windows 的服务安装步骤,也不应寻找同名的虚拟网卡驱动。客户端通常利用系统提供的网络扩展建立 VPN 配置;系统设置负责授权和连接状态,具体节点、策略组及规则仍由客户端管理,两处显示的信息用途不同。
首次启动时可能出现通知、网络或其他权限提示,应根据功能用途逐项判断。首次连接的 VPN 配置授权与普通通知权限并不是一回事。若取消了网络接管授权,返回应用重新发起连接并按系统要求确认;只打开通知权限不会让代理自动生效,也不会补全缺失的订阅配置。
导入订阅后,先检查策略而不是反复连接
在应用的配置管理中添加订阅,粘贴完整地址并更新。若通过分享菜单导入文件,确认文件实际包含受支持的配置,而不是网页保存内容。导入后设为当前配置,再查看代理组的可选项目。配置名称只是本地标识,可以按用途命名,但不要在名称中保存账户密码或完整访问地址。
节点列表存在却无法访问时,先选择一个明确节点,并检查当前模式。规则模式依据规则选择策略;全局模式会把适用的连接交给全局策略,并不会修复节点故障。首次验证可暂时缩小变量,但日常使用仍应根据访问需求和内网要求选择模式,不必长期依赖全局模式掩盖错误规则。
订阅更新与已经建立的连接并非同一个过程。更新成功后,需要确认当前配置已应用;已有长连接也可能继续沿用旧路径。测试新配置时可重新打开目标应用,必要时重新建立 VPN,再到客户端查看新连接记录。不要只刷新同一个缓存页面来判断新规则是否已生效。
VPN 状态、按需连接与其他网络工具
启动连接并接受系统 VPN 配置授权后,检查系统设置中的连接状态,再访问一个测试目标。VPN 显示已连接,说明系统通道已经建立,但不保证上游节点可用。若日志里存在连接而请求持续失败,应继续检查节点认证、服务器可达性及规则目标,而不是重复删除系统 VPN 配置。
按需连接用于在符合条件时由系统发起连接,不等同于应用一直留在前台。相关条件可能涉及网络类型或客户端提供的策略,具体以当前界面为准。初次配置建议先手动连接,验证正常后再开启按需规则;否则自动重连可能在排查时立即恢复连接,造成开关似乎无法关闭的错觉。
另一个 VPN 或同样依赖网络扩展的工具可能影响当前路径。排查时先暂停非必要工具,检查系统中的 VPN 配置是否存在旧项目。只有确定不再使用时再删除旧配置,并先从对应应用停止连接。受管理设备的网络策略可能不可自行更改,应遵守设备管理要求,不要尝试绕过。
切换网络、DNS 与局域网的边界
酒店、机场等网络可能要求先打开认证页面。若代理在认证之前自动连接,订阅更新或节点连接就可能失败。可以暂时关闭按需连接,完成网络认证后再手动连接。不要把认证页面的跳转地址保存成订阅,也不要因为在公共网络失败就直接覆盖原来的可用配置。
Wi-Fi 与蜂窝网络的路径不同,切换后短暂重连属于需要观察的网络变化。若仅在某个 Wi-Fi 下失败,比较该网络的认证状态、DNS 与防火墙限制;若所有网络都失败,再检查节点和订阅。测试时记录应用是否有请求进入连接页,这能区分接管范围问题和上游连接问题。
局域网权限影响部分应用发现附近设备,但不能替代正确的代理规则。访问家庭存储、投屏设备或路由器页面失败时,先确定目标是本地地址,再检查客户端的直连或绕过设置。不要把所有无法打开的域名都加进直连;若目标仍需代理,这种修改只会把问题从规则阶段转移到直连阶段。
iOS 上可见的日志与后台行为受系统机制影响。清理后台界面不一定等同于停止系统 VPN,界面留在任务切换器中也不能证明连接正常。以系统连接状态、客户端记录和实际访问三者交叉判断。决定停用时,关闭按需连接并停止 VPN,再确认网络恢复到预期路径。
Linux:桌面客户端与 mihomo 后台服务
桌面安装先选发行版包格式
桌面用户可在Linux 下载区选择推荐的 Clash Verge Rev,或使用 FlClash。按发行版选择 DEB 或 RPM,并核对处理器架构及运行环境要求。不要仅凭文件扩展名尝试跨发行版安装,也不要为了满足依赖直接替换系统关键库。图形界面启动失败时,先从终端运行并读取依赖错误。
安装后导入订阅、激活配置和选择节点的流程与其他桌面平台相近,但系统代理设置未必覆盖所有桌面环境与应用。浏览器、终端和包管理器可能分别使用不同代理来源。先确认内核在本地端口监听,再为需要的程序设置代理,避免把桌面设置成功误认为所有进程都已经接管。
无桌面环境先准备配置和运行目录
服务器或路由器用户可以直接运行 mihomo 内核。选择与系统架构匹配的二进制,解压后放入自己管理的可执行目录。下面约定程序位于 /usr/local/bin/mihomo,配置位于 /etc/mihomo/config.yaml;这是本节示例路径,不要求覆盖其他软件已经使用的目录。
先建立专用服务账户和工作目录,再放置已有配置,限制配置文件的读取权限。以下命令适用于提供相应工具的常见 Linux 系统,运行前应确认账户尚不存在。配置涉及的规则集、数据库与相对路径,也应相对于工作目录检查权限,不能只让主文件可读而忽略依赖文件。
sudo useradd --system --home-dir /etc/mihomo --shell /usr/sbin/nologin mihomo
sudo install -d -o mihomo -g mihomo -m 0750 /etc/mihomo
sudo install -o mihomo -g mihomo -m 0640 ./config.yaml /etc/mihomo/config.yaml
sudo -u mihomo /usr/local/bin/mihomo -t -d /etc/mihomo
测试命令通过,只表示配置可以被解析和检查,不保证节点可用。首次运行还可能需要取得配置引用的资源;受限网络或目录写入权限会影响这一过程。不要把解析成功当成整个部署结束,接下来仍需检查进程、监听端口和真实请求,尤其要区分数据库资源错误与节点错误。
用 systemd 管理普通代理服务
下面的服务单元面向本机普通代理监听,不启用 TUN,也不额外授予网络管理能力。将内容保存为 /etc/systemd/system/mihomo.service,并确保执行路径与实际位置一致。若发行版未使用 systemd,应采用该系统原生的服务管理方式,而不是强行照搬命令。
[Unit]
Description=mihomo local proxy
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
User=mihomo
Group=mihomo
WorkingDirectory=/etc/mihomo
ExecStart=/usr/local/bin/mihomo -d /etc/mihomo
Restart=on-failure
RestartSec=5
NoNewPrivileges=true
UMask=0077
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now mihomo
systemctl status mihomo --no-pager
sudo journalctl -u mihomo -b --no-pager -n 80
网络已就绪的目标不保证外部订阅地址已经可访问。若服务启动时资源获取失败,应查看日志并按资源管理方式处理,不能只靠无限重启。修改配置前保留可用副本,先测试再重启;出现重启循环时停止服务,修正配置后再启动,避免持续向上游发送失败请求。
终端代理、远程连接与 TUN 权限
对于临时终端任务,可设置当前 shell 的代理环境变量。下例假设混合端口为 7890,只影响读取这些变量的程序,不会自动修改系统路由。对本地服务使用不代理列表,避免访问回环地址时又绕到代理。工具是否支持 SOCKS 和远端解析,应以该工具文档为准。
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
export no_proxy=localhost,127.0.0.1,::1
curl -I https://example.com
# 结束当前终端中的临时设置
unset http_proxy https_proxy no_proxy
通过 SSH 维护服务器时,先保留第二个管理会话,再调整路由。TUN 需要访问虚拟网络设备并具备必要的网络管理权限,上面的低权限单元不能直接承担这些操作。应按系统与客户端实现单独设计权限,不能仅把所有服务改为 root。远程机器更应先规划 SSH 回程和管理网段的绕过。
默认只给本机使用时,监听地址保持在回环范围,不开放外部控制接口。向局域网提供代理需要同时考虑监听地址、认证和防火墙,不能只切换允许局域网。进阶部署可继续阅读Linux 无桌面环境与 systemd 教程,确认普通代理稳定后,再逐项加入 TUN 或远程管理需求。
配置常见问题:订阅、规则、TUN 与 DNS
订阅更新失败:先分清请求与解析
更新失败先看请求有没有拿到配置。超时通常指向当前网络、访问路径或服务端响应;认证错误应检查订阅有效期和地址;返回网页则可能是登录、认证或错误页面。不要立即把地址送入转换服务,转换不能修复服务到期,也可能让原本私密的订阅暴露给额外的处理方。
下载成功但解析失败时,检查内容格式、缩进和内核支持的字段。客户端可能缓存上一次成功的配置,所以“还能连接”不代表本次更新已经生效。保留错误行附近的脱敏片段,再对照客户端支持范围排查。需要通过代理更新订阅时,应先保证现有可用配置能连接,避免形成必须更新后才能联网的循环。
规则与覆写:按顺序匹配,按来源维护
规则通常从上往下检查,先匹配的规则决定策略,末尾的 MATCH 负责兜底。下例只展示规则结构,要求配置中已经存在名为 PROXY 的策略。域名规则与目标 IP 规则的判断条件不同,看到一条域名连接走了 IP 规则,应继续检查域名识别与解析过程。
mode: rule
mixed-port: 7890
allow-lan: false
rules:
- DOMAIN-SUFFIX,github.com,PROXY
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- GEOIP,CN,DIRECT
- MATCH,PROXY
不要把手工规则写在兜底规则之后。订阅刷新可能覆盖直接编辑的内容,长期修改应使用客户端支持的覆写、合并或规则扩展机制,并检查合并后的最终配置。策略名称需要完全一致,包括空格与大小写。复制别人配置中的组名,却没有建立对应策略组,是加载失败的常见原因。
TUN 模式:权限、路由与循环检查
TUN 开启即失败时,先检查授权、服务与虚拟设备;开启后整机断网时,再检查默认路由、DNS 和节点出口。自动路由需要避免把代理内核自己的出口再次送回 TUN,否则可能形成循环。桌面客户端通常负责相关处理,手工修改底层配置前应确认不会与界面生成的路由设置冲突。
下面是 mihomo 的 TUN 字段片段,不适用于所有客户端直接粘贴。启用前需完成平台权限准备;DNS 劫持范围仍受系统、路由与实现影响。公司内网、其他 VPN 和远程维护场景,应先规划排除路由,不能把自动路由理解为适合所有网络的默认答案。
tun:
enable: true
stack: mixed
auto-route: true
auto-detect-interface: true
dns-hijack:
- any:53
DNS:解析路径与代理路径分别验证
DNS 把域名解析成地址,规则决定连接走哪条策略,两者有关但不是同一层。域名解析失败时换节点未必有效;解析正常却连接失败,也不一定需要改 DNS。先看日志能否取得地址,再看连接使用的规则和策略。启用了浏览器加密 DNS 时,还要确认它是否绕开客户端计划使用的解析路径。
nameserver 指定常规解析上游,fallback 与过滤条件配合决定候选结果的使用,fake-ip 则通过合成地址保留域名映射。使用 IP 形式的上游可避免解析上游域名的引导问题,但不代表适合所有网络。下面是结构示例,实际可达性和隐私需求应自行评估。
dns:
enable: true
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
nameserver:
- https://1.1.1.1/dns-query
fake-ip-filter:
- '*.lan'
- localhost
修改解析模式后,系统和应用可能仍保留旧缓存,已有连接也可能继续使用旧地址。先关闭测试应用的旧连接,再按平台清理相关缓存或重建接管,不要连续混改多个字段。DNS 劫持不能简单等同于拦截所有加密 DNS;完整字段关系见Clash DNS 配置详解。
开机自启与恢复:区分三个状态
开机自启要分别确认界面启动、内核运行、代理接管。后台服务可能已运行但界面未打开,界面也可能已启动却没有激活配置。重启后检查日志时间、当前配置和监听端口,再验证系统代理或 VPN 状态。网络尚未认证、用户目录未解锁或旧客户端抢占端口,都可能造成只在启动时失败。
每次改动后留下简短记录:修改字段、原值、测试网络与结果。断网时先关闭新增的接管方式,恢复上一份配置,再按层排查。若准备公开求助,只提供脱敏日志和最小复现步骤。节点选择本身有疑问时,可阅读节点地区、协议与测速的取舍方法,不要只凭一次测试结果删除整份配置。
规则模式与全局模式结果不同,说明节点坏了吗?
不一定。两种模式可能选用了不同策略。先比较连接记录里的规则、策略组与实际节点,再检查 DNS;只有确认走向相同,才适合继续比较节点本身。
客户端能连接,但某个应用没有连接记录怎么办?
先检查该应用是否遵循系统代理、是否被分应用列表排除,以及是否沿用旧连接。确认接管范围后,再判断是否需要 TUN,不要先修改所有节点和 DNS。