Clash vs sing-box:2026 年该怎么选?
发布于 · 约 7 分钟阅读
选代理客户端时,绕不开两个名字:Clash 和 sing-box。一个是用户最多、订阅生态最成熟的老牌方案,一个是近几年迅速流行的新一代通用代理平台。 本文从内核现状、配置格式、订阅生态、客户端和上手难度几个维度对比两者,最后按使用场景给出选择建议。
先理清:现在说的「Clash」是什么
原版 Clash 内核及闭源的 Clash Premium 已经停止维护,Clash for Windows 等基于旧内核的客户端也随之停更。 目前社区继续维护的是 Mihomo(原名 Clash.Meta)内核,它完全兼容 Clash 的 YAML 配置, 并补充了 VLESS、Reality、Hysteria2 等新协议。所以今天讨论「Clash vs sing-box」,实际上是在比较 Mihomo 内核及其客户端和 sing-box。
常见的 Mihomo 客户端包括桌面端的 Clash Verge Rev、 Android 上的 Clash Meta for Android。
核心区别一览
| 对比项 | Clash(Mihomo) | sing-box |
|---|---|---|
| 内核 / 维护方 | Mihomo(原 Clash.Meta),MetaCubeX 社区维护 | sing-box,SagerNet 维护 |
| 配置格式 | YAML,结构直观,手改方便 | JSON,结构严谨,适合程序生成 |
| 订阅生态 | 机场与订阅服务普遍提供 Clash 格式 | 原生 JSON 订阅较少,常需转换 |
| 规则分流 | proxy-groups + rules,资料与模板丰富 | route 规则 + rule-set,功能强、学习成本高 |
| 协议支持 | VMess、VLESS(含 Reality)、Trojan、Shadowsocks、Hysteria2、TUIC 等 | 同样覆盖主流协议,新协议跟进通常较快 |
| 桌面客户端 | Clash Verge Rev、FlClash 等,成熟稳定 | 以第三方图形客户端为主 |
| 移动客户端 | Android:Clash Meta for Android;iOS:Shadowrocket 等支持 Clash 订阅 | 官方提供 Android / Apple 平台客户端 |
| 上手难度 | 低,导入订阅即可使用 | 中等,手写配置需要理解其结构 |
同一个节点,两种配置写法
直观感受一下差别:下面是同一个 VMess + WebSocket + TLS 节点(所有值均为占位符),分别用 Clash 和 sing-box 的格式描述。
Clash(Mihomo)YAML
proxies:
- name: "US-01"
type: vmess
server: node.example.com
port: 8443
uuid: 00000000-0000-0000-0000-000000000000
alterId: 0
cipher: auto
tls: true
network: ws
ws-opts:
path: /vmess-wssing-box JSON
{
"outbounds": [
{
"type": "vmess",
"tag": "US-01",
"server": "node.example.com",
"server_port": 8443,
"uuid": "00000000-0000-0000-0000-000000000000",
"security": "auto",
"tls": { "enabled": true },
"transport": { "type": "ws", "path": "/vmess-ws" }
}
]
}可以看到,两者描述的信息完全一样,只是组织方式不同:Clash 用 network: ws 加 ws-opts,sing-box 则把传输层放进 transport 对象。 实际使用中你几乎不需要手写这些内容,订阅会自动生成完整配置。
Clash(Mihomo)的优势与不足
优势
- 订阅生态最成熟,绝大多数订阅服务都提供 Clash 格式,导入即用。
- YAML 配置可读性好,分流规则、策略组的教程和模板非常多,遇到问题容易搜到答案。
- 桌面图形客户端成熟,TUN 模式、系统代理、订阅管理、测速等功能齐全。
不足
- 历史包袱较多,旧教程里仍大量出现已停更的客户端,新手容易下载到过时版本。
- 部分高级特性需要熟悉 Mihomo 扩展字段,和原版 Clash 文档并不完全一致。
sing-box 的优势与不足
优势
- 架构设计统一,一个内核同时覆盖客户端与服务端场景,协议与新特性跟进快。
- 路由与 DNS 模块功能强大、可控粒度细,适合喜欢精细调校的进阶用户。
- 官方提供 Android 与 Apple 平台客户端,移动端资源占用口碑较好。
不足
- 原生 JSON 订阅不普及,很多时候需要借助转换,规则与策略组不一定能完整保留。
- 大版本之间常有配置字段调整,旧配置升级后可能需要手动修改。
- 手写配置门槛较高,出错时排查难度也更大。
按使用场景怎么选
- 只想导入订阅、稳定使用:选 Clash(Mihomo)客户端。 Windows / macOS / Linux 用 Clash Verge Rev,Android 用 Clash Meta for Android,iOS 用 Shadowrocket。
- 自建节点、喜欢折腾路由规则:两者都可以,已有 Clash 规则积累就继续用 Mihomo; 从零开始且愿意学习 JSON 结构,可以尝试 sing-box。
- 服务商只提供某一种格式:跟着订阅格式选客户端,省去转换带来的兼容问题。
- 想用 VLESS Reality 等新协议:Mihomo 与 sing-box 都支持,关键是客户端内核要足够新。 关于 Reality 的原理,可以阅读 什么是 VLESS Reality。
supernet.day 用户该用哪个
supernet.day 提供的是 Clash(Mihomo)格式订阅,节点使用兼容性最好的 VMess + WebSocket + TLS 组合,Clash Verge Rev、Clash Meta for Android 和 Shadowrocket 都可以直接导入,无需任何转换。暂不提供 sing-box 原生 JSON 订阅,所以最省心的做法是直接使用上面推荐的客户端, 配置步骤见 Clash Verge 配置教程。
常见问题 FAQ
原版 Clash 已经停止维护了,现在还能用吗?
原版 Clash 内核与 Clash Premium 已停止更新,不再支持新协议,也不会修复安全问题,不建议继续使用。现在所说的「Clash」基本都是指 Mihomo(原 Clash.Meta)内核及其客户端,例如 Clash Verge Rev,它完全兼容 Clash 配置格式并持续更新。
sing-box 能直接导入 Clash 订阅链接吗?
sing-box 内核本身使用 JSON 配置,不能直接读取 Clash 的 YAML 订阅。部分基于 sing-box 的第三方客户端内置了格式转换,但兼容程度取决于具体客户端和配置内容,规则、分组等可能无法完整转换。
sing-box 和 Clash 哪个速度更快?
两者都用 Go 编写,对同一协议、同一节点而言,日常使用中的速度差异很小,远小于节点线路质量带来的影响。选择时更应该关注客户端易用性、订阅格式和平台支持。
supernet.day 的订阅可以在 sing-box 里用吗?
supernet.day 目前提供的是 Clash(Mihomo)格式订阅,推荐使用 Clash Verge Rev、Clash Meta for Android 或 iOS 上的 Shadowrocket,这些客户端都经过实测可以直接导入。暂不提供 sing-box 原生 JSON 订阅。
我已经在用 Clash Verge Rev,有必要换成 sing-box 吗?
如果当前使用稳定、没有特别需求,没有必要更换。Mihomo 内核同样支持 VMess、VLESS Reality、Hysteria2 等主流协议,更换客户端带来的收益通常不如换一条更好的线路明显。
相关教程
- Clash for Windows 停更了怎么办?迁移到 Clash Verge Rev 指南CFW 停更后该换什么?对比主流替代客户端,按步骤迁移订阅与自定义规则,并避开卸载后断网、端口冲突等常见坑。
- 什么是 VLESS Reality?原理图解及与 VMess + WS + TLS 对比从「代理协议 / 传输方式 / 安全层」三层讲起,看懂 Reality 借用真实网站握手的原理,并与经典的 VMess + WS + TLS 逐项对比。
- Clash Verge 配置教程:TUN 模式 + DNS 泄漏修复完整指南从安装、导入订阅到开启 TUN 模式与修复 DNS 泄漏,一篇讲清楚 Clash Verge 全流程配置与常见报错排查。