Mihomo 内核 · 持续活跃迭代中

Clash Meta · Mihomo 原版代理核心

Clash Meta(基于 Mihomo 内核)是 Clash 生态中最具活力的开源代理引擎。 作为整个 Clash 工具链的底层核心,Mihomo 负责所有网络流量的协议解析、规则匹配、 节点调度与数据转发。它向上服务于 Clash Verge 等 GUI 客户端,向下直接与操作系统网络栈交互, 是连接用户与代理世界的"翻译官"和"调度中心"。支持 VLESS、Hysteria2、VMess、Trojan、 Shadowsocks、TUIC 等十余种主流代理协议,并提供 TUN 模式、DNS 增强、Rule Provider、 Fake-IP 等企业级网络管理能力。

12+

支持协议类型

4

全平台内核

规则自定义能力

⚡ Mihomo 内核核心能力

🔀 智能分流引擎 — 基于域名、IP、GEOIP 的多维度规则匹配
🔄 多协议兼容 — VLESS / Hysteria2 / VMess / Trojan / SS / TUIC
📡 TUN 全局代理 — 系统级网络接管,支持 UDP 与 IPv6
🔒 DNS 增强 — DoH / DoT 加密解析 + Fake-IP 防泄露
📋 Rule Provider — 远程规则集动态加载,独立更新

Mihomo 内核深度解析

理解 Mihomo 的架构设计、与传统 Clash 的本质差异,以及为什么它已成为社区的主流选择。

Mihomo 是什么?

Mihomo 是 Clash Meta 项目的核心代理引擎,由开源社区在 Clash Premium 源码基础上 持续演进而来。它的名字源于"Mihomo + Clash = Mihomo",寓意着 对原始 Clash 的继承与超越。Mihomo 内核是整个 Clash 代理工具链的"心脏"——它负责解析配置文件、 建立加密隧道、执行规则匹配、调度节点流量,并向上层客户端(如 Clash Verge)提供 API 接口。 没有 Mihomo,就没有 Clash Verge、Clash for Android 等图形化客户端的运行基础。

Mihomo 的设计哲学是"协议无关、规则驱动"。它不绑定任何特定的代理协议, 而是通过统一的配置接口(YAML)来描述代理链路。无论是传统的 Shadowsocks 还是新一代的 VLESS、 Hysteria2,只要按照规范编写配置,Mihomo 就能无缝适配。这种架构使得它天然具备极强的扩展性—— 新协议的支持只需增加对应的出站模块,而无需修改核心调度逻辑。

Meta 与传统 Clash 的核心区别

传统 Clash(包括 Clash Premium)在很长一段时间内是代理工具的事实标准。但随着网络环境的演变 和新型协议的出现,原版 Clash 的更新节奏逐渐放缓。Clash Meta 正是在这一背景下诞生, 它在保持与 Clash 配置格式兼容的同时,进行了全方位的增强。

🔑 关键认知: Clash Meta 不是 Clash 的"分支"或"修改版",而是 独立的继任者。Mihomo 内核从架构层面重新设计了协议栈、DNS 模块和规则引擎, 同时又保证了用户已有的 YAML 配置文件可以无缝迁移。
能力维度 Clash Premium Clash Meta (Mihomo)
VLESS 协议 不支持 ✓ 完整支持
Hysteria2 协议 不支持 ✓ 完整支持
TUIC 协议 不支持 ✓ 完整支持
TUN 模式 基础支持 ✓ 增强支持(IPv6、UDP 优化)
DNS 模块 基础 DNS ✓ DoH/DoT/Fake-IP 增强
Rule Provider 有限支持 ✓ 全功能远程动态加载
Snell 协议 不支持 ✓ 完整支持
社区活跃度 已停滞 ✓ 持续活跃更新
配置兼容性 基准 ✓ 向下兼容 Clash 配置

为什么现在主流都转向 Meta?

首先,协议支持是硬需求。随着 VLESS + XTLS Vision、Hysteria2 等新一代协议 的普及,原版 Clash 已无法满足用户对高速、低延迟代理的需求。Mihomo 对这些协议的原生支持 使其成为追求极致性能用户的首选。

其次,社区生态的迁移。Clash Verge Rev、Clash for Android 等主流客户端 已全面切换至 Mihomo 内核。这意味着使用这些客户端的用户实际上已经在使用 Clash Meta。 开发者社区也将精力集中在 Meta 内核的优化上,原版 Clash 的更新事实上已停滞。

