通用准备工作与客户端选择
先区分客户端、内核与订阅
Clash 的日常使用涉及三个相互独立的部分。客户端是能看到窗口、菜单和开关的图形界面,负责导入配置、切换代理模式并管理系统权限;Mihomo 等内核负责解析配置、建立连接和执行分流规则;订阅则是由服务提供方生成的配置入口,通常包含代理节点、代理组、规则和 DNS 参数。安装客户端并不会自动产生可用订阅,只有订阅也不能直接替代本地客户端。排查问题时先判断故障属于哪一层,可以避免反复重装。
本站下载页按平台列出客户端。常规桌面与移动设备优先选择 Clash Plus;Windows 和 macOS 还可选 Clash Verge Rev、FlClash,Windows 另有 Clash Nyanpasu 与停止维护的 Clash for Windows,macOS 另有停止维护的 ClashX Meta。Android 可选 Clash Meta for Android、FlClash、Surfboard;Linux 主要使用 Clash Verge Rev 或 FlClash。服务器、软路由及需要自行编排服务的用户可下载 Mihomo 内核。图形客户端与裸内核的配置方式不同,不要把内核压缩包当作桌面安装程序。
确认系统架构与安装权限
下载前需要确认操作系统版本和处理器架构。Windows 常见设备使用 x64;Windows on ARM 设备才需要 ARM64 版本。搭载 Apple 芯片的 Mac 选择 Apple Silicon 或 ARM64 构建,较早的 Intel Mac 选择 x64 构建。Android 安装包可能区分 arm64、arm 或通用包,多数近年的手机和平板使用 arm64;无法确认时,可优先采用下载页明确标注的通用包。Linux 除架构外还要区分软件包格式:Debian、Ubuntu 及其衍生系统通常使用 deb,Fedora、Rocky Linux 等使用 rpm,压缩版内核则需要手动配置服务。
安装和启用代理都可能触发系统权限请求。桌面端的系统代理一般只需修改系统网络设置;TUN 模式会创建虚拟网络接口,通常需要管理员权限。Android 与 iOS 会显示 VPN 连接授权,这是系统为本地流量接管提供的统一接口,不表示连接到了传统企业 VPN。若在权限对话框中拒绝,客户端界面可能仍显示配置已载入,但实际应用流量不会经过代理。此时应回到系统设置恢复 VPN、网络扩展或后台运行权限,而不是重复导入订阅。
保存最小恢复条件
开始修改前,建议保留当前可正常工作的配置副本,记下订阅入口,并确保设备时间、时区和网络连接正常。系统时间偏差会影响 HTTPS 证书验证,表现为订阅更新失败、网页证书错误或节点握手失败。公共 Wi-Fi 可能要求先在浏览器完成认证;在认证完成前开启全局代理,认证页面有时无法弹出。最稳妥的顺序是先关闭系统代理和 TUN,确认普通网络可访问,再导入配置并逐项开启。
| 准备项目 | 确认方法 | 选错后的常见表现 |
|---|---|---|
| 处理器架构 | 查看系统信息中的系统类型或芯片名称 | 安装程序无法启动,或系统提示应用不兼容 |
| 安装包格式 | 按 Windows、macOS、Android、Linux 分区下载 | 系统无法识别文件,或只能解压不能安装 |
| 网络权限 | 检查 VPN、网络扩展、管理员和后台权限 | 界面显示运行,但浏览器和其他应用不走代理 |
| 订阅可用性 | 确认链接未过期,并可在当前网络下访问 | 更新超时、返回空配置或没有代理组 |
首次配置应采用最小变量法:先用默认规则模式,只导入一份确认有效的订阅,开启系统代理后测试浏览器,再根据需要启用 TUN、覆盖 DNS 或添加自定义规则。不要同时修改代理模式、DNS、端口和规则文件,否则故障出现后很难判断是哪项设置造成。快速流程可参考Clash 使用教程,本手册后续章节则按平台解释安装细节和恢复路径。
Windows 安装、系统代理与 TUN
下载并完成首次安装
在Windows 下载区选择客户端。多数使用 Intel 或 AMD 处理器的电脑应下载 x64 安装包。安装前先退出旧客户端,避免旧进程占用混合端口或虚拟网卡。若需要从 Clash for Windows 迁移,不建议直接覆盖安装另一个客户端;先记录订阅地址、自定义规则和绕过列表,再让旧客户端退出系统代理,最后安装 Clash Plus、Clash Verge Rev、FlClash 或 Clash Nyanpasu。不同客户端的数据目录和字段扩展并不完全相同,直接复制整个旧目录可能把已失效的缓存与辅助服务一并带入。
安装程序若被系统拦截,应核对文件是否来自本站对应下载入口、文件扩展名是否完整,并在 Windows 安全提示中查看发布者与文件来源。企业或学校管理的设备可能限制安装驱动、创建服务或修改代理设置,这类限制需要设备管理员处理。便携版通常可以直接解压运行,但 TUN 服务仍可能要求管理员权限。路径尽量使用普通本地目录,避免放在受同步软件控制的文件夹中,以免配置更新时被锁定。
导入订阅并激活配置
打开客户端后进入配置、订阅或 Profiles 页面,选择通过 URL 添加,将完整订阅地址粘贴到输入框并执行更新。成功下载不等于已经启用,通常还需要点击刚加入的配置,使其成为当前配置。然后进入代理组页面,为需要手动选择的组指定节点,或保持自动选择策略。若页面只有配置名称却没有代理组,先查看更新结果和日志;订阅返回登录页、HTML 错误页或空内容时,客户端无法把它解析成 YAML 配置。
订阅更新间隔不宜设得过短。更新动作会重新拉取配置,有些客户端还会重新加载内核;频繁刷新既不能提升节点质量,也可能触发服务端访问限制。日常按服务方建议设置即可,需要立即同步时再手动更新。订阅失败的网络、链接和服务端排查路径,可继续阅读Clash 订阅更新失败排查。
系统代理适用范围
开启“系统代理”后,客户端会把 Windows 的 HTTP 与 HTTPS 代理指向本机监听端口。遵循系统代理设置的浏览器和桌面软件会自动接入;自行实现网络栈、部分商店应用、游戏与命令行工具可能忽略该设置。此时不是节点必然失效,而是相关程序没有把流量交给 Clash。浏览器可访问但某个应用仍直连,是判断这一情况的典型信号。
系统代理开启后异常断电或强制结束进程,可能留下指向本机端口的代理设置。表现是客户端关闭后网页全部无法访问。恢复方法是重新打开客户端并正常关闭系统代理,或进入 Windows 的“网络和 Internet—代理”关闭手动代理。不要在客户端运行时让多个代理软件同时接管系统代理;后启动的软件会覆盖地址,退出顺序不一致又可能恢复成旧值。
TUN 模式与虚拟网卡
TUN 模式通过虚拟网卡接收更多类型的流量,适合不遵循系统代理的应用。首次启用时允许客户端安装或启动相关服务,并接受系统的管理员权限请求。启用后先保持默认路由和 DNS 设置测试,不要立即叠加第三方加速器、虚拟机桥接、抓包驱动或另一套 VPN。多种网络过滤驱动同时工作时,常见表现包括无法解析域名、局域网设备不可达、休眠恢复后断网。
若 TUN 启动失败,先退出客户端并以管理员身份运行一次,检查服务是否成功创建;再确认 Hyper-V、WSL、Docker 或安全软件生成的虚拟网卡没有强制占用默认路由。TUN 可用但局域网打印机或 NAS 失联时,应将局域网网段保持直连,并检查是否启用了严格路由。家庭网络常见的私有地址包括 192.168.0.0/16、10.0.0.0/8 和 172.16.0.0/12,但实际规则应结合当前局域网地址设置。
rules:
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- MATCH,PROXY
Windows 平台完成配置后,应依次验证普通浏览器、需要 TUN 的应用和局域网访问。只在系统代理可用时保持系统代理即可;确有 UDP、商店应用或游戏接管需求时再启用 TUN。这样能减少虚拟网卡与系统安全策略之间的冲突,也便于在故障时快速退回普通网络。
macOS 安装、网络扩展与权限处理
按芯片选择安装包
进入macOS 下载区后,先在“关于本机”中查看芯片。显示 Apple M 系列芯片的设备选择 Apple Silicon 或 ARM64 构建;显示 Intel 处理器的设备选择 x64 构建。首推 Clash Plus,也可使用 Clash Verge Rev 或 FlClash。ClashX Meta 已停止维护,适合作为存量环境的迁移参考,不建议在新设备上作为首选。下载完成后通常需要将应用拖入“应用程序”目录,再从该目录启动,以便系统正确保存权限和更新状态。
首次打开若被 macOS 安全机制阻止,可在“系统设置—隐私与安全性”中查看刚被拦截的应用,并在确认来源后允许打开。不要通过删除整个系统安全属性或长期关闭系统保护来绕过一次性提示。若应用放在下载目录或只读磁盘映像中直接运行,辅助服务和网络扩展可能无法正确安装;先把应用复制到“应用程序”,退出旧实例,再重新启动。
订阅、菜单栏与当前配置
macOS 客户端通常同时提供主窗口和菜单栏入口。导入订阅时进入 Profiles、配置或订阅页面,通过 URL 新建配置并执行更新。更新完成后点选该配置,再在代理组中确认策略。菜单栏图标显示运行状态,但图标存在并不代表系统代理一定开启;需要分别检查客户端的系统代理开关和 macOS 网络设置。若同时保留多个客户端,确保只有一个客户端设置为登录时启动,也只有一个负责系统代理。
配置存放位置可能位于用户资料库目录。迁移设备时,优先重新导入订阅,并只迁移明确写过的规则覆盖文件。直接复制全部缓存可能包含旧内核路径、旧辅助服务状态和不再适用的网络接口名称。若订阅中含有服务方专用字段,使用客户端的正常导入流程通常比手动拼接配置更稳定。
系统代理与网络服务
开启系统代理后,客户端会修改当前网络服务的 Web 代理和安全 Web 代理。Mac 从 Wi-Fi 切换到有线网络、手机热点或新建网络位置时,新的网络服务可能拥有独立代理设置,因此需要重新确认。若客户端退出后 Safari 与其他应用无法联网,可在“系统设置—网络—当前连接—详细信息—代理”中检查 HTTP、HTTPS 或 SOCKS 代理是否仍指向本机地址。正常关闭客户端的系统代理开关,通常会自动清理这些值。
部分命令行程序不读取 macOS 图形界面的系统代理。需要临时让终端命令使用本地代理时,可在当前终端会话设置环境变量。端口必须与客户端实际的 mixed-port 或 HTTP 端口一致,命令执行完后再取消,避免以后连接到已经关闭的本地端口。
export HTTP_PROXY=http://127.0.0.1:7890
export HTTPS_PROXY=http://127.0.0.1:7890
export ALL_PROXY=socks5://127.0.0.1:7890
# 当前终端完成操作后清理
unset HTTP_PROXY HTTPS_PROXY ALL_PROXY
TUN、网络扩展与辅助服务
TUN 模式首次启用时,macOS 可能要求输入管理员密码,并提示添加 VPN 配置、网络扩展或辅助工具。应在系统对话框中允许对应权限。若点击开启后立即回落,进入“隐私与安全性”“网络—VPN 与过滤器”检查扩展是否被禁用,再完全退出客户端并重新打开。升级或更换客户端后,旧辅助服务仍在运行也会导致新服务安装失败;应先使用旧客户端提供的卸载服务功能,再安装新客户端,而不是手动删除未知系统目录。
启用 TUN 后无法访问 AirDrop、打印机、局域网共享或开发设备,通常与局域网流量被错误接管有关。先测试关闭 TUN、仅保留系统代理时是否恢复;若恢复,再检查配置中的私有网段直连规则、路由自动检测和 DNS 劫持范围。macOS 的 iCloud Private Relay、其他 VPN、内容过滤器和企业安全软件也可能参与网络路径,排查时一次只保留 Clash 的一套接管方式。
| 现象 | 优先检查 | 处理方向 |
|---|---|---|
| 应用无法打开 | 芯片架构、应用位置、安全提示 | 选择正确构建并移入应用程序目录 |
| 菜单栏运行但网页直连 | 系统代理开关、当前网络服务 | 重新启用系统代理并核对代理地址 |
| TUN 开关立即关闭 | 网络扩展、辅助服务权限 | 允许扩展,清理旧服务后重试 |
| 局域网设备失联 | 私有网段规则、其他 VPN | 恢复直连规则并减少并行接管工具 |
macOS 的重点不是反复重装,而是确认应用架构、当前网络服务和网络扩展三者状态一致。浏览器可用但终端不可用时检查环境变量;系统代理可用但特定应用不可用时再考虑 TUN;TUN 启用后局域网异常,则回到规则和路由范围逐项缩小问题。
Android 安装、VPN 授权与后台保活
选择安装包并允许安装
在Android 下载区可选择 Clash Plus、Clash Meta for Android、FlClash 或 Surfboard。多数近年设备使用 arm64 安装包;较旧设备可能使用 arm,无法确认时可采用客户端提供的通用构建。下载后由系统安装器打开 APK。Android 会按来源分别管理“安装未知应用”权限,只需为当前使用的浏览器或文件管理器临时授权。安装完成后可关闭该来源的安装权限,不需要为所有应用统一开启。
若系统提示解析安装包失败,先确认文件已完整下载、扩展名仍为 APK,并核对 Android 系统版本和处理器架构。提示与现有应用签名不一致时,通常表示设备中存在由不同来源签名的同名应用。此时先导出或记录订阅与自定义规则,再卸载旧应用并重新安装;不能依靠覆盖安装跨越签名差异。某些厂商系统会把安装确认藏在安全扫描页面下方,需要完整阅读系统提示后继续。
导入订阅与启动连接
首次打开客户端后,在配置或订阅页面选择从 URL 导入,粘贴订阅地址并更新。导入完成后选择该配置,进入代理组确认策略,再返回主页点击启动。Android 随后会显示创建 VPN 连接的系统对话框,必须允许。该权限用于把设备流量送到本机 Clash 服务;若拒绝,应用即使载入配置也无法建立系统级连接。状态栏出现钥匙或 VPN 标识,通常表示系统隧道已经建立。
订阅链接若通过其他应用复制,注意不要带入前后空格、换行或聊天软件添加的附加文字。更新后没有代理组时,检查日志中的 HTTP 状态、解析错误和配置路径。浏览器打开订阅地址并看到登录页面,并不能证明客户端可以获取配置;有些地址需要专用请求参数或已经失效。遇到持续更新失败,可按订阅更新故障流程逐层检查。
应用分流与绕过设置
Android 的 VPN 接口可以接管大部分应用流量,客户端通常提供“仅代理选中应用”或“绕过选中应用”两种应用分流方式。前者适合只让少量应用进入 Clash,后者适合让银行、局域网控制或不兼容应用保持直连。两种模式的逻辑相反,修改后应停止并重新启动连接,让系统重新建立应用范围。系统组件、工作资料和双开应用可能以不同包名运行,需要在对应用户空间分别设置。
应用分流只决定流量是否进入 Clash,进入后仍会继续匹配规则模式、代理组和 DNS。某应用被纳入 VPN 但仍走直连,可能是规则命中了 DIRECT,而不是应用分流失效。排查时查看连接记录中的进程、域名、命中规则和最终策略,先确认流量经过哪一层,再调整规则。
电池优化、后台限制与网络切换
Android 厂商常对后台应用施加额外限制。若锁屏后连接中断、清理最近任务后 VPN 消失,或 Wi-Fi 与移动网络切换后不再恢复,应把客户端加入电池优化白名单,允许后台运行、自启动和必要的前台服务通知。通知栏常驻状态用于维持系统认可的前台服务,不宜关闭相关通知渠道后再期待长期稳定运行。不同品牌的设置入口名称不同,但核心是取消省电冻结和后台联网限制。
从 Wi-Fi 切到移动数据后短时间无法连接,可先等待系统网络完成切换,再在客户端停止并启动一次。若仅某个 Wi-Fi 异常,检查该网络是否要求网页认证、是否使用私有 DNS或存在 IPv6 路由差异。公共网络认证前先暂停 Clash,完成认证后再启动。若开启 Android 的“始终开启 VPN”或“阻止未使用 VPN 的连接”,客户端停止时所有网络都会被系统阻断;排查普通网络时要同时检查这两个系统选项。
| 问题 | 判断方法 | 建议处理 |
|---|---|---|
| 启动后立刻停止 | 查看 VPN 授权和是否已有其他 VPN | 关闭其他 VPN,重新允许系统连接请求 |
| 锁屏后断开 | 观察电池优化与后台运行限制 | 允许前台服务、自启动和后台联网 |
| 部分应用不经过代理 | 检查应用分流范围和命中规则 | 先修正应用范围,再核对 DIRECT 规则 |
| 切换网络后无连接 | 停止并重启连接测试 | 检查始终开启 VPN、私人 DNS 和网络认证 |
Android 排错应围绕四个状态进行:配置是否已激活、VPN 权限是否允许、目标应用是否被纳入连接、后台服务是否被系统保留。只要按这个顺序逐项确认,大多数“界面正常但应用不通”的问题都能定位,不需要频繁清除应用数据。
iOS 与 iPadOS 安装、VPN 配置与按需连接
从商店安装客户端
iPhone 与 iPad 用户可在iOS 下载区进入 Clash Plus 的 App Store 页面,官网为 clashplus.io。安装完成后首次打开应用,先允许必要的网络配置请求,再添加订阅。iOS 对系统网络扩展实行统一管理,客户端启动连接时会请求添加 VPN 配置,并可能要求使用设备密码、面容或指纹确认。完成授权后,系统设置的 VPN 列表中会出现对应配置。
若安装按钮不可用,应先检查设备系统版本、商店账户状态、屏幕使用时间限制和组织管理策略。由单位管理的设备可能禁止用户添加 VPN 配置,此时客户端可以安装,但无法获得流量接管权限。重复卸载和安装不能绕过设备管理规则,需要由管理方调整策略。
导入订阅与选择策略
进入配置或订阅页面,通过 URL 添加服务方提供的地址,执行更新并选择新配置。返回策略页面后,确认常用代理组已有选项,再启动连接。若更新显示成功但策略列表为空,应查看配置是否真正切换为当前配置,以及订阅内容是否包含代理组。iOS 分享菜单有时会把链接传给应用,但为了避免截断参数,长订阅地址更适合直接复制后粘贴到客户端输入框。
规则模式适合大多数场景,由配置中的规则决定直连或代理;全局模式会把绝大部分匹配流量交给指定代理组,适合短时诊断,不建议把它当作所有问题的固定解法;直连模式用于暂停代理逻辑,但系统 VPN 图标可能仍保留,因为本地网络扩展仍处于运行状态。判断是否代理不能只看状态栏图标,还应查看客户端当前模式、连接记录和命中策略。
VPN 配置与其他网络工具冲突
iOS 同一时刻通常只允许一套主要 VPN 隧道接管流量。若设备上还有企业 VPN、其他代理客户端、内容过滤器或安全软件,后启动的配置可能替换前一套,也可能因按需连接规则而自动抢回。出现 Clash 刚连接就断开时,进入“设置—通用—VPN 与设备管理—VPN”查看当前实际启用的配置,暂时关闭其他按需连接项后重试。
删除应用前若未移除 VPN 配置,系统列表里可能保留旧名称。旧配置通常不会继续工作,但会增加排查干扰。迁移客户端时先停止连接,在系统 VPN 设置中确认旧配置不再启用,再打开新客户端添加配置。不要同时为多个代理客户端开启“按需连接”,否则 Wi-Fi、蜂窝网络切换或设备解锁时可能反复争夺连接。
按需连接、局域网与蜂窝数据
按需连接用于在网络变化后自动恢复隧道,适合长期使用,但应在手动连接已稳定后再开启。若某些 Wi-Fi 需要网页登录认证,自动连接可能让认证页面无法加载。此时先关闭按需连接和当前 VPN,完成 Wi-Fi 认证,再恢复。家庭局域网中的投屏、打印机、智能家居和文件共享需要直连私有网段;若启用后设备发现失败,检查配置是否将局域网域名或私有地址错误送入代理。
客户端需要蜂窝数据权限才能在移动网络下更新订阅和建立连接。Wi-Fi 正常而蜂窝网络失败时,先在系统蜂窝网络设置中确认客户端权限,再检查服务方节点是否支持当前运营商网络。低数据模式、低电量模式可能降低后台更新频率,但通常不应导致前台连接完全不可用。问题只在后台发生时,再检查后台应用刷新和按需连接,而不是修改节点规则。
DNS 与连接记录
iOS 网络扩展中的 DNS 通常由当前配置统一处理。若网页提示找不到服务器,但直接访问已知 IP 有响应,优先检查 DNS。先使用订阅默认配置,暂时关闭系统中额外安装的加密 DNS 描述文件或内容过滤器。若只有个别域名异常,在连接记录中查看请求是否生成、命中了哪条规则,以及解析结果是否进入 fallback。配置层面的 DNS 参数可参考本页“订阅与配置”章节及Clash DNS 配置详解。
iOS 平台不需要手动设置本地代理端口,主要控制点是当前配置、系统 VPN 授权、按需连接和其他网络扩展。遇到问题时,先在系统设置确认真正启用的是哪一套 VPN,再回客户端查看模式和日志。只看应用首页的连接按钮,容易忽略被其他配置替换的情况。
Linux 图形客户端、桌面代理与内核服务
图形客户端安装
桌面 Linux 用户可在Linux 下载区选择 Clash Verge Rev 或 FlClash。Debian、Ubuntu、Linux Mint 等系统通常安装 deb 包;Fedora、Rocky Linux、openSUSE 等按客户端提供情况使用 rpm。安装前确认系统架构,多数桌面电脑为 amd64。使用包管理器安装本地 deb 时,建议让包管理器处理依赖,而不是只调用底层解包命令。
sudo apt install ./client-package.deb
# rpm 系发行版按本机包管理器安装
sudo dnf install ./client-package.rpm
上面的文件名仅表示当前目录中的安装包,应在终端中输入实际下载文件名。图形客户端启动后,订阅导入与 Windows、macOS 类似:在配置页面添加 URL、执行更新、选中当前配置,再开启系统代理或 TUN。Wayland 与 X11 环境对托盘图标支持不同,托盘图标未显示不代表内核没有运行,应从主窗口、进程和日志综合判断。
桌面环境的系统代理
GNOME、KDE 等桌面环境可以保存 HTTP、HTTPS 和 SOCKS 代理,但不同应用读取方式不一致。浏览器通常遵循桌面代理;终端命令、容器、Snap 或 Flatpak 应用可能使用独立环境。客户端开启系统代理后,先用浏览器测试。如果终端仍不经过代理,可针对当前 shell 设置 HTTP_PROXY、HTTPS_PROXY 和 ALL_PROXY,端口需与客户端监听配置一致。不要把临时代理变量直接写入所有系统服务的全局环境,否则客户端停止后,软件更新和后台任务会继续连接失效端口。
桌面代理开关关闭后若应用仍使用代理,检查 shell 启动文件、Git 配置、包管理器配置和桌面网络设置中是否留有旧值。Linux 的代理状态往往分散在多个位置,客户端只能恢复自己修改的部分。排查时可新开一个终端检查环境变量,避免旧终端保留修改前的会话状态。
TUN 权限与路由
Linux TUN 需要访问 /dev/net/tun、修改路由和防火墙规则。图形客户端通常通过提权辅助服务完成这些操作。开关失败时,先查看日志是否提示权限、设备不存在或 nftables/iptables 命令失败。容器、精简发行版和受限虚拟机可能没有 TUN 设备,需要由宿主机开放。不要为了运行客户端长期使用 root 登录桌面;应按客户端提供的服务安装方式授予最小必要权限。
TUN 启动后无法访问局域网、容器网桥或虚拟机时,核对直连网段和自动路由。Docker 常创建 172.17.0.0/16 等桥接网络,可能与远端网络或配置中的私有网段规则重叠。此时需要根据本机 ip route 的实际结果决定绕过范围,不能机械复制另一台机器的路由。防火墙管理工具也可能在重启后覆盖客户端规则,问题只在重启后出现时应检查服务启动顺序。
直接运行 Mihomo 内核
服务器、软路由或无桌面环境可以直接使用 Mihomo 内核。下载与架构匹配的文件后,将可执行文件放入受管理目录,准备配置文件,并先执行配置检查。配置至少要包含监听端口、代理或代理提供器、代理组和规则。订阅服务若提供完整 YAML,可将其保存为配置文件;若只提供代理列表,则还需要自行补齐代理组和规则。服务端部署前先以前台方式运行,确认配置可解析,再交给服务管理器。
mkdir -p ~/.config/mihomo
cp config.yaml ~/.config/mihomo/config.yaml
mihomo -t -d ~/.config/mihomo
mihomo -d ~/.config/mihomo
-t 用于检查配置,成功后再启动。将内核监听到局域网地址前,应理解 allow-lan、监听地址和防火墙的含义。只在本机使用时保持环回地址访问范围更小;需要让局域网设备连接时,再开放对应端口并限制可信网段。控制接口同样不应直接暴露到不受信任网络。服务管理器中应指定明确的工作目录、配置目录和重启策略,避免从交互式 shell 启动后因会话结束而退出。
| 场景 | 建议方式 | 重点检查 |
|---|---|---|
| Linux 桌面日常使用 | Clash Verge Rev 或 FlClash | 包格式、托盘支持、桌面代理 |
| 不遵循桌面代理的应用 | TUN 或单独设置环境变量 | 权限、路由、变量生命周期 |
| 服务器与软路由 | Mihomo 内核配合服务管理器 | 架构、配置检查、监听范围 |
| 容器环境 | 按宿主网络设计部署 | TUN 设备、能力权限、网段冲突 |
配置常见问题与分层排查
先建立可重复的判断顺序
Clash 故障最有效的处理方式不是不断切换设置,而是按层验证。第一层检查基础网络:关闭系统代理和 TUN 后,设备能否正常访问本地网络与常用网站。第二层检查配置:订阅是否更新成功、当前配置是否激活、代理组是否包含可选项。第三层检查内核:日志中是否有配置语法、端口占用、权限或 DNS 错误。第四层检查流量接管:目标应用是否遵循系统代理,或是否已被 TUN、Android VPN、iOS 网络扩展纳入。第五层才是节点和规则。
每次测试只改变一个条件,并记录改变前后的结果。例如浏览器在规则模式失败,先切全局模式但保持同一节点;全局模式恢复,说明节点和接管链路大致正常,问题更可能在规则。全局模式仍失败,再更换节点;换节点恢复,则检查原节点。所有节点都失败时,再检查 DNS、订阅状态和本地网络。这样能把“完全打不开”拆成可验证的分支。
客户端显示运行但网页打不开
先确认系统代理地址与客户端监听端口一致。若 mixed-port 改为其他值,而系统仍指向旧端口,浏览器会连接到不存在的本地服务。然后查看客户端连接记录:完全没有新连接,说明流量未进入 Clash,应检查系统代理、浏览器独立代理、TUN 权限或移动端 VPN;有连接但显示 DNS 错误,转向 DNS 排查;有连接并命中代理组但握手超时,再测试其他节点。
客户端异常退出后,系统可能残留代理设置。Windows 可在系统代理页面关闭手动代理,macOS 可在当前网络服务的代理设置中清理,Linux 需同时检查桌面代理和环境变量。Android 与 iOS 则查看系统 VPN 是否仍指向已停止的配置。恢复普通网络后,再正常打开客户端并重新启用接管,避免在残留状态上继续叠加设置。
订阅更新失败或内容为空
更新超时先测试当前网络是否能访问订阅服务;若只有开启代理后才能更新,可在已有可用配置运行时执行更新。返回 404 通常表示路径失效,403 可能与授权、访问限制或请求条件有关,需从订阅提供方确认。返回内容为空或解析失败时,查看响应是否其实是网页文本。不要把网页账户中心地址当作订阅地址,也不要手动删除长链接中的参数。
自动更新失败但手动更新成功,检查后台权限、更新间隔和设备休眠状态。移动端省电策略可能阻止后台请求,桌面端系统启动时网络尚未就绪也可能导致首次更新失败。自动更新只是便利功能,当前本地配置仍可用时,不必因为一次后台失败立即删除配置。完整排查步骤见订阅更新失败与自动更新设置。
DNS 泄漏、解析失败与证书错误
DNS 问题常表现为域名打不开、同一网站在不同网络结果不同、规则没有按域名命中。先恢复订阅默认 DNS,关闭系统额外的私人 DNS、加密 DNS 配置或浏览器独立 DNS,再测试。若恢复后正常,再逐项加回自定义设置。启用 TUN 时还应确认 DNS 劫持监听范围与端口没有被其他程序占用。Fake-IP 模式下看到映射地址属于工作机制,不能仅凭地址形式判断泄漏。
浏览器提示证书无效时,不要直接归因于规则。先检查系统日期和时区,再关闭 Clash 测试同一网站。如果关闭后仍报错,问题更可能来自系统时间、网站证书、网络认证或本地安全软件;只在开启特定节点后出现,则切换节点并查看是否存在连接劫持。抓包工具、本地 HTTPS 过滤和企业证书也会改变证书链。详细判断方法可阅读HTTPS 证书错误与代理关系。
TUN 启动失败或开启后断网
桌面端先检查管理员权限、辅助服务和虚拟网卡。Windows 查看旧代理软件服务与安全软件拦截,macOS 查看网络扩展和 VPN 与过滤器,Linux 查看 TUN 设备、路由与防火墙工具。TUN 开启后完全断网时,先关闭 TUN,保留系统代理验证内核和节点。系统代理可用说明基础代理链路正常,问题集中在虚拟网卡、路由或 DNS 劫持。
局域网异常时检查私有网段直连;Docker、虚拟机和远程办公网络还可能使用相同私有网段,需根据实际路由细分。休眠恢复后断网可以先重启 TUN,而不是重启整台设备。若每次休眠都复现,检查客户端是否具备后台权限、辅助服务是否随系统恢复,以及另一网络工具是否在唤醒时重新写入路由。
规则不生效与日志阅读
规则模式下查看连接记录中的目标域名、命中规则和最终策略。规则从上到下匹配,宽泛的 DOMAIN-KEYWORD、GEOIP 或 MATCH 放得过早,会让后面的具体规则永远没有机会生效。应用直接连接 IP 时,域名规则可能无法匹配;使用 QUIC、IPv6 或自带 DNS 的应用也可能呈现不同路径。先根据日志确认请求实际形态,再选择域名、IP-CIDR、进程或规则集条件。
日志里的错误要连同前后文一起看。配置解析错误通常给出字段或行号;连接超时说明请求已经发出但未在时间内完成;connection refused 表示目标明确拒绝或本地端口没有服务;no such host 指向解析失败;permission denied 则优先检查文件、端口或网络权限。可参考Clash 运行日志常见报错建立错误类型与处理方向的对应关系。
| 观察结果 | 更可能的问题层 | 下一步 |
|---|---|---|
| 关闭 Clash 后仍无法联网 | 系统残留代理或 VPN 状态 | 清理系统代理、VPN 和旧环境变量 |
| 连接记录完全没有请求 | 流量没有进入客户端 | 检查系统代理、TUN、VPN 与应用范围 |
| 全局模式可用,规则模式失败 | 规则顺序或策略组 | 查看命中规则与最终策略 |
| IP 可访问,域名不可访问 | DNS 解析链 | 恢复默认 DNS,减少并行解析组件 |
| 系统代理可用,TUN 不可用 | 虚拟网卡、权限、路由或劫持 | 检查辅助服务和平台网络权限 |
| 只有一个节点失败 | 节点或对应线路 | 切换节点并保留日志供服务方判断 |
完成排查后,把临时开启的 debug 日志、全局模式和测试 DNS 恢复为日常设置。确认系统代理或 TUN 只由一个客户端管理,并删除已不再使用的自动启动项。稳定配置通常不需要频繁调整:保持一份可恢复配置、明确订阅来源、理解当前接管方式,就能处理大部分跨平台差异。