三个名字,一条血脉
Clash 这个名字今天指向三个东西:已经停更的原版核心、曾经活跃的 Clash Meta 分支,以及正在维护的 mihomo。三者不是竞争关系,而是同一份代码在不同时间段的三个名字。弄清这条传承线,才能看懂客户端设置里的内核选项,也能判断一份旧教程是否还适用。
Clash 原版:开创与停更
原版 Clash 由 Dreamacro 用 Go 编写,以 GPL-3.0 协议开源,奠定了「订阅 + 规则分流」的基本范式:proxies 定义节点,proxy-groups 定义策略组,rules 决定流量走向。2023 年 11 月,作者删除了 GitHub 仓库,发布页与文档一并下线,版本号停留在 v1.18.0,此后再无更新。同期终止的还有闭源的 Premium 增强核心——TUN、脚本等能力曾由它独占。
Clash Meta:社区接力的分支
在原版停更之前,MetaCubeX 团队已经 fork 出 Clash.Meta,围绕新协议与内核能力持续迭代:VLESS、Hysteria、TUIC、WireGuard 等协议支持,内置 TUN,sniffer 嗅探,都是在这条分支上出现的。原版仓库消失后,Clash.Meta 成为事实上的继任者,大量客户端把内置核心换成了它。
mihomo:改名后的同一项目
2024 年初,Clash.Meta 正式更名为 mihomo,仓库迁移至 MetaCubeX/mihomo,首个以新名字发布的稳定版为 v1.18.0,版本号承接 Clash.Meta 的 v1.17 系列。改名不涉及代码与维护者变化,配置格式保持兼容。今天看到「Meta 内核」与「mihomo 内核」两种说法,指的是同一条开发线;Clash Verge Rev、FlClash、Clash Meta for Android、ClashX Meta、Clash Plus 等活跃客户端内置的都是它。
协议支持对比
内核差异最直观的部分是节点协议。订阅里出现 vless://、hysteria2://、tuic:// 开头的链接时,原版核心无法解析,节点列表会直接缺失或报错;mihomo 可以正常识别。
| 协议 | Clash 原版 | Clash Meta / mihomo |
|---|---|---|
| Shadowsocks | 支持 | 支持 |
| ShadowsocksR | 支持 | 支持 |
| VMess | 支持 | 支持 |
| Trojan | 支持 | 支持 |
| Snell | 支持 | 支持 |
| SOCKS5 / HTTP | 支持 | 支持 |
| VLESS | — | 支持 |
| Hysteria / Hysteria2 | — | 支持 |
| TUIC | — | 支持 |
| WireGuard | — | 支持 |
| SSH | — | 支持 |
结论很直接:订阅来自近两年的服务商,大概率含有原版核心不认识的协议,选 mihomo 内核的客户端才能用全节点。
配置字段与规则引擎差异
mihomo 沿用原版的三段式骨架,旧的 config.yaml 大多可以原样导入。差异集中在规则类型与一批新增字段上。
- 规则类型:原版开源核心支持 DOMAIN、DOMAIN-SUFFIX、DOMAIN-KEYWORD、GEOIP、IP-CIDR、SRC-PORT、DST-PORT、PROCESS-NAME、MATCH 等;mihomo 追加 GEOSITE、RULE-SET、IP-ASN、IP-SUFFIX、PROCESS-PATH、NETWORK、UID、DSCP,并引入 AND、OR、NOT 逻辑组合与 SUB-RULES 子规则,复杂分流不必再堆叠长规则清单。
- 规则集:
rule-providers在两边都支持 http 与 file 来源、domain / ipcidr / classical 三种 behavior;mihomo 额外提供 inline 内联类型与format字段,可以把少量规则直接写进配置。 - 订阅拉取:mihomo 的
proxy-providers支持override统一改写节点字段,支持自定义请求头,订阅需要特定 User-Agent 时不必借助转换工具。 - 实验字段:sniffer 嗅探、
unified-delay、tcp-concurrent、find-process-mode、global-client-fingerprint、geodata-mode等字段只存在于 mihomo。
注意:含 mihomo 专属字段的配置不能回退给旧核心——原版启动时会因 unknown field 拒绝加载。跨内核迁移配置前,先确认目标核心认识的字段清单。
TUN 模式:从 Premium 独占到内核内置
TUN 用虚拟网卡接管整机流量,让不走系统代理的程序(命令行工具、游戏、部分沙盒应用)也进入分流。原版开源核心没有 TUN,这项能力属于闭源 Premium,随项目停更一起消失。
mihomo 把 TUN 做进了开源内核,一段配置即可开启:
tun:
enable: true
stack: system
auto-route: true
auto-detect-interface: true
dns-hijack:
- any:53
stack 可选 system、gvisor、mixed,分别对应系统网络栈、用户态协议栈与混合模式;auto-route 自动下发路由表,dns-hijack 把发往 53 端口的 DNS 请求收进内核处理,避免程序绕过代理直连 DNS。图形客户端一般把这段配置做成了开关,打开「增强模式」或「TUN 模式」即可,不必手写。
维护状态与选型建议
| 项目 | 仓库 | 现状 |
|---|---|---|
| Clash 原版 | Dreamacro/clash | 2023 年 11 月仓库删除,停止维护 |
| Clash Meta | MetaCubeX/Clash.Meta | 已更名,不再单独演进 |
| mihomo | MetaCubeX/mihomo | 活跃维护,新协议与修复都在此落地 |
选型按三条判断:
- 新装机:直接选内置 mihomo 内核的客户端。本站下载页各平台首推客户端均为 mihomo 内核,下载后导入订阅即可。
- 旧客户端迁移:配置先原样导入,观察日志;出现 unknown field 或 hysteria2、vless 节点缺失时,换 mihomo 内核客户端,而不是删改订阅。
- 阅读旧教程:文中出现「Clash.Meta」「Meta 内核」字样,按 mihomo 理解;出现「Premium 核心」字样,对应能力在 mihomo 里已经开源内置。
内核是引擎,订阅是油。换内核不动订阅链接,节点照旧从订阅地址更新,分组与规则也随订阅或本地配置保留。
最后提醒一点:内核版本并非越新越好,稳定版优先。客户端内置内核通常经过适配验证,手动替换内核文件前,先核对客户端要求的最低版本与 ABI 架构,避免升级后无法启动;遇到异常时回退到客户端自带版本,是最快的止血办法。
常见问题
原来的 Clash 配置还能用吗?
大部分可以。mihomo 兼容原版三段式配置,直接导入即可;只有写了 mihomo 专属字段的配置无法反向回退给原版核心。
客户端设置里同时出现 Clash 与 mihomo 两个内核选项,选哪个?
选 mihomo。Clash 选项保留只是为了兼容旧配置,协议支持与修复都已停止,新协议节点在原版内核下无法使用。
改名后订阅链接要换吗?
不用。内核更替与订阅地址无关,订阅由服务商维护,客户端照常定时更新节点列表。
mihomo 是收费软件吗?
不是。mihomo 延续 GPL-3.0 开源协议,源码公开,免费使用,各平台基于它的客户端也多为开源项目。