# 代理内核是什么，mihomo、sing-box 和 Xray 怎么分工

> 来源 https://jichangtuijianweb.co/kepu/daili-neihe-shi-shenme/，更新于 2026 年 9 月 20 日。机场推荐网（https://jichangtuijianweb.co/）原创内容。
> 分类 协议与内核。

代理内核是客户端界面背后收发流量的程序，接住连接、按规则分流、按协议封装后发给节点。mihomo、sing-box、Xray 最常见，配置格式互不通用，订阅要跟着内核选。

v2rayN 的名字里带着 V2Ray，它的 wiki 上列出的可用内核却有十一种，Xray、v2fly、mihomo、sing-box 都在里面。Clash Verge Rev 名字里有 Clash，README 写的是内置 Clash.Meta 内核，也就是 mihomo。FlClash 在 GitHub 上的简介说自己基于 ClashMeta。

客户端的名字多半只交代了出身。真正收发流量的是另一个程序，习惯上叫内核。它没有窗口，读一份配置文件干活。你点开的那个界面负责拉订阅、排节点、画流量曲线，然后把配置交给内核去跑。我把 mihomo、sing-box、Xray 三家的文档和发布页对着翻了一遍，下面顺着一条连接的走向，看它们各自在干什么。

## 一个请求进了内核，要先后过三关

拿浏览器打开一个境外网站来说。

