Shadowrocket(小火箭)日常需要按网站分流时,先选 Config,再核对当前配置及规则指向的策略;Proxy 用于临时统一走代理或对照排查,Direct 用于直连对照。本文以用户已有自己的服务商与订阅为前提,说明选择入口、规则写法及验证顺序,区分路由模式、连接开关与 On Demand 的职责。
先给结论:按规则使用选 Config
Global Routing 决定由 Shadowrocket 接管的连接如何选择路径。Config 按当前配置的规则决定策略;Proxy 不按普通分流规则逐条选择出口,而是统一使用代理;Direct 则统一直接连接目标。“全部”指应用接管范围内的连接,不应理解为设备上任何系统流量都必然经过同一路径。
Config
推荐按当前生效配置匹配规则。规则可以指定 DIRECT、REJECT 或配置中存在的代理策略,并不保证“未命中的流量一定直连”。
适合:已有明确分流配置,需要部分网站走代理、部分网站直连。
Proxy
接管的连接统一使用代理路径。切换前要确认当前选择的代理可用,不能把这一模式当作修复地址、端口或认证参数的手段。
适合:临时统一走代理,或与 Config 做对照以定位规则问题。
Direct
接管的连接直接访问目标,不使用代理作为出口。它是路由选择,不等同于关闭 Shadowrocket 的连接开关。
适合:确认当前网络能否直连目标,或临时使用直接连接。
推荐 Config 的前提是配置符合实际需求。若配置中的 FINAL 指向代理,未命中前面规则的连接仍会走代理;若 FINAL 指向 DIRECT,才会直连。只看模式名称,无法判断某个网站最后使用哪个出口。
操作步骤:在 Home 设置并核对当前配置
先区分 Home、Config 与 Settings:Home 用于日常选择连接和查看 Global Routing;Config 用于管理规则配置;Settings 用于应用设置,包括 On Demand。已有订阅中的连接条目,与包含分流规则的配置文件,是两个需要分别核对的对象。
- 打开 Home,确认已有可用的连接条目。若使用自己的订阅,先完成导入;地址、端口与认证信息应以原有服务商提供的数据为准。
- 进入 Config,确认准备用于分流的配置已被选用。仅导入文件还不够,需要确认当前生效的确实是该配置。
- 回到 Home → Global Routing,选择 Config。若只是排查路径差异,可以临时选择 Proxy 或 Direct。
- 回到 Home,核对所选代理,然后打开连接开关。首次建立连接时,按 Apple 系统提示完成 VPN 配置授权。
- 分别访问一个预期走代理的目标和一个预期直连的目标,检查新连接的匹配结果,而不只观察连接开关是否已打开。
如果列表中还看到 Scene,不要把它当作 Config 的另一个名称。Scene 属于场景化选择,需要单独核对其场景条件与关联设置。本文的对照流程固定使用 Config、Proxy、Direct,避免同时引入场景切换这一变量。
Config 的原理:规则顺序与 FINAL 决定结果
Config 不是自动判断“哪些网站需要代理”的开关。它执行当前配置里的匹配逻辑:先检查规则匹配对象,再使用命中规则指定的策略。DOMAIN-SUFFIX 匹配域名后缀,IP-CIDR 匹配地址段,GEOIP 按 IP 地理数据库分类,FINAL 负责前面的规则均未命中时的兜底。
下面是规则语法示意,不是可以代替完整配置的连接资料。假设当前配置已定义名为 PROXY 的有效代理策略,仅让示例域名及其子域名走该策略,其余直连,可以使用:
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
在这个例子中,example.com 和 www.example.com 都可命中第一条规则,notexample.com 不会因为包含相似字符就命中。PROXY 必须能在当前配置中解析到有效策略;不能只把单词写进规则,却没有对应出口。更详细的规则结构见配置文件说明。
如果先放 FINAL,DIRECT,再放具体域名规则,就会破坏预期匹配顺序。另一个常见偏差是把 FINAL 改为 PROXY 后,仍以为“Config 等于其余直连”。模式不变,兜底策略改变,未命中流量的路径也会随之改变。
- DOMAIN-SUFFIX 适合以域名后缀为边界的规则,不能保证覆盖页面引用的其他域名。
- IP-CIDR 处理地址段,不是域名后缀的替代写法;是否需要 DNS 解析取决于请求形式和规则选项。
- GEOIP 依赖目标 IP 与数据库分类,不应仅据页面内容或域名外观推断命中结果。
- REJECT 是拒绝策略。目标被拒绝时,应检查是否命中相关规则,而不是只更换代理。
对照排查:Proxy 能打开,Config 打不开
遇到这种现象,先保持同一网络、同一代理和同一目标,只改变 Global Routing。这样才能把差异定位到路由选择,而不是同时更换多个条件。以下是可用于复现的对照方案,不是对任意网站可达性的承诺。
同一目标的两轮对照
第一轮:Proxy
- 在 Home 固定同一个代理。
- 进入 Home → Global Routing,选择 Proxy。
- 重新发起目标请求,记录能否建立连接。
- 若失败,先检查代理连通性与协议参数。
第二轮:Config
- 保持代理和网络不变,改为 Config。
- 重新发起同一目标请求。
- 检查该连接命中的规则及策略。
- 核对 FINAL 和规则引用的策略是否符合预期。
Proxy 成功而 Config 失败时,优先检查规则与策略;两轮都失败时,不能仅归因于分流规则。
切换后要观察新建连接。浏览器与其他应用可能复用旧连接,已有页面也可能从缓存显示内容;单次刷新不一定反映新模式。可以关闭目标页面后重新打开,并结合应用中的连接记录核对。页面由多个域名提供资源时,还要区分主文档成功与图片、登录接口等请求失败。
- 先核对所选代理。模式切换过程中不要顺手换到另一个连接条目,否则对照失去意义。
- 再核对命中对象。目标可能实际请求另一个子域名或独立域名,原有 DOMAIN-SUFFIX 未必覆盖。
- 最后核对出口。命中正确规则但仍失败时,检查该规则引用的策略是否选择了预期代理。
若 Proxy 同样无法连接,继续核对已有连接的地址、端口、认证信息,以及相应协议所需参数。例如配置要求端口为 443 时,必须与远端监听端口一致;端口号本身不能证明 TLS 已正确启用,也不能证明服务可达。不要通过随机改端口掩盖原始参数问题。
常见问题:Direct、订阅更新与 On Demand
选 Direct 后,为什么系统里还显示 VPN 连接?
Direct 改变的是出口策略,不是连接开关。若要停止当前连接,在 Home 关闭连接开关;如果随后又自动连接,再进入 Settings → On Demand 核对触发条件。不要用 VPN 标识是否存在来判断某次请求是否经过代理。
更新订阅以后,Config 的网站规则也会更新吗?
先核对更新对象。连接订阅更新与规则配置更新不是同一件事。完成已有订阅的更新后,到 Home 核对连接条目,再到 Config 核对当前配置内容及所用策略,不能仅凭订阅刷新成功就认定规则已变化。
一直用 Proxy,是不是就不用管规则了?
Proxy 可以用于统一走代理,但不会按你在 Config 中设计的域名规则区分直连与代理。需要恢复指定网站分流时,回到 Home → Global Routing 选择 Config,再确认当前配置及 FINAL。不要把临时排查姿态当作规则已经修好的证明。
开启 On Demand,会自动替我选择 Config 吗?
不要把自动连接与路由选择混为一谈。Settings → On Demand 用于配置按条件建立连接;Global Routing 决定连接后的路由姿态。设置完成后分别核对两处,并在触发连接后重新确认实际模式与目标请求的策略。
协议与路由同样需要分开理解。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard 属于连接配置层面的协议选项;Config、Proxy、Direct 属于路由姿态。选择 Proxy 不会把一种协议改成另一种,修改规则也不能修复错误的认证信息。具体参数应按已有服务的配置核对。
日常使用检查清单
完成一次可复现的验证后,保留符合实际需求的模式。需要按配置分流时回到 Config;只有明确希望接管的连接统一走代理时才保留 Proxy。使用 Direct 时,也应清楚它不会使用代理出口,且不代表应用连接已经停止。
- Home:所选代理是预期条目,连接状态已核对。
- Home → Global Routing:当前姿态与需求一致,排查后没有遗留临时设置。
- Config:当前生效配置正确,具体规则在 FINAL 之前,策略名称有对应定义。
- Settings → On Demand:自动连接条件符合实际需求,不与手动测试混淆。
- 验证结果:至少检查一项预期走代理的请求和一项预期直连的请求,并确认新连接的匹配路径。
Shadowrocket 是 Apple 平台付费客户端,以 iPhone、iPad 使用为主,唯一获取入口为 App Store,系统要求以 App Store 页面标注为准。客户端买断 ≠ 线路套餐;本文的路由说明以你已有自己的服务商与订阅为前提。首次设置可继续查看Global Routing 教程,连接异常可查看连接排查说明。