客户端下载与订阅导入

如果只是准备开始使用,可以先到Clash 客户端下载页,按操作系统和处理器架构选择客户端。安装后,在客户端的「配置」或「Profiles」页面导入服务商提供的订阅地址,选中刚导入的配置,再到代理组里选择节点。订阅地址通常包含访问凭据,不要把完整地址发到公开评论或问题截图里。

需要辨别内核时,先把三个层次分开:客户端提供窗口、托盘、订阅管理和系统设置入口;内核负责解析配置、建立代理连接与执行规则;订阅提供节点以及可能附带的代理组、规则和 DNS 设置。客户端能够成功下载订阅,不等于内核能够使用其中所有协议。

导入后的第一轮检查

  1. 确认订阅下载成功,并且当前启用的是该配置,而不是安装时附带的示例配置。
  2. 查看启动日志,确认没有配置解析错误、节点类型不支持或监听端口冲突。
  3. 桌面端先使用系统代理测试浏览器;安卓端通常需要授予 VPN 连接权限。
  4. 需要接管不遵循系统代理的应用时,再单独配置 TUN,避免同时修改太多设置。

原版 Clash、Meta 与 mihomo 的演进

原版 Clash 与 Premium 分支

原版 Clash 通常指 Dreamacro 项目及其内核。它建立了广泛使用的 YAML 配置结构,例如 proxies、proxy-groups 和 rules。原版生态还存在 Premium 内核,不能把开源原版与 Premium 的能力直接合并比较:Premium 曾提供 TUN、规则集与脚本等扩展能力,具体支持范围取决于所用构建。

原版项目在 2023 年 11 月停止维护。旧客户端、旧内核仍可能运行,但遇到新的节点协议、操作系统变化或新增字段时,不会因为重新下载同一份旧程序而自动获得支持。现有旧配置可以用于迁移参考,新部署则应优先考虑仍在维护、能够匹配订阅需求的内核。

Clash Meta 到 mihomo

Clash Meta 是在 Clash 生态基础上发展的分支,扩展了代理协议、DNS、规则匹配以及透明代理等能力。该项目后来更名为 mihomo;因此,订阅服务商写的“Meta 格式”、教程中的“Clash.Meta”,以及客户端标注的“mihomo 内核”,经常指向同一条项目演进路线。

名称上的延续不表示所有时期的版本完全等价。较早的 Meta 构建可能缺少后来加入的协议或配置选项,较新的 mihomo 也可能调整字段行为。迁移判断应落实到实际版本和启动结果,而不是只判断名称里有没有 Meta。

内核名称与选型关注点
名称定位检查重点
原版 Clash早期配置生态的基础内核现有节点是否在其支持范围内;旧配置是否依赖特定构建
Clash Premium原版生态中的扩展内核TUN、规则集和脚本配置不能直接视为开源原版能力
Clash Metamihomo 项目的旧名称安装包年代与内核版本,尤其是较新的协议字段
mihomoMeta 演进后的项目名称当前构建支持的协议、规则与平台权限

节点协议与订阅格式兼容

判断订阅是否需要 mihomo,最直接的方法是查看节点的 type。不要公开整份配置,只在本机查看必要字段。Shadowsocks、VMess、Trojan 等常见类型在 Clash 生态中存在较长时间,但同一种协议内部仍可能有不同加密方法、传输方式和扩展参数。

常见节点类型的检查方法
配置特征兼容判断需要继续检查
type: ss常见 Shadowsocks 节点可作为迁移起点cipher、插件以及是否使用 SS2022 方法
type: vmess 或 type: trojan不能只凭协议名称判断配置可用WebSocket、gRPC、TLS 与服务端要求是否一致
type: vless不属于原版 Clash 的常规支持范围,通常选择 mihomoflow、reality-opts 与传输参数
type: hysteria2需要支持 Hysteria 2 的构建服务端密码、TLS 参数及网络是否允许 UDP
type: tuic需要支持对应 TUIC 实现的构建协议版本、认证字段及 UDP 连通性

订阅地址与节点分享链接