第三,高级功能的持续迭代。Mihomo 在 TUN 模式、DNS 增强、Rule Provider 等方面的持续改进,使其在复杂网络环境下的表现远超原版。例如,增强型 TUN 模式支持 IPv6 双栈、 UDP 流量的精细化控制;DNS 模块支持按规则分流 DNS 查询,有效防止 DNS 泄露。

最后,开源社区的信任。Mihomo 的代码完全开源,托管在 GitHub 上, 任何人都可以审查其安全性。相比闭源的商业代理软件,开源意味着透明与可信—— 没有隐藏后门,没有数据收集,用户可以放心地将网络流量交给它管理。

⚡ 迁移提示: 如果您正在使用传统 Clash 的 YAML 配置文件, 可以直接将其用于 Clash Meta,无需任何修改。Mihomo 内核完全向下兼容 Clash 配置格式, 迁移成本几乎为零。同时,您将获得 VLESS、Hysteria2、TUIC 等新协议的原生支持。

TUN Network Stack · 系统级网络接管

TUN 模式是 Clash Meta 最强大的功能之一,通过虚拟网卡实现真正意义上的全局透明代理。

🖧

系统级流量接管

TUN 模式在操作系统网络层创建虚拟网络接口,拦截所有出站流量(包括不支持代理设置的应用程序), 将其引导至 Mihomo 内核进行处理。实现真正的全局代理,无任何应用能绕过。

📡

完整 UDP 支持

不同于传统 SOCKS5 代理对 UDP 的有限支持,TUN 模式可完整转发 UDP 数据包。 这意味着 QUIC、HTTP/3、在线游戏、VoIP 通话等依赖 UDP 的应用都能获得稳定的代理加速。

🔒

DNS 增强与防泄露

配合 TUN 模式,Mihomo 可劫持系统 DNS 请求,通过 DoH 或 DoT 加密通道进行解析。 结合 Fake-IP 机制,在提升解析速度的同时彻底杜绝 DNS 泄露风险,保护隐私安全。

🎭

Fake-IP 加速机制

Fake-IP 模式为每个域名分配一个虚拟 IP 地址,将 DNS 解析与连接建立并行处理, 显著减少首包延迟。对于规则匹配场景,Fake-IP 还能让域名规则在 IP 层面生效, 实现更精准的分流控制。

📱 应用流量
🔷 TUN 虚拟网卡
🧠 Mihomo 内核
规则匹配 DNS 解析 节点选择
🌐 代理出口

Rule Provider · 动态规则集管理

Rule Provider 是 Clash Meta 最具创新性的规则管理机制,让分流规则的维护变得前所未有的灵活。

什么是 Rule Provider?

传统的 Clash 配置将所有规则直接写在主配置文件中。当规则数量增长到成百上千条时, 配置文件变得臃肿不堪,更新规则需要修改整个配置。Rule Provider 彻底改变了这一局面—— 它允许将规则集拆分为独立文件,并从远程 URL 动态加载。 规则集可以独立更新,而无需触碰主配置文件。这意味着您可以订阅社区维护的高质量规则集, 并自动获得持续更新。

支持的规则类型

🌍 GEOIP 🌐 DOMAIN 🔢 IP-CIDR 📜 SCRIPT 🏷️ DOMAIN-SUFFIX 🔤 DOMAIN-KEYWORD 📋 IP-ASN 🎯 GEOSITE

GEOIP 规则基于 MaxMind 地理位置数据库,可精确识别 IP 所属国家/地区, 实现按地区分流。例如,将所有中国 IP 的流量走直连,境外 IP 走代理。

DOMAIN 规则按域名精确匹配或后缀匹配,适合针对特定网站的分流策略。 例如,将 Netflix 的域名规则指向专门的流媒体节点组。

IP-CIDR 规则按 IP 段匹配,适合处理没有域名特征的流量。 常用于内网 IP 段直连、特定 VPS IP 段代理等场景。

SCRIPT 规则是 Mihomo 的高级特性,允许使用脚本语言(如 Starlark) 编写自定义匹配逻辑,实现条件判断、字符串处理等复杂规则,灵活性最高。

💡 最佳实践: 推荐使用社区维护的规则集(如 Loyalsoldier 的 geoip 和 geosite 规则),通过 Rule Provider 远程加载。这样可以自动获得域名和 IP 数据库的持续更新, 无需手动维护庞大的规则列表。

