Skip to content

一、TL;DR:先把结论摆上桌 ​

如果你只想要一句话答案:

  • 只买一个、图省事:Shadowrocket(小火箭)。买断价最低,协议覆盖最广,能吃下 90% 的机场订阅,规则引擎够用,属于"下限极高的保底选择"。
  • 要自动化、要脚本、要重度分流:Quantumult X(圈X) 或 Loon 二选一。圈X 的 rewrite / JS 脚本生态沉淀最厚,但更新节奏偏慢;Loon 迭代活跃、插件体系成熟,近两年新协议跟进最积极。
  • Clash 订阅重度用户、想把桌面端配置原样搬上手机:Stash。这是四款里唯一基于 mihomo(Clash.Meta)血统的内核,YAML 直接吃,rule-providers / sniffer / fake-ip 一套照搬。
  • 预算优先 + 想要"客户端不拖后腿":小火箭 + 一条稳定的中转/专线机场,性价比已经打到顶了。

需要提前说清楚的一句话:客户端决定你"怎么发",机场决定你"怎么到"。 在一个劣质节点上,你换再贵的内核,也只能把 30 分做到 35 分;反过来,一条 IEPL 专线配上小火箭,体验往往胜过顶级客户端配垃圾节点。所以本文既横评客户端,也会告诉你哪些参数是真正的瓶颈。

选型决策树(懒人版):

  • 不确定 → Shadowrocket
  • 有 Surge 使用经验、爱写脚本 → Loon
  • 有大量圈X 脚本资源、懒得迁移 → Quantumult X
  • 桌面端已经在用 Clash / mihomo → Stash
  • 家里多台设备、要统一配置 → Stash + Loon 组合

二、底层机理:iOS 的代理为什么"看起来都一样,跑起来差很多" ​

所有 iOS 代理客户端,本质都是同一个形态:一个 App 外壳 + 一个规则引擎 + 一个协议内核,最终通过 NEPacketTunnelProvider 建立虚拟网卡(utun)接管流量。 谁都不能绕过 Network Extension 框架去改路由表。所以差异不来自"能不能代理",而来自下面六个工程细节。

1. NE 进程的内存天花板 ​

iOS 对 Network Extension 进程有独立的内存配额,历史上大约 15MB 量级,iOS 14 之后放宽但仍不宽裕。一旦规则集膨胀(比如加载了 8 万条国内 IP 段 + 大量 domain-set)、连接会话表堆积,内核就可能被 jetsam 直接杀掉——表现出来就是"用半小时突然断流、需要手动重连"。

这解释了为什么规则精简是一种性能优化,而不只是洁癖。四款客户端里,规则加载策略与缓存释放做得好不好,直接决定长时间挂机的稳定性。

2. DNS 三件套:fake-ip / sniffer / DoH ​

  • fake-ip:把域名映射到保留段 IP,靠域名而非 IP 做分流。对 iOS 这种 DNS 请求可能被系统缓存或走蜂窝的复杂环境极其关键。
  • SNI 嗅探(sniffer):当 App 直接连 IP、或 DNS 走了隧道外(比如 DoH 直连),规则匹配会失效。sniffer 抓 TLS ClientHello / HTTP Host 补回域名,是解决"漏网之鱼"的核心手段。
  • DoH/DoT:防止 DNS 明文被污染或��持,同时避免"DNS 解析走了物理网卡"这种经典泄漏。

一个高频翻车场景:客户端分流看起来正常,但某些 App 仍然无法访问——十有八九是 DNS 请求没走隧道,返回了被污染的结果,而假 IP 又没生效。这不是节点问题。

3. UDP 与 QUIC 转发能力 ​

Hysteria2、TUIC v5 这类基于 QUIC(UDP)的协议,把压力全部压在 NE 的 UDP 会话表上。不同客户端处理 UDP 会话创建/回收的效率差别巨大:有的在弱网下能稳住,有的会在 UDP 包洪峰时丢会话,表现为"视频能播但频繁缓冲、游戏掉线、语音断续"。如果你的机场主力是 Hysteria2,UDP 转发效率是选型的硬指标。

4. 协议栈跟进速度 ​

2025-2026 年的主流抗封锁方案是 VLESS + TLS Reality(握手借用真实大站证书,抗 SNI 阻断和主动探测)与 Shadowsocks-2022(抵抗重放攻击)。新协议能否第一时间上车,取决于开发者的活跃度。这一项上,Loon 与 Shadowrocket 跟进快,Stash 依托 mihomo 上游也很快,Quantumult X 相对滞后。

5. 链路侧的物理变量 ​

客户端只负责把流量丢出去,剩下的交给机场:

  • BGP 中转:入口多线 BGP → 中继 → 落地,成本低、扩展性强,但晚高峰公网拥塞时会吃 QoS 限速。
  • IEPL / IPLC 专线:二层/三层专线不过公网,晚高峰稳定性远高于中转,代价是成本高、带宽相对小。
  • 双 ISP 入口(电信 + 联通/移动):解决跨网互联瓶颈,是"同样延迟数字,体验完全不同"的根源。
  • BBRv3:在高丢包链路(跨境公网丢包 1%~3% 很常见)下,BBRv3 相比传统 CUBIC 的吞吐保持能力可以拉开数倍差距。这就是为什么"同一节点、换拥塞控制算法"会有天壤之别。

记住这条因果链:物理链路 > 拥塞控制 > 协议实现 > 客户端规则引擎。 越靠前,优化收益越大。


三、四款客户端的基因与定位 ​

Shadowrocket(小火箭) 定位:通用型工具人。一次性买断,界面朴素,功能堆料。协议支持面最广(Shadowsocks / SS2022 / VMess / VLESS-Reality / Trojan / Hysteria2 / TUIC / WireGuard / AnyTLS 等),订阅兼容性极强(Base64、SS-URI、部分 Clash 链接、二维码)。它的哲学是"什么都能跑",而不是"什么都能自动化"。

Quantumult X(圈X) 定位:自动化玩家的老牌旗舰。核心资产是 rewrite + JavaScript 脚本 + 定时任务体系,大量现成脚本社区沉淀(去广告、去水印、签到等)。规则语法自成一套,学习曲线陡。缺点是更新频率低,新协议支持节奏慢,且它的订阅格式需要转换(不直接吃 Clash YAML)。

Loon 定位:新生

数据仅供参考,请以机场官网实时信息为准。遵守法律法规,文明合规出海。