内核时间线:原版 Clash → Clash Meta → mihomo

Clash 内核是负责加载配置、匹配规则、转发流量的核心进程,Clash Verge、ClashX 这类图形客户端本质上是套在内核外面的操作界面。界面可以换,内核只有两条线:已经停更的原版 Clash,和社区接力维护的 Clash Meta(现名 mihomo)。分清这两条线,是选客户端、读教程、排查问题的前提。

  • 原版 Clash:由 Dreamacro 以 Go 语言编写,GPL-3.0 开源。2023 年 11 月作者删除仓库,项目终止;同期的闭源增强版 Clash Premium(含 TUN、脚本规则)一并停更。
  • Clash Meta:MetaCubeX 团队基于原版公开代码继续开发,补齐新协议、开源 TUN、域名嗅探等能力,社区通称 Meta 内核。
  • mihomo:2023 年底 Clash Meta 更名为 mihomo,版本号从 v1.18 起延续递增,是当前唯一活跃维护的主线内核,主流新客户端全部内置它。

原版 Clash:停更时的功能基线

原版 Clash 定格在 2023 年 11 月,它的能力清单可以视作所有 Clash 系内核的公共起点:

  • 代理协议:HTTP、SOCKS5、Shadowsocks、ShadowsocksR、VMess、Trojan、Snell,入站出站齐全。
  • 规则分流:DOMAIN、DOMAIN-SUFFIX、DOMAIN-KEYWORD、GEOSITE、IP-CIDR、GEOIP、SRC-IP-CIDR、DST-PORT、MATCH 等类型;策略组有 select、url-test、fallback、load-balance、relay 五种。
  • DNS 模块:nameserver、fallback、enhanced-mode(fake-ip / redir-host),支持按域名分配解析通道。
  • 闭源 Premium 增强:TUN 全局接管、rule-providers 规则集(RULE-SET)、PROCESS-NAME 进程匹配、SCRIPT 脚本规则,这部分代码从未公开。

停更的影响不止"没有新功能"。Hysteria2、TUIC、Reality 等 2023 年后普及的协议一律无法使用;Go 运行时与加密组件停留在旧版本,安全问题不会再有修复;新系统上的兼容性也无人跟进。原版内核今天唯一的价值,是兼容那些多年未改的老配置。

Clash Meta 与 mihomo:社区主线的扩展清单

mihomo 在原版基线上做了成体系的扩展,增量集中在四个方面。

协议面

新增 VLESS(含 XTLS Vision 流控与 Reality)、Hysteria、Hysteria2、TUIC v5、WireGuard、SSH 出站,新版本陆续加入 AnyTLS 等协议;Shadowsocks、VMess、Trojan 等老协议完整保留,旧节点照常可用。

TUN 面

把 Premium 闭源的 TUN 以开源方式重做,stack 可选 system、gvisor、mixed 三档,配套 auto-route 自动接管路由、auto-detect-interface 自动选定出口网卡、dns-hijack 接管系统 DNS 查询。全局接管不再依赖闭源组件。

嗅探与规则面

sniffer 域名嗅探从 TLS 握手的 SNI 或 HTTP 请求的 Host 中还原真实域名,解决 fake-ip 场景下按 IP 规则失配的问题。规则侧新增 AND、OR、NOT 逻辑组合与 SUB-RULES 子规则,rule-providers 增加 inline 内联行为与 mrs 二进制格式,PROCESS-NAME 进程匹配开源化并覆盖全平台。

DNS 与调度面

DNS 新增 respect-rules(按分流规则决定解析走向)、proxy-server-nameserver(经代理解析节点域名)、direct-nameserver(指定直连解析通道)。调度侧提供 unified-delay 统一延迟统计、tcp-concurrent 并发拨号、find-process-mode 进程查找、global-client-fingerprint TLS 指纹等调优项。外部控制 API 与原版保持兼容,各类面板直接可用。

功能对照:原版 Clash 与 mihomo