第一关在本机。内核启动以后开几个端口等着，mihomo 文档里有一种 `mixed-port`，叫混合端口，同一个端口同时收 HTTP(S) 和 SOCKS5 两种请求。客户端把系统代理指到这个端口，浏览器的请求就送进来了。有的程序不理系统代理，得开 [TUN 模式](https://jichangtuijianweb.co/cidian/#tun)，让内核建一张虚拟网卡，把整台机器的流量都接过去。两种入口怎么选，[某个 App 不走代理](https://jichangtuijianweb.co/kepu/app-bu-zou-daili/)那篇另有细说。

第二关是规则表。请求进来以后，内核拿它的域名或 IP 去对一张规则表，从第一行往下读，碰上第一条对得上的就照办。mihomo 的一行规则长这样。

```
DOMAIN-SUFFIX,google.com,auto
```

google.com 和它下面的子域名，都交给一个叫 auto 的策略组。表的最后一行通常是 `MATCH`，文档对它的解释只有一句，匹配所有请求，无需条件。前面哪条都没对上的连接，最后都落到它手里。Xray 的路由文档换了个说法，意思相同，从上到下依次判断，遇到第一个生效的规则，就把连接转给这条规则指定的出站。

第三关才离开本机。规则选中了某个节点，内核按这个节点的协议把数据包好，发往机场的服务器。VLESS、Trojan、Hysteria2 的握手和加密各有一套，内核认得这个协议才包得出来。订阅里混进一个内核不认识的节点类型，这个节点就卡在这一关。

域名解析也归内核管。三家的配置里都单独有一块 `dns`，域名交给谁解析、解析结果怎么参与分流，都在这里定。

## 同样三关，三家的配置写在不同位置

三个内核干的是同一套活，配置文件却各写各的。mihomo 读 YAML，这套写法从 Clash 继承而来。sing-box 和 Xray 都读 JSON，两家的键名照样对不上。

| 要办的事 | mihomo | sing-box | Xray |
|---|---|---|---|
| 本机的入口 | `mixed-port`、`tun` 等 | `inbounds` | `inbounds` |
| 机场的节点 | `proxies` | `outbounds` | `outbounds` |
| 节点分组与自动选择 | `proxy-groups` | `outbounds` 里的 `selector`、`urltest` | `routing` 里的 `balancers` |
| 分流规则 | `rules` | `route.rules` | `routing.rules` |
| 规则都没命中时 | 最后一条 `MATCH` | `route.final`，留空就用第一个出站 | 列表里的第一个出站 |
| 对外的控制接口 | `external-controller` | `experimental` 里的 `clash_api` | `api` |

第二行正好能解释一种报错。机场给的 Clash 订阅是一份 YAML，节点都挂在 `proxies` 下面。sing-box 客户端打开它，要找的是 `outbounds`，一样也找不到，只能报格式错误。订阅格式是跟着内核走的。

表格末行 sing-box 那一格有点意思。这一块在 sing-box 文档里就叫 Clash API，开了以后内核会提供一套 RESTful 接口，网页面板可以连上来切节点、看连接。文档给的默认面板下载地址，指向 MetaCubeX 名下的 Yacd-meta 项目，MetaCubeX 正是维护 mihomo 的那个组织。界面和内核之间靠这种本机接口说话，接口对得上，界面就能跨内核用。文档另有一句提醒，这个接口要是监听 0.0.0.0，务必设置 secret。

## VLESS、Vision 和 REALITY 都出自 Xray

Xray-core 的 GitHub 仓库建于 2020 年 11 月 9 日，许可证是 MPL-2.0。官网给自己的交代是，项目起步时从 v2ray-core 分出来，这些年一直自己往前走，别拿它当 v2ray-core 的完全兼容替身。首页把 XTLS 和 VLESS 称作原创协议。今天订阅里常见的 VLESS、XTLS Vision、REALITY，都是这个项目拿出来的，[REALITY 与 XTLS Vision](https://jichangtuijianweb.co/kepu/vless-reality-vision/) 那篇讲了它们各管哪一层。

它的出站协议清单不长。文档里一共 12 项，去掉 freedom、blackhole、dns、loopback 这几个管直连、丢弃和内部转发的，能连机场节点的是 VLESS、VMess、Trojan、Shadowsocks、Hysteria、WireGuard，外加 HTTP 和 SOCKS。Hysteria 那一页写明版本必须为 2。TUIC 和 AnyTLS 不在清单上。

Xray 拿年月日当版本号。GitHub 上标着 Latest 的正式版是 2026 年 3 月 27 日的 v26.3.27，此后一直到 9 月的 v26.9.9，一共又发了 13 个版本，全部标着预发布。电脑上的 [v2rayN](https://jichangtuijianweb.co/kehuduan/v2rayn/) 和安卓上的 v2rayNG 都能跑 Xray，本站资料库里内核一栏标 Xray 的有 17 款。

## Clash 格式的订阅，今天由 mihomo 来读

mihomo 以前叫 Clash Meta，由 MetaCubeX 维护，GitHub 上的仓库是 2021 年 5 月 20 日建的。README 的致谢名单里排头的是 Dreamacro/clash，它读的 YAML 也沿用了 Clash 定下的键名。本站资料库里内核标 mihomo 的客户端有 44 款，三家里最多，[Clash Verge Rev](https://jichangtuijianweb.co/kehuduan/clash-verge-rev/)、FlClash、Clash Party 都在其中。

mihomo 文档里的节点类型列得很长，Shadowsocks、VMess、VLESS、Trojan、Hysteria2、TUIC、AnyTLS 都有，mieru、Snell 这些少见的也有。文档首页注明整套文档按最新的 Alpha 分支写，所以清单里有的类型未必已经进了正式版。正式版最新是 2026 年 9 月 14 日的 v1.19.31。

它的文档站挂着一份客户端清单，光 Windows 一栏就有 22 个名字。清单上方的声明写得明白，这些客户端的开发不归内核团队管，里面的内核未必是最新版，不是内核引起的毛病要去找各家客户端。内核发了新版，客户端什么时候跟上，得看各家自己。mihomo 的来历和配置细节放在 [mihomo 内核](https://jichangtuijianweb.co/kepu/mihomo-neihe/)那篇。

## sing-box 从内核一路做到了各平台客户端

sing-box 的 GitHub 简介写的是 The universal proxy platform。仓库建于 2022 年 6 月 30 日，按 GPL 第 3 版或其后任意版本授权，README 在许可证之后另加一条，衍生作品未经同意不得用它的名字，也不得暗示与它有关联。

sing-box 的开发者自己给三类平台都出了图形客户端，官网列的是安卓一个，iPhone、Mac 和 Apple TV 共用一个，Windows 和 Linux 合用一个桌面版。mihomo 那边，MetaCubeX 自己维护的图形客户端是安卓上的 Clash Meta for Android，电脑上常见的 Clash Verge Rev、Clash Party 都出自别的 GitHub 组织。sing-box 出站类型的清单也比 Xray 长出一截，Hysteria2、TUIC、AnyTLS、ShadowTLS、NaiveProxy、Snell 都在上面。

最新正式版是 2026 年 9 月 15 日的 v1.14.1，9 月 18 日又出了 v1.15.0-alpha.6 测试版。第三方客户端里 Hiddify、Karing 都用它，本站资料库标 sing-box 内核的一共 32 款。它的 JSON 配置怎么拆开读，见 [sing-box 内核](https://jichangtuijianweb.co/kepu/sing-box-neihe/)那篇。

## 订阅为什么分成好几种格式

机场如果同时给出几种订阅，区别就在前面那张表里。给 mihomo 系客户端的是 Clash 格式的 YAML，节点、策略组、分流规则一份文件带齐。给 sing-box 的是它自己的 JSON。Xray 系客户端导入的多是一行一个节点的分享链接，开头写着 `vless://` 或 `vmess://`。

这种链接的写法有出处。2020 年 12 月 19 日，DuckSoft 在 Xray 仓库发起讨论，标题是 VMessAEAD / VLESS 分享链接标准提案，给出的格式是 `protocol://$(uuid)@remote-host:remote-port?参数#备注`。一行里装着地址、端口、UUID、传输方式和 TLS 参数，没有分流规则的位置。用这类链接的客户端，分流靠的是客户端自己的路由设置。

## 三家之间也会对不上

同一个协议，三家各写各的实现，偶尔会闹别扭。2026 年 7 月就有过一次。Xray 有一次提交给 REALITY 服务端的 `minClientVer` 加了默认值 26.3.27，这一项在 Xray 文档里的解释是客户端 Xray 的最低版本，提交标题的括号里写着改动它后果自负。mihomo 那边在文档的 reality-opts 一节表了态，把这次改动称作 xray-core 故意制造的不兼容，v26.7.11 及以上的 xray 服务端不在它的兼容范围里，连不上就换服务端，或者换别的协议。机场的服务端升到这些版本又没改默认值的话，mihomo 系客户端上的 REALITY 节点可能整组握手失败，同一份订阅里别的协议照常。

协议覆盖也有差。AnyTLS 和 TUIC 在 mihomo、sing-box 的清单上都有，Xray 的出站清单里没有。订阅里有这两种节点，只跑 Xray 的客户端就用不上它们。

## 手里的客户端用哪个内核，怎么认

看版本号的样子就能认出大半。mihomo 的正式版现在是 v1.19 开头，sing-box 在 1.14 前后，Xray 用年月日当版本号，26 开头。在客户端的设置页或关于页里看到这种号，底下是谁基本就清楚了。

能换内核的客户端是少数。本站资料库里标注为多内核可选的有 12 款，v2rayN 是其中之一，wiki 上那十一种内核都能配。Clash Verge Rev 只用 mihomo，README 写明可以切换到 Alpha 版内核。

iPhone 上的付费客户端要单独看。Shadowrocket、Quantumult X、Surge、Loon、Stash 在本站资料库里都标着自研内核、闭源，它们各自支持哪些协议，只能对照各家的文档和更新说明。几款之间怎么挑，[iPhone 客户端怎么选](https://jichangtuijianweb.co/kepu/iphone-kehuduan-zenme-xuan/)那篇做了对比。

## 常见问题

### v2rayN 能跑 mihomo 内核吗

能。v2rayN 的 wiki 把支持的内核分成几组，Clash 那一组列的就是 mihomo，另外还有 Xray、v2fly、sing-box，以及 Hysteria2、NaiveProxy、TUIC 等七个单协议内核，一共十一种。每一种后面都附着它自己在 GitHub 上的发布页。

### mihomo、sing-box 和 Xray 哪个速度快

本站没有做过三个内核的对照测速，给不出快慢结论。三家都支持 VLESS、Trojan、Shadowsocks 这些常见协议。挑内核时更实际的问题有两个，它认不认识机场给的协议，机场有没有提供它能读的订阅格式。

### Shadowrocket 小火箭用的是 mihomo 还是 sing-box

本站资料库给 Shadowrocket 标的是自研内核、闭源，本站没有查到开发者公开说明它内部用的是哪一套实现。Quantumult X、Surge、Loon、Stash 在资料库里同样标为自研、闭源。这几款能认哪些协议，以各自的文档和更新说明为准。

### 机场只给了 Clash 订阅，该装什么客户端

装 mihomo 内核的客户端。Clash 格式的 YAML 由 mihomo 解析，电脑上有 Clash Verge Rev 和 Clash Party，FlClash 电脑和安卓都有，安卓上还有 Clash Meta for Android。sing-box 和 Xray 的配置是 JSON，这份 YAML 能不能导进去，要看客户端自己有没有做格式转换。

### Xray 为什么半年没出新的正式版

按 GitHub 发布页的记录，2026 年 3 月 27 日的 v26.3.27 之后，Xray 到 9 月又发了 13 个版本，全部标着预发布，标 Latest 的仍是 v26.3.27。本站没有找到项目方对这种发版方式的说明，不做猜测。

## 参考来源

- [v2rayN 的 wiki 页面 List of supported cores](https://github.com/2dust/v2rayN/wiki/List-of-supported-cores)
- [Clash Verge Rev 仓库 README](https://github.com/clash-verge-rev/clash-verge-rev)
- [mihomo 仓库 Meta 分支 README](https://github.com/MetaCubeX/mihomo/tree/Meta)
- [mihomo 最新正式版发布信息](https://api.github.com/repos/MetaCubeX/mihomo/releases/latest)
- [mihomo 文档首页](https://wiki.metacubex.one/)
- [mihomo 文档，代理端口](https://wiki.metacubex.one/config/inbound/port/)
- [mihomo 文档，TUN](https://wiki.metacubex.one/config/inbound/tun/)
- [mihomo 文档，路由规则](https://wiki.metacubex.one/config/rules/)
- [mihomo 文档，代理节点类型](https://wiki.metacubex.one/config/proxies/)
- [mihomo 文档，TLS 与 reality-opts](https://wiki.metacubex.one/config/proxies/tls/)
- [mihomo 文档，客户端列表](https://wiki.metacubex.one/startup/client/client/)
- [sing-box 仓库 README 与许可证](https://github.com/SagerNet/sing-box)
- [sing-box 最新正式版发布信息](https://api.github.com/repos/SagerNet/sing-box/releases/latest)
- [sing-box 文档，配置文件结构](https://sing-box.sagernet.org/configuration/)
- [sing-box 文档，route](https://sing-box.sagernet.org/configuration/route/)
- [sing-box 文档，出站类型](https://sing-box.sagernet.org/configuration/outbound/)
- [sing-box 文档，Clash API](https://sing-box.sagernet.org/configuration/experimental/clash-api/)
- [sing-box 文档，官方图形客户端](https://sing-box.sagernet.org/clients/)
- [Xray 官网首页](https://xtls.github.io/)
- [Xray 文档，配置文件结构](https://xtls.github.io/config/)
- [Xray 文档，路由](https://xtls.github.io/config/routing.html)
- [Xray 文档，出站协议](https://xtls.github.io/config/outbound.html)
- [Xray 文档，Hysteria 出站](https://xtls.github.io/config/outbounds/hysteria.html)
- [Xray-core 发布页](https://github.com/XTLS/Xray-core/releases)
- [Xray-core 提交 af7eb68，REALITY 服务端默认 minClientVer](https://github.com/XTLS/Xray-core/commit/af7eb68028732a8ee3c0e5d6ab2b8a657bb2e770)
- [Xray 文档，REALITY 传输安全](https://xtls.github.io/config/transports/reality.html)
- [Xray-core 讨论 716，VMessAEAD 与 VLESS 分享链接标准提案](https://github.com/XTLS/Xray-core/discussions/716)
- 本站客户端资料库，172 款客户端的内核标注
