代理/VPN 客户端功能全面调研报告
调研日期: 2026-04-02
调研对象: sing-box, Clash (原版), mihomo (Clash.Meta), Hiddify, FlClash, Stash, mini-sing
一、功能矩阵对照表
A. 协议支持
入站协议 (Inbound)
| 协议 |
sing-box |
Clash |
mihomo |
Hiddify |
FlClash |
Stash |
mini-sing |
| Mixed (SOCKS+HTTP) |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| SOCKS (独立) |
✅ |
✅ |
✅ |
- |
- |
✅ |
- |
| HTTP (独立) |
✅ |
✅ |
✅ |
- |
- |
✅ |
- |
| TUN |
✅ |
✅(Premium) |
✅ |
✅ |
✅ |
✅ |
✅ |
| Redirect |
✅ |
✅ |
✅ |
- |
- |
- |
- |
| TProxy |
✅ |
✅ |
✅ |
- |
- |
- |
- |
| Shadowsocks |
✅ |
- |
- |
- |
- |
- |
✅ |
| Trojan |
✅ |
- |
- |
- |
- |
- |
✅ |
| VMess |
✅ |
- |
- |
- |
- |
- |
- |
| VLESS |
✅ |
- |
- |
- |
- |
- |
- |
| Hysteria/Hysteria2 |
✅ |
- |
- |
- |
- |
- |
- |
| TUIC |
✅ |
- |
- |
- |
- |
- |
- |
| Naive |
✅ |
- |
- |
- |
- |
- |
- |
| ShadowTLS |
✅ |
- |
- |
- |
- |
- |
- |
| AnyTLS |
✅ |
- |
- |
- |
- |
- |
- |
| Direct |
✅ |
- |
✅ |
- |
- |
- |
- |
出站协议 (Outbound)
| 协议 |
sing-box |
Clash |
mihomo |
Hiddify |
FlClash |
Stash |
mini-sing |
| Shadowsocks |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| ShadowsocksR |
- |
✅ |
✅ |
- |
✅ |
✅ |
- |
| VMess |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| VLESS |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
✅ |
| Trojan |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| Hysteria |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
- |
| Hysteria2 |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
- |
| TUIC |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
- |
| WireGuard |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
- |
| SSH |
✅ |
- |
✅ |
✅ |
- |
✅ |
- |
| Tor |
✅ |
- |
- |
- |
- |
- |
- |
| Snell |
- |
✅ |
✅ |
- |
✅ |
✅ |
- |
| ShadowTLS |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
- |
| AnyTLS |
✅ |
- |
✅ |
- |
- |
- |
- |
| NaiveProxy |
✅ |
- |
- |
✅ |
- |
- |
- |
| SOCKS |
✅ |
✅ |
✅ |
- |
✅ |
✅ |
- |
| HTTP |
✅ |
✅ |
✅ |
- |
✅ |
✅ |
- |
| Direct |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| Block/Reject |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| DNS |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| Tailscale |
- |
- |
- |
- |
- |
✅ |
✅ |
| Selector |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| URLTest |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| Fallback |
- |
✅ |
✅ |
- |
✅ |
✅ |
- |
| Load-Balance |
- |
✅ |
✅ |
- |
✅ |
✅ |
- |
| Relay/Chain |
- |
✅ |
✅(via dialer-proxy) |
- |
✅ |
✅ |
- |
用户最常需要的协议排序: Shadowsocks > VLESS (Reality) > Trojan > VMess > Hysteria2 > WireGuard > TUIC
B. 传输层 (Transport)
| 传输层 |
sing-box |
Clash |
mihomo |
Hiddify |
FlClash |
Stash |
mini-sing |
| TCP (原始) |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| TLS |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| WebSocket |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| gRPC |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| HTTP/2 (H2) |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| HTTP Upgrade |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
- |
| QUIC |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
- |
| Reality |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
✅ |
| uTLS 指纹 |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
✅ |
| Multiplex (smux/yamux/h2mux) |
✅ |
- |
✅ |
✅ |
✅ |
- |
- |
| TCP Brutal |
✅ |
- |
✅ |
✅ |
✅ |
- |
- |
| SplitHTTP/XHTTP |
✅ |
- |
✅ |
✅ |
- |
- |
- |
| ECH |
✅ |
- |
✅ |
✅ |
- |
- |
- |
C. 路由规则 (Routing)
| 规则类型 |
sing-box |
Clash |
mihomo |
Hiddify |
FlClash |
Stash |
mini-sing |
| domain |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| domain_suffix |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| domain_keyword |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| domain_regex |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
- |
| domain_wildcard |
- |
- |
✅ |
- |
✅ |
✅ |
- |
| ip_cidr |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| source_ip_cidr |
✅ |
✅ |
✅ |
- |
✅ |
- |
- |
| ip_is_private |
✅ |
- |
- |
- |
- |
- |
✅ |
| GeoIP |
✅(已弃用) |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| GeoSite |
✅(已弃用) |
- |
✅ |
✅ |
✅ |
✅ |
- |
| IP-ASN |
✅ |
- |
✅ |
- |
✅ |
✅ |
- |
| port / port_range |
✅ |
✅ |
✅ |
- |
✅ |
✅ |
✅ |
| source_port |
✅ |
✅ |
✅ |
- |
✅ |
- |
- |
| process_name |
✅ |
✅ |
✅ |
- |
✅ |
✅ |
- |
| process_path |
✅ |
✅ |
✅ |
- |
✅ |
✅ |
- |
| package_name (Android) |
✅ |
- |
✅ |
- |
✅ |
- |
- |
| network (tcp/udp) |
✅ |
- |
✅ |
- |
✅ |
✅ |
✅ |
| protocol (sniffed) |
✅ |
- |
- |
- |
- |
✅ |
✅ |
| inbound |
✅ |
- |
✅ |
- |
✅ |
- |
✅ |
| rule-set (远程规则集) |
✅ |
✅(Premium) |
✅ |
- |
✅ |
✅ |
- |
| AND/OR/NOT 逻辑组合 |
✅ |
- |
✅ |
- |
✅ |
✅ |
- |
| SCRIPT |
- |
✅(Premium) |
- |
- |
- |
✅ |
- |
| wifi_ssid / wifi_bssid |
✅ |
- |
- |
- |
- |
- |
- |
| clash_mode |
✅ |
✅ |
✅ |
- |
✅ |
- |
- |
| user-agent |
- |
- |
- |
- |
- |
✅ |
- |
| url-regex |
- |
- |
- |
- |
- |
✅ |
- |
| SUB-RULE |
- |
- |
✅ |
- |
✅ |
- |
- |
| Protocol Sniff |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
✅ |
| Sniff Override Dest |
✅(已弃用) |
- |
✅ |
✅ |
✅ |
✅ |
✅(内建) |
D. DNS
| 功能 |
sing-box |
Clash |
mihomo |
Hiddify |
FlClash |
Stash |
mini-sing |
| UDP DNS |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| TCP DNS |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| DoT (DNS over TLS) |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| DoH (DNS over HTTPS) |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| DoQ (DNS over QUIC) |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
- |
| DoH3 (HTTP/3) |
✅ |
- |
✅ |
✅ |
✅ |
- |
- |
| DHCP DNS |
✅ |
- |
- |
- |
- |
- |
- |
| FakeIP |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| DNS 规则/分流 |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| DNS 劫持 |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
✅ |
| DNS 缓存 |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| ECS (Client Subnet) |
✅ |
- |
✅ |
- |
✅ |
- |
- |
| Hosts 映射 |
✅ |
✅ |
✅ |
- |
✅ |
✅ |
- |
| 反向缓存 (IP→域名) |
✅ |
- |
- |
- |
- |
- |
✅ |
| 域名策略 (prefer_ipv4等) |
✅ |
- |
✅ |
- |
✅ |
- |
✅(prefer_ipv4) |
| 污染过滤 |
✅ |
✅ |
✅ |
- |
✅ |
- |
✅ |
| Prefetch |
✅ |
- |
- |
- |
- |
- |
✅ |
| Serve-Stale |
✅ |
- |
- |
- |
- |
- |
✅ |
| Tailscale DNS |
✅ |
- |
- |
- |
- |
✅ |
✅ |
E. TUN/VPN
| 功能 |
sing-box |
Clash |
mihomo |
Hiddify |
FlClash |
Stash |
mini-sing |
| Auto-Route |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| Strict-Route |
✅ |
- |
✅ |
- |
✅ |
- |
✅ |
| gVisor Stack |
✅ |
- |
✅ |
✅ |
✅ |
- |
✅ |
| System Stack |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| Mixed Stack |
✅ |
- |
✅ |
✅ |
✅ |
- |
- |
| 分应用代理 (Android) |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
✅(via VpnService) |
| Exclude Routes |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| MTU 设置 |
✅ |
✅ |
✅ |
- |
✅ |
- |
✅ |
| File Descriptor 传递 |
✅ |
- |
- |
- |
- |
✅ |
✅ |
| 网络变化监听 |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅(非 Android) |
| 健康检查+自动回滚 |
- |
- |
- |
- |
- |
- |
✅ |
F. UI/UX 功能
| 功能 |
sing-box |
Clash |
mihomo |
Hiddify |
FlClash |
Stash |
mini-sing |
| Clash API (RESTful) |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
部分(/status, /tailscale) |
| Dashboard (Yacd等) |
✅(兼容) |
✅ |
✅(MetaCubeXD) |
内建 |
内建 |
内建 |
- |
| 连接日志 |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| 流量统计 |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| 订阅/配置管理 |
✅(远程配置) |
✅ |
✅(Provider) |
✅ |
✅ |
✅ |
- |
| 配置格式 |
JSON |
YAML |
YAML |
sing-box JSON |
YAML |
YAML |
JSON |
| URL 导入 |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| QR 扫码导入 |
✅(客户端) |
- |
- |
✅ |
- |
- |
- |
| GUI 客户端 |
✅(官方) |
✅(CfW等) |
✅(多款) |
✅ |
✅ |
✅ |
- (CLI only) |
| SIGHUP 热重载 |
✅ |
- |
- |
- |
- |
- |
- |
| 配置编辑器 |
✅(客户端) |
- |
- |
✅ |
- |
✅ |
- |
| WebDAV 同步 |
- |
- |
- |
- |
✅ |
✅ |
- |
G. 高级功能
| 功能 |
sing-box |
Clash |
mihomo |
Hiddify |
FlClash |
Stash |
mini-sing |
| GeoIP 数据库 |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| GeoSite 数据库 |
✅ |
- |
✅ |
✅ |
✅ |
✅ |
- |
| Rule-Set (远程规则集) |
✅ |
✅(Premium) |
✅ |
- |
✅ |
✅ |
- |
| Proxy Provider |
- |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| Proxy Chain |
✅(detour) |
✅(relay) |
✅(dialer-proxy) |
- |
✅ |
✅ |
✅(Trojan detour) |
| MITM (中间人) |
- |
- |
- |
- |
- |
✅ |
- |
| HTTP Rewrite |
- |
- |
- |
- |
- |
✅ |
- |
| Script/JavaScript |
- |
✅(Premium) |
- |
- |
- |
✅ |
- |
| SSID Policy Group |
- |
- |
- |
- |
- |
✅ |
- |
| On-Demand (按需连接) |
- |
- |
- |
- |
- |
✅ |
- |
| 带宽统计 |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
| V2Ray API (统计) |
✅ |
- |
- |
- |
- |
- |
- |
H. 平台支持
| 平台 |
sing-box |
Clash |
mihomo |
Hiddify |
FlClash |
Stash |
mini-sing |
| Android |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
✅ |
| iOS |
✅ |
- |
- |
✅ |
- |
✅ |
✅(c-archive) |
| macOS |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| Windows |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
✅ |
| Linux |
✅ |
✅ |
✅ |
✅ |
✅ |
- |
✅ |
| tvOS |
- |
- |
- |
- |
- |
✅ |
- |
| GUI |
✅(官方) |
✅(第三方) |
✅(第三方) |
✅ |
✅ |
✅ |
- |
| CLI |
✅ |
✅ |
✅ |
- |
- |
- |
✅ |
二、mini-sing 现状总结
已实现
- 入站: mixed (SOCKS5+HTTP), TUN (gVisor/system stack), Shadowsocks, Trojan
- 出站: Shadowsocks, Trojan, VMess, VLESS, Direct, Block, Selector, URLTest, Tailscale
- 传输层: TCP, TLS (标准 + uTLS + Reality)
- 路由: domain, domain_suffix, domain_keyword, ip_cidr, ip_is_private, port, network, protocol, inbound
- DNS: UDP, DoT, 分流路由, 缓存, 反向缓存, 污染过滤, Prefetch, Serve-Stale, Tailscale DNS
- TUN: auto-route, strict-route, gVisor/system stack, MTU, file descriptor, 健康检查自动回滚, 出站路由排除
- 平台: Android (JNI c-shared), iOS (c-archive), macOS, Linux, Windows
- API: 基础 HTTP API (/status, /tailscale/peers)
- 协议嗅探: TLS SNI, HTTP Host
代码规模
~6,500 行 Go 代码,极度精简。
三、优先级排序: mini-sing 下一步应该添加什么
P0: 基础可用性 (缺少会导致用户抱怨)
| # |
功能 |
理由 |
| 1 |
Hysteria2 出站 |
当前最热门的翻墙协议之一,基于 QUIC 的高吞吐量协议。大量节点提供商已全面转向 Hysteria2。缺少此协议会导致用户无法连接大量服务器。 |
| 2 |
WebSocket 传输层 |
最广泛使用的传输层协议,CDN 中转必备。VMess+WS、VLESS+WS、Trojan+WS 是最常见的服务器配置。当前 mini-sing 只支持纯 TCP+TLS,无法连接任何 WS 节点。 |
| 3 |
订阅链接导入 (Subscription) |
用户从机场获取的几乎都是订阅链接 (clash/sing-box/base64 格式)。没有订阅导入,用户必须手动编写 JSON 配置,这对 99% 的用户是不可接受的。 |
| 4 |
完整 Clash API |
/connections, /proxies, /proxies/{name}, /proxies/{name}/delay, /traffic, /logs 等端点。这是所有 Dashboard 和客户端 UI 依赖的接口,没有就无法接入任何现有 Dashboard。 |
| 5 |
GeoIP/GeoSite 数据库支持 |
中国用户的核心需求: CN 域名/IP 直连。当前只有硬编码的关键词列表,无法覆盖完整的 CN 域名和 IP 地址。rule-set 或内置 GeoIP/GeoSite 至少需要支持一种。 |
| 6 |
DNS 出站 (dns outbound) |
将 DNS 查询路由到 DNS resolver 而不是走代理。TUN 模式下的标准配置需要 "protocol": "dns" 规则指向 dns-out。当前缺失此出站类型。 |
P1: 竞争力功能 (重要,影响用户是否选择 mini-sing)
| # |
功能 |
理由 |
| 7 |
gRPC 传输层 |
仅次于 WebSocket 的第二常用传输层,部分机场只提供 gRPC 配置。 |
| 8 |
HTTP Upgrade 传输层 |
sing-box 推荐的 WS 替代方案,性能更好,CDN 兼容性好。 |
| 9 |
FakeIP |
现代代理客户端的标配 DNS 解析方式,减少 DNS 泄漏和延迟。所有主流竞品都支持。 |
| 10 |
Rule-Set (远程规则集) |
用户不想维护几万行规则。支持从 URL 加载 GeoIP/GeoSite 规则集是现代客户端的标准功能。 |
| 11 |
Fallback 代理组 |
当首选代理不可用时自动切换到备选。Selector 和 URLTest 之外的第三种必备组类型。 |
| 12 |
TUIC 出站 |
基于 QUIC 的低延迟协议,虽然用户量不如 Hysteria2 但仍有不少机场提供。 |
| 13 |
WireGuard 出站 |
Cloudflare WARP 用户必备。很多用户用 WARP 作为落地出口。 |
| 14 |
process_name / process_path 规则 |
macOS/Windows/Linux 上按进程分流是非常实用的功能。例如: 浏览器走代理、终端直连。 |
| 15 |
domain_regex 规则 |
正则匹配域名,处理复杂域名规则时必备。 |
| 16 |
DoH (DNS over HTTPS) |
比 DoT 更通用的加密 DNS 协议,几乎所有公共 DNS 都支持 DoH。 |
| 17 |
连接日志和流量统计 |
通过 Clash API 暴露实时连接信息和流量数据,是诊断网络问题和监控使用的基础功能。 |
P2: 差异化功能 (锦上添花,竞争优势)
| # |
功能 |
理由 |
| 18 |
Multiplex (sing-mux: smux/yamux/h2mux) |
多路复用减少连接数,配合 TCP Brutal 可以暴力提速。进阶用户看重。 |
| 19 |
ShadowTLS 出站 |
伪装为正常 TLS 握手的协议,配合 Shadowsocks 使用,反审查能力强。 |
| 20 |
Load-Balance 代理组 |
负载均衡,分散流量到多个节点。多出口用户需要。 |
| 21 |
Proxy Provider (远程代理列表) |
从 URL 动态加载代理节点列表,机场订阅的标准方式。与订阅导入互补。 |
| 22 |
AND/OR/NOT 逻辑规则 |
组合多个条件的高级规则,减少规则数量。 |
| 23 |
ECS (EDNS Client Subnet) |
DNS 查询携带客户端子网信息,获得更精准的 CDN 解析结果。 |
| 24 |
Hosts 映射 |
本地域名映射,调试和特殊需求。 |
| 25 |
ECH (Encrypted Client Hello) |
TLS 的 SNI 加密,最新的隐私保护技术。 |
| 26 |
source_port / source_ip_cidr 规则 |
按源地址/端口分流,局域网代理场景下有用。 |
| 27 |
package_name 规则 (Android) |
Android 按包名分流,比全局代理更精细。 |
| 28 |
SIGHUP 热重载 |
改配置不需要重启进程,运维友好。 |
P3: 低优先级 / 小众需求
| # |
功能 |
理由 |
| 29 |
ShadowsocksR 出站 |
过时协议,新机场很少提供,但仍有少量存量用户。 |
| 30 |
Snell 出站 |
Surge 生态专属协议,用户群极小。 |
| 31 |
SSH 出站 |
可以通过 SSH 隧道代理,小众但偶尔有用。 |
| 32 |
Tor 出站 |
匿名需求,极小众。 |
| 33 |
NaiveProxy |
反审查协议,用户群较小。 |
| 34 |
Redirect / TProxy 入站 |
Linux 透明代理,服务器/路由器场景。 |
| 35 |
MITM / HTTP Rewrite |
中间人解析和 HTTP 重写,Stash 独有,需求面窄。 |
| 36 |
Script/JavaScript 规则 |
脚本规则,灵活但维护成本高,用户少。 |
| 37 |
SSID Policy / On-Demand |
iOS 独有功能,根据 WiFi SSID 切换策略。 |
| 38 |
tvOS 支持 |
Apple TV 用户,极小众。 |
| 39 |
IP-ASN 规则 |
按 ASN 编号匹配,高级用户用。 |
| 40 |
WebDAV 同步 |
多设备配置同步,FlClash/Stash 有但不是核心需求。 |
四、建议实施路径
第一阶段: 让用户能用起来 (P0)
订阅导入是最关键的,因为没有它用户根本无法方便地配置代理。WebSocket 紧随其后,因为它是使用最广泛的传输层。
第二阶段: 追齐主流 (P1)
第三阶段: 建立差异化优势 (P2)
mini-sing 的独特优势 (已有,应持续强化)
- 极致精简 — 6,500 行 vs sing-box 的 ~100,000 行,启动更快,内存更少
- Tailscale 原生集成 — 竞品中只有 Stash 有,且不如 mini-sing 深度
- 健康检查自动回滚 — 独创功能,TUN 模式下网络异常自动恢复
- DNS 反向缓存 — IP 到域名的映射,提升路由精度
- Prefetch + Serve-Stale — DNS 缓存高级策略,减少延迟
五、数据来源