什么是代理内核?Mihomo、Xray、sing-box 与客户端的关系
百科词条:解释代理内核(Mihomo / Clash Meta、Xray、sing-box)与图形客户端(Clash Verge、v2rayN、Shadowrocket)的分工,说明内核决定协议支持与分流能力、客户端决定界面与易用性,以及如何根据内核判断客户端是否支持新协议。
文章目录
内核与客户端的分工
| 层 | 负责 | 例子 |
|---|---|---|
| 内核 | 协议实现、节点连接、规则分流、DNS | Mihomo、Xray、sing-box |
| 客户端 | 界面、订阅管理、系统代理 / TUN 集成、开机自启 | Clash Verge、v2rayN、Shadowrocket、Hiddify |
同一个内核可以有多个客户端,同一个客户端也可能内置多个内核供切换(v2rayN 支持 Xray 与 sing-box)。
三大内核
Mihomo(原 Clash Meta)
Clash 原项目停止维护后由社区延续,2023 年更名为 Mihomo。使用 YAML 配置,策略组与规则体系成熟,支持 VLESS、Hysteria2、TUIC 等新协议。客户端:Clash Verge Rev、Clash Meta for Android、ClashX Meta 等。详见什么是 Clash。
Xray
V2Ray 的分支,VLESS 与 Reality 的发源地。协议实现最前沿,分流能力完整。客户端:v2rayN(默认内核)、v2rayNG 等。
sing-box
2022 年后崛起的新内核,JSON 配置,协议支持最全,性能与内存占用优秀,官方提供全平台图形客户端。客户端:sing-box 官方客户端、Hiddify、v2rayN(可选内核)。详见 sing-box 教程。
为什么要知道内核
判断协议支持
机场给了 Hysteria2 节点,客户端显示超时,很可能是内核不支持。查客户端用的内核与版本:
- Clash Verge Rev → Mihomo,支持;
- v2rayN → 默认 Xray 不支持 Hysteria2,切到 sing-box 内核即可;
- 停更的 Clash for Windows → 旧 Clash 内核,不支持。
判断配置格式
Mihomo 读 YAML(Clash 订阅),sing-box 读 JSON(sing-box 订阅),Xray 读自己的 JSON 格式。订阅格式与内核不匹配就要转换,见什么是订阅转换。
判断更新来源
内核更新带来新协议与修复,客户端更新带来界面改进。遇到协议问题优先更新内核(多数客户端随客户端一起更新)。
常见客户端的内核一览
| 客户端 | 平台 | 内核 |
|---|---|---|
| Clash Verge Rev | Win / Mac / Linux | Mihomo |
| Clash Meta for Android | Android | Mihomo |
| v2rayN | Windows | Xray / sing-box 可切换 |
| sing-box 官方 | 全平台 | sing-box |
| Hiddify | 全平台 | sing-box |
| Shadowrocket | iOS | 自研(支持主流协议) |
客户端选择见梯子软件推荐。