完整 Clash YAML 通常包含代理组和规则;代理提供者文件通常只包含节点列表;Base64 节点集合或单条 ss://、vmess:// 分享链接又是另一种输入。客户端能否自动识别或转换这些格式,属于客户端功能,不能假定每个内核都能直接把任意链接当作完整配置读取。

在服务商后台选择订阅格式时,如果有“Clash Meta”或“mihomo”入口,而订阅包含 VLESS、Reality、Hysteria 2 等特征,应优先使用对应入口。选择旧 Clash 输出,有时会让转换服务删除不兼容节点。导入后节点数量明显减少,先对照输出格式,不要立即认定账号流量已经用完。

规则、DNS 与 TUN 字段差异

规则顺序与策略名称

DOMAIN、DOMAIN-SUFFIX、IP-CIDR、GEOIP 和 MATCH 是常见规则类型。规则从上到下匹配,先命中的规则决定去向;在末尾放置 MATCH 可以明确兜底策略。迁移时要同时检查规则引用的代理组是否存在,组名中的空格与大小写也应一致。

mihomo 提供更丰富的匹配能力,例如 GEOSITE 和逻辑规则,以及依平台、运行权限和功能设置生效的进程匹配。把包含这些规则的订阅交给老内核,可能产生解析错误。即使规则名称被识别,所需的地理数据或远程规则文件加载失败,也会影响最终结果。

规则提供者与旧脚本

rule-providers 用于加载规则集合,RULE-SET 用于引用它们。核对时应关注提供者的 behavior、文件格式和路径,而不是只看有没有这个顶层字段。Premium 的旧 script 配置不能直接当作 mihomo 的等价功能;迁移这种配置时,需要重新表达为受支持的规则与策略组。

DNS 不只是一个服务器地址

DNS 配置包括监听地址、上游服务器、enhanced-mode 和 fake-ip-filter 等内容。mihomo 还提供 DNS 策略与流量嗅探等相关能力。旧配置中的某个字段被接受,并不说明其默认行为与旧内核完全相同;迁移后应分别验证域名解析、规则命中与实际连接。

例如,启用 fake-ip 后,应用可能收到 198.18.0.0/16 范围内的虚拟地址,这不是服务端真实 IP。需要把应用流量接入同一内核,才能完成后续映射。只复制 DNS 配置,却没有配置好流量接管路径,可能导致“域名能解析、网页打不开”。

TUN 与系统代理

系统代理主要供遵循操作系统代理设置的应用使用;TUN 通过虚拟网络接口接管流量,通常需要管理员权限、服务模式或相应系统能力。Windows、macOS、Linux 的路由配置方式不同,安卓客户端则一般借助 VpnService 建立 VPN 接口。一个客户端界面里有 TUN 开关,不代表所有平台使用完全相同的实现。

tun.stack、auto-route 和 dns-hijack 等字段需要结合目标版本与平台检查。首次迁移建议先关闭 TUN,以系统代理确认节点能够连接,再逐项启用路由和 DNS 接管。这样能区分协议不兼容、权限不足与路由冲突。

内核版本确认与配置测试

图形客户端可以先检查「关于」页面中的内核信息,以及启动日志中的版本行;具体入口名称随客户端而异。不要把客户端自身的版本号直接填入内核问题报告。命令行部署可以使用下面两条命令:第一条显示版本,第二条检查指定配置,均应调用准备实际运行的那个二进制文件。

mihomo -v
mihomo -t -f ./config.yaml

如果系统没有把 mihomo 加入搜索路径,在 Linux 或 macOS 当前目录运行时可改用 ./mihomo;Windows 可在 PowerShell 中使用 .\mihomo.exe。当电脑上存在多个副本时,还要核对客户端启动路径,避免终端测试的是新内核,图形客户端仍在使用旧内核。

最小配置与端口验证

下面的 YAML 仅用于核对配置结构与本地监听,不含订阅节点,也不会提供远程代理出口。混合端口设为 7890,同时接受 HTTP 与 SOCKS5 代理请求;allow-lan: false 将访问范围限制在本机。把它保存为独立测试文件,不要覆盖正在使用的订阅。

mixed-port: 7890
allow-lan: false
bind-address: 127.0.0.1
mode: rule
log-level: info