YAML 配置实验室

通过实际配置示例理解 Clash Meta 的策略组与规则体系。以下是一个典型的多策略组配置片段。

策略组配置示例

以下 YAML 展示了 Clash Meta 中最常用的几种策略组类型:自动测速、手动选择、故障转移。

# Clash Meta 策略组配置示例 proxy-groups: # 自动测速组:自动选择延迟最低的节点 - name: "🚀 Auto-Fastest" type: url-test proxies: - "🇭🇰 HK-01" - "🇯🇵 JP-02" - "🇸🇬 SG-03" url: "https://www.gstatic.com/generate_204" interval: 300 # 手动选择组:用户手动切换节点 - name: "🌐 Proxy" type: select proxies: - "🚀 Auto-Fastest" - "🇭🇰 HK-01" - "🇯🇵 JP-02" - "🇸🇬 SG-03" - "DIRECT" # 故障转移组:节点失效时自动切换 - name: "🛡️ Fallback" type: fallback proxies: - "🇭🇰 HK-01" - "🇯🇵 JP-02" url: "https://cp.cloudflare.com/" interval: 600

上述配置定义了三个策略组:url-test 组自动测速并选择延迟最低的节点, 适合日常使用;select 组允许用户手动切换,适合需要固定节点的场景; fallback 组在首选节点失效时自动切换到备用节点,保证连接的高可用性。

🧪 实验建议: 您可以将上述配置片段复制到自己的 YAML 文件中, 替换节点名称后直接使用。Clash Meta 的策略组系统支持嵌套引用—— 一个策略组可以作为另一个策略组的成员,实现层级化的流量调度。

获取 Meta 工作环境

选择适合您开发与使用场景的 Mihomo 内核运行环境,每个环境均针对特定平台深度优化。

以上所有内核版本均来自 Mihomo 官方 GitHub Releases,经校验签名,安全可靠。 如需 GUI 图形界面,请搭配 Clash Verge 客户端使用。

Clash Meta 核心常见问题

关于 Mihomo 内核安装、配置与使用的精选问答。

如何单独安装 Mihomo 内核(不装 GUI)?
访问 Mihomo 的 GitHub Releases 页面或本站下载中心,下载对应平台的二进制文件。 Windows 用户下载 .exe.zip,Linux/macOS 用户下载对应架构的 压缩包。解压后通过命令行运行,配合您自己的 YAML 配置文件即可启动代理服务。 内核本身是单文件可执行程序,无需安装依赖。
Clash Meta 的 TUN 模式需要额外驱动吗?
Windows 系统需要安装 Wintun 驱动(Mihomo 安装包通常已内置), macOS 和 Linux 系统利用系统原生 TUN/TAP 接口,无需额外驱动。 Linux 用户需确保内核支持 TUN 模块(大多数发行版默认开启), 可通过 modprobe tun 检查。Android 设备需 root 权限或使用 VPN 模式替代。
Rule Provider 的规则集从哪里获取?
社区维护的高质量规则集包括 Loyalsoldier 的 geoipgeosite 系列、ACL4SSR 的全分组规则等。这些规则集托管在 GitHub 上,可通过 Raw URL 直接引用。 在 YAML 配置中使用 rule-providers 字段指定远程 URL, Mihomo 会自动下载并缓存规则集,按设定的间隔更新。
Meta 内核的性能开销有多大?
Mihomo 内核采用 Go 语言编写,内存占用通常在 30-80MB 之间(取决于规则集大小和并发连接数)。 CPU 占用在常规使用场景下几乎可以忽略不计(低于 1%)。 即使在千兆网络满载转发时,CPU 占用通常也不超过 15%。 相比 VPN 类方案,Mihomo 的资源效率极高,非常适合在 VPS 或低配设备上长期运行。
Mihomo 支持 IPv6 吗?
完全支持。Mihomo 的 TUN 模式原生支持 IPv4/IPv6 双栈,可以代理 IPv6 流量, 也支持通过 IPv6 地址连接代理服务器。在配置中可通过 ipv6: true 开启 IPv6 支持,规则匹配同样适用于 IPv6 地址。对于需要访问 IPv6-only 资源的用户来说,这是重要的能力。

准备深入定制您的代理核心了吗?

前往配置中心,获取完整的 YAML 配置模板与规则集,解锁 Mihomo 内核的全部潜力。

📐 进入配置规则中心