对比项原版 Clash(含 Premium)Clash Meta / mihomo
维护状态2023 年 11 月停更活跃维护,版本持续递增
开源情况核心 GPL-3.0,TUN 等增强闭源GPL-3.0 全量开源
代理协议SS、SSR、VMess、Trojan、Snell、HTTP、SOCKS5原版全量,另加 VLESS/Reality、Hysteria2、TUIC、WireGuard 等
TUN 模式仅闭源 Premium 提供内置开源,system/gvisor/mixed 三种 stack
域名嗅探sniffer 内置,支持 TLS 与 HTTP
规则集rule-providers 为 Premium 闭源功能进程匹配PROCESS-NAME 仅 Premium 支持开源化,全平台可用
DNS 调优nameserver、fallback、enhanced-mode另加 respect-rules、proxy-server-nameserver、direct-nameserver
逻辑规则AND / OR / NOT 组合与 SUB-RULES 子规则
外部控制 APIRESTful API + WebSocket接口兼容,面板无缝迁移

结论很直接:mihomo 是原版 Clash 的严格超集,配置语法向下兼容。原版能跑的订阅与配置,mihomo 全部能跑;反过来不成立——用了 VLESS、Hysteria2、TUN 开源栈的配置,放回原版内核会直接报错或被忽略。

配置差异:迁移时必改的几处字段

从原版迁移到 mihomo,绝大多数字段原样可用,但有四处容易踩坑:

  • external-controller 写法不变:面板地址、secret 鉴权格式一致,迁移后先确认面板能连上内核,再谈其他。
  • TUN 配置结构不同:原版 Premium 的 TUN 字段与 mihomo 开源 TUN 的字段名、层级不同,旧配置里的 tun 段建议按 mihomo 文档重写,开启 auto-routeauto-detect-interface 可省掉大部分手工路由。
  • rule-providers 格式扩展:原版 Premium 只认 yaml/text 规则集,mihomo 额外支持 inline 与 mrs。引用第三方规则集时留意 behavior 与 format 两个字段是否匹配。
  • fake-ip 与嗅探联动:mihomo 默认行为更接近"先嗅探再匹配",如果旧配置依赖特定 fake-ip 行为,检查 sniffer 与 fake-ip-filter 的组合,避免域名规则被绕过。

配置兼容性速查

纯订阅 + 基础规则的老配置,直接喂给 mihomo 即可运行;含 TUN、rule-providers、SCRIPT 规则的配置,迁移前先对照 mihomo 文档逐段核对,SCRIPT 规则在 mihomo 中由子规则与脚本策略组替代。

选型建议:按场景对号入座

新装用户

直接选内置 mihomo 内核的客户端,不碰原版。新协议、新系统、新规则集都只在 mihomo 线上更新,选原版等于从第一天起就放弃后续维护。

老配置续用

订阅里只有 SS、VMess、Trojan 等老协议,且配置多年未动:可以暂时留在原版,但建议尽快迁移到 mihomo——迁移成本主要是 TUN 与规则集两段,一次改完长期受益。

需要全局接管(TUN)

游戏加速、UWP 应用、不服从系统代理的程序,选 mihomo 的开源 TUN,stack 用 mixed 兼顾兼容与性能;不要再依赖闭源 Premium 的 TUN,后续无人修复。

订阅含新协议

节点列表里出现 VLESS Reality、Hysteria2、TUIC 任意一种,内核只能是 mihomo,原版直接无法解析。这也是判断手头的客户端内核新旧的最快方法:导进订阅,看新协议节点能否出现。

多客户端共存

同一台机器装多个客户端时,确认它们各自的内核版本,避免一个客户端改了系统代理或路由,另一个基于旧内核的客户端按旧逻辑接管,造成规则互相覆盖。

版本识别:三秒判断内核新旧

  1. 打开客户端的"关于"或"内核信息"页,看内核名称与版本号。显示 Clash 且版本停在 2023 年的,是原版;显示 mihomoClash Meta 且版本号 v1.18 及以上,是社区主线。
  2. 看协议支持列表:有 Hysteria2、VLESS、TUIC 选项的,是 mihomo;只有 SS/SSR/VMess/Trojan 的,是原版。
  3. 看 TUN 设置项:有 stack、auto-route、dns-hijack 字段的,是 mihomo 开源 TUN;只有一个 TUN 开关、无细项的,多为 Premium 闭源实现。

内核选错的表现很典型:订阅导入后节点大面积缺失、TUN 开了不生效、规则匹配结果和教程对不上。遇到这三类症状,先核对内核线,再排查配置。