proxy-groups:
  - name: 测试出口
    type: select
    proxies:
      - DIRECT
      - REJECT

rules:
  - DOMAIN-SUFFIX,example.com,测试出口
  - MATCH,DIRECT

配置检查成功后再启动内核,可用以下命令确认 HTTP 代理监听路径。示例默认选择 DIRECT,因此成功仅说明本地代理入口与直连路径可用,不证明订阅节点可用。若日志提示端口已占用,先关闭另一份正在运行的客户端,或统一更改测试端口与请求端口。

curl --proxy http://127.0.0.1:7890 --head https://example.com

配置检查通过也不保证网络连接成功:它不能替你确认节点密码、远端证书、订阅剩余流量或运营商 UDP 策略。后续仍要用真实订阅逐个测试,并查看连接日志。控制接口常见于 127.0.0.1:9090,它不是代理端口;需要启用时应设置访问密钥,并避免直接监听公网。

旧配置迁移与常见错误

迁移顺序

  1. 保留原配置。 单独备份本地覆写、规则文件与代理组选择,不在唯一副本上直接修改。
  2. 重新获取适配订阅。 优先使用服务商提供的 Meta 或 mihomo 输出,确认新旧配置中的节点数量与协议类型。
  3. 测试基础连接。 先使用系统代理,保持规则模式,确认至少一个真实节点可以访问目标网站。
  4. 合并自定义内容。 逐项加入规则提供者、DNS 与嗅探设置,每次改动后检查启动日志。
  5. 恢复 TUN 和自启。 基础链路稳定后再启用虚拟网卡与后台服务,重新启动设备验证持久设置。

报错分类

按错误位置缩小排查范围
现象优先检查处理方向
节点类型不支持节点 type 与实际内核版本选择匹配的订阅格式或支持该协议的内核
YAML 解析失败缩进、冒号、列表层级和引号使用空格缩进,按照日志行号修复结构
策略组不存在规则、组成员与代理组名称保持引用名称一致,恢复被转换遗漏的组
规则提供者加载失败资源地址、文件路径与格式确认资源可访问,并与声明的格式匹配
节点超时服务端状态、认证、TLS 和 UDP换节点交叉测试,结合日志排查连接阶段
TUN 开启后断网权限、路由、DNS 与其他 VPN暂时关闭 TUN,恢复基础连接后逐项检查

内核选型结论与常见问答

新安装以支持现有订阅、持续维护的客户端与内核为优先。需要 VLESS、Reality、Hysteria 2 或较新的分流能力时,通常应选择合适版本的 mihomo。旧环境若暂时不能迁移,要先确认当前功能需求和系统限制,再安排替换,不必为了名称变化反复导入同一份配置。

选型还要考虑硬件架构。Apple Silicon 与 Intel Mac 的安装包不同;Linux 的 x86_64 与 arm64 二进制也不能混用。图形客户端会额外承担桌面集成与更新管理,无界面服务器则可以使用命令行内核。需要进一步比较平台入口时,可以查看选型指南,安装与导入步骤见快速上手。

服务商只有 Clash Meta 订阅,mihomo 可以导入吗?

通常可以,因为两者属于同一条项目演进路线。但仍要核对订阅字段与实际内核版本。若出现解析错误,应根据日志检查具体字段,而不是只把订阅名称改成 mihomo。

更换内核之后,需要重新购买订阅吗?

内核与订阅账号是两个层次。原账号是否可用取决于服务商的协议、认证与设备限制。一般先获取适配新内核的订阅格式即可,不应把格式不兼容直接当作账号失效。

能否把 mihomo 文件放进任意旧客户端替换内核?

不能保证。客户端还依赖启动参数、控制 API、文件目录和服务管理方式。优先使用客户端提供的内核切换或更新入口;没有明确替换支持时,选择与 mihomo 集成的客户端更容易保持配置和后台服务一致。

内核升级后,节点测试延迟变高说明什么?

先确认测试地址、超时时间、节点与网络是否一致。对比时应在同一网络下连续测试,并同时观察实际网页加载和连接错误。单次延迟变化不足以证明内核性能退步,也不能用低延迟数值替代协议兼容检查。