官方手册 · 功能介绍

Shadowrocket 功能与常用设置

先确定流量如何处理,再决定何时连接。Global Routing 控制整体路由方式,Config 中的规则决定请求去向,On Demand 决定系统在什么条件下自动发起连接;这三项不是同一个开关。

  • Home 选择服务器与路由
  • Config 管理规则配置
  • Settings 检查通用设置
  • Data 查看流量记录

本页以 iPhone、iPad 上的操作为主,按照“是什么、在哪个界面、怎么设、注意什么”说明各项功能。不同界面语言和应用更新可能影响入口位置;找不到某项时,先核对当前页面和应用内说明,不必同时修改多个开关。

Global Routing:配置、代理与直连

Global Routing 位于 Home,用于选择当前连接的整体路由方式。配置、代理、直连分别对应界面中的 Config、Proxy、Direct。日常需要按规则区分请求时使用 Config;需要检查某个请求经过所选服务器能否完成时,可以临时切到 Proxy;需要判断问题是否与代理路径有关时,可以临时使用 Direct 作对照。

模式 主要处理方式 适用场景 先核对什么
Config(配置) 依据当前启用配置中的规则和策略处理请求。 日常规则分流、区分局域网与其他请求。 当前配置、规则顺序、策略指向。
Proxy(代理) 以代理方式处理流量,不按 Config 的普通规则逐项分流。 短时验证所选服务器的连接路径。 所选服务器是否有效、协议参数是否正确。
Direct(直连) 以直接连接方式处理流量。 与当前网络的直接访问结果作对照。 当前网络本身能否访问目标。

设置方法:先选模式,再验证新请求

打开 Home,进入 Global Routing,选择所需模式后返回。使用 Config 时,还要到 Config 确认当前启用的是预期配置;使用 Proxy 时,要确认 Home 中选中的是预期服务器。回到目标应用重新发起一次请求,再观察结果,避免把原有连接或缓存页面当成新的测试。

Direct 不等于关闭系统 VPN 连接;它描述的是请求处理方式,不是连接开关的状态。同样,Proxy 也不会修复错误的服务器参数。比较模式时,应保持网络、目标地址和所选服务器不变,只改一个条件。测试结束后恢复原来的路由方式,避免临时排查设置影响后续使用。

Config:规则类型、顺序与策略

Config 管理的是配置文件,规则分流是其中的重要部分。规则回答“哪些请求属于这一类”,策略回答“命中后怎样处理”。在 Global Routing 选择 Config 后,打开当前配置,检查规则内容及其引用的策略。只导入一个文件、但没有启用它,不代表连接已经使用该文件。

常见规则类型如何区分

DOMAIN 用于精确域名匹配;DOMAIN-SUFFIX 用于域名后缀及其子域名;DOMAIN-KEYWORD 按域名中的关键词判断。需要匹配地址段时使用 IP-CIDR 或 IP-CIDR6;GEOIP 根据 IP 地理数据库分类。USER-AGENT 针对请求中可读取的 User-Agent 信息,不应当作适用于所有加密请求的通用识别方式。

PROXY、DIRECT、REJECT 是常见处理策略,分别用于代理、直连与拒绝。配置还可能引用自定义策略组;看到一个自定义名称时,需要继续检查它实际选择了哪个成员,不能仅凭名称推断最终路径。

[Rule]
DOMAIN-KEYWORD,ads,REJECT
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
DOMAIN-SUFFIX,example.com,PROXY
FINAL,PROXY

上面的片段仅演示规则语法与顺序,不是完整配置。example.com 是示例域名;关键词规则也可能命中非预期域名,应按实际需要缩小范围。no-resolve 表示不为该条 IP 规则额外触发域名解析,并不等于全局关闭 DNS。

修改方法:具体规则在前,末尾处理在后

规则通常自上而下匹配,命中即按对应策略处理,因此更具体的例外应放在宽泛规则之前。FINAL 用于前面规则均未命中时的末尾处理。修改前保留原配置,修改后重新发起请求,并通过可用的请求记录核对命中规则与处理策略。

远程维护的配置可能在更新时替换本地内容。需要长期保留的个人调整,应先确认配置的更新方式与本地副本关系。不要一次加入大量来源不明的规则;出现异常时,最有用的信息是“哪个请求命中了哪条规则”,而不是规则总数。

Home:订阅与服务器管理

服务器条目保存单个连接所需的协议、地址、端口和认证参数;Subscribe 用于根据用户已有的订阅资料更新一组条目。服务器信息与 Config 不是同一类内容:前者说明连接到哪里,后者说明请求如何分配。导入订阅后,仍需检查所选服务器与 Global Routing。

Add Server:逐项核对已有服务器信息

从 Home 进入 Add Server,按已有资料选择协议,再填写对应字段。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard 等协议的字段不能互相套用。地址和端口之外,还可能需要核对认证信息、传输方式、TLS、Server Name 等;以已有服务器资料及应用当前显示的字段为准。

扫码导入时使用 Scan QR Code,并在保存前检查解析结果。二维码只是一种信息载体,不代表其中参数一定正确。手动录入时注意前后空格、端口数字与认证信息是否完整;显示名称可以便于辨认,但更改名称不会修复连接参数。

Subscribe:更新后检查条目与选择状态

添加用户已有的订阅时,选择 Subscribe 并填写已有订阅地址,保存后执行更新。订阅更新成功,只说明地址可被读取并产生了可识别条目,不说明每个服务器都能连接。先检查条目是否出现,再选定一个服务器运行 Connectivity Test,最后验证实际请求。

订阅更新失败时,先核对链接完整性、有效状态与当前网络是否能读取该地址,不要反复删除全部条目。更新后条目名称或数量可能变化,原来的选择也可能需要重新确认。订阅地址和二维码可能含认证资料,记录问题时应遮盖敏感部分。

On Demand:按条件自动连接

On Demand 通过系统的按需连接机制,在符合条件时发起连接。它决定连接的触发时机,不负责替代 Global Routing 的分流设置。应用可能提供与 Wi-Fi、蜂窝网络、域名相关的条件,具体可选项以当前 On Demand 界面为准。

设置方法:从一个明确条件开始

进入 Settings 中的 On Demand 相关设置,先阅读现有条件,再按实际使用场景增加或修改。首次配置时,只保留一个容易验证的条件,例如检查在指定 Wi-Fi 环境下的连接行为。保存后切换到对应网络,等待系统处理,再观察系统连接状态和一次实际请求。

条件存在顺序或覆盖关系时,应按界面说明检查。不要同时添加多条相互矛盾的连接与断开条件,也不要在修改条件的同时切换服务器、DNS 和配置文件;否则即使现象变化,也无法确定是哪一项起作用。

注意事项:手动断开后再次连接的原因

如果手动断开后连接再次出现,应先检查 On Demand 是否仍在满足条件时触发,而不是立即判断为开关异常。临时排查需要稳定的手动连接环境时,可以先关闭 On Demand,记录原条件,完成测试后再恢复。启用它也不等于必然减少耗电,实际表现还受触发频率、后台请求和网络切换影响。

关于 Wi-Fi、蜂窝网络和域名条件的组合,可继续阅读On Demand 设置说明;需要观察后台用电时,参照后台耗电检查顺序,在相近使用条件下比较结果。

Data:读取流量统计

Data 用于查看客户端记录的流量信息。它适合观察某段使用过程中上传、下载或各条目统计的变化,但不等同于通信运营商账单,也不等同于用户已有服务的计量结果。统计范围、重置时间与网络开销不同,都会让不同位置显示的数字不一致。

查看方法:固定时间窗口比较增量

打开 Data,先确认当前页面展示的统计范围和可用分类。记录测试前的数值,回到目标应用完成一次操作,再返回查看增量。如果准备清空记录,应先确认是否还需要保留历史信息;清空统计不会恢复已经消耗的外部流量额度。

需要判断某个服务器是否真正承担了流量时,应结合所选服务器、路由模式和规则命中结果,而不是只看总计。直连请求、后台同步和其他应用请求都可能影响观察。较大的下载数值也不能单独证明连接质量更好;吞吐、延迟和请求成功率是不同维度。

如果 Data 的变化与预期不同,先检查目标请求是否是新发起的,以及是否使用了缓存。随后确认连接是否持续、网络是否发生切换。不要只凭一次页面刷新就推断所有请求的处理路径。

Settings:DNS、测试方式与辅助功能

Settings 汇集通用行为和辅助设置。检查时应先辨认设置影响的是解析、测试、系统入口还是资料同步。部分选项也可能由当前 Config 控制,因此修改通用设置前,要确认正在使用的配置是否另有指定,避免出现“已修改但实际行为未改变”的误判。

DNS:先确定配置来源,再修改解析设置

DNS 负责把域名解析为地址。域名解析失败与服务器连接失败可能呈现相似的加载现象,但处理方法不同。检查 Settings 中的 DNS 相关选项,并同时查看当前 Config 的 DNS 设置,确认实际使用的解析配置,而不是仅记录某一个页面中的地址。

设置时使用自己明确了解用途的解析参数,保留原值,一次只修改一个变量。修改后重新建立测试条件并发起新的域名请求;缓存可能使旧结果继续出现。局域网设备、内部域名与公共域名可能需要不同的处理,不宜把所有 DNS 请求都改到同一路径后再逐项寻找原因。

不要把 DNS 调整当成解决所有超时的通用步骤。若协议认证失败、端口不可达或服务器时间要求不满足,单独更换解析设置通常不能解决根因。应先区分“域名无法解析”与“已有地址但连接失败”。

Test Method:让测试结果具有可比性

Test Method 决定 Connectivity Test 使用的测试方式。在 Settings 找到该项,按当前界面可用选项选择,并确认相关测试目标。不同方式测量的环节不同:基础往返测试与需要完成更多网络步骤的测试,数值不能直接混排比较。

比较服务器时,应保持同一 Test Method、同一测试目标和相近网络环境。测试超时只表示该次测试未在预期时间内完成,不必然代表所有业务请求均不可用;反过来,测试成功也不能证明每个目标网站均可正常访问。保留实际访问验证这一步。

Today Widget:检查系统入口是否可用

Today Widget 用于系统小组件相关的快捷操作或状态展示。先在 Settings 查看对应设置,再到系统的小组件编辑界面确认可添加的 Shadowrocket 项目;支持情况与显示形式受系统和应用当前提供的能力影响,以设备实际界面为准。

如果快捷操作后状态没有立即变化,应返回 Home 与系统 VPN 状态核对,不要连续重复点击。小组件是操作入口,不是独立的连接配置;所选服务器、Global Routing 与 On Demand 仍会影响实际行为。

iCloud:先核对同步范围,再在另一台设备验证

iCloud 相关设置用于在支持的范围内同步应用资料。先检查系统 iCloud 状态以及 Shadowrocket 中的同步选项,阅读当前界面说明,确认哪些内容参与同步。不要把“打开 iCloud”理解成所有服务器、规则和系统权限都已完整复制。

在另一台设备操作前,先保留本地重要配置,再检查同步结果、所选服务器和当前配置。系统 VPN 授权仍需在对应设备确认。App Store 的已购恢复与 iCloud 资料同步是两件事:前者关联购买资格,后者关联应用资料,不能用其中一项的状态推断另一项。

Diagnostics:收集可以定位的问题信息

Diagnostics 用于辅助观察网络与连接问题。在 Settings 中查找 Diagnostics 相关入口,按当前界面提供的项目执行检查。有效诊断需要对应一个明确现象,例如“已有订阅无法更新”或“指定域名请求超时”,而不是同时运行所有检查后只比较哪一项数字更小。

操作方法:先复现,再读取对应记录

先记录当前网络、Global Routing、配置与服务器,必要时临时关闭 On Demand 以减少自动切换。随后只复现一次问题,再查看对应时间附近的诊断或请求记录。优先寻找解析失败、连接超时、认证错误以及规则策略不符等可区分的线索。

如果正在核对分流,应把目标域名、命中规则和最终策略对应起来;如果正在核对连接,应从 Connectivity Test 和服务器参数开始。没有请求记录时,也要检查请求是否被缓存、是否真正经过当前连接,以及记录功能是否处于可用状态。

设置检查顺序:一次只改一个条件

功能之间存在依赖关系。先确认应用获取与已有资料,再确认连接,最后检查规则与自动行为,可以减少反复修改。以下顺序适合“已导入,但访问结果不符合预期”的情况。

  1. 确认已有资料。在 Home 检查服务器条目是否完整,订阅是否更新成功,当前是否选中了预期条目。不要把订阅可读取直接当成连接可用。
  2. 确认系统连接。检查首次 VPN 配置授权是否完成,并核对实际连接状态。权限提示的含义见VPN 配置授权说明。
  3. 确认测试条件。保持网络不变,选择明确的 Test Method,执行 Connectivity Test,再验证实际请求。超时可参照连接失败排查顺序。
  4. 确认路由与规则。检查 Global Routing;使用 Config 时继续核对当前配置、规则顺序和策略指向。临时切换模式后,记得恢复原设置。
  5. 最后检查自动与辅助设置。在基础连接稳定后,再逐项验证 On Demand、DNS、自定义测试方式和同步结果。保留更改前后的记录,便于回退。
Proxy 可以访问,Config 不符合预期,应先查什么?

先查当前启用的 Config、目标请求命中的规则及其策略,再核对自定义策略组的成员。模式不同导致结果变化,是缩小排查范围的线索,不足以直接认定 DNS 或服务器出错。

换一台设备后,为什么还需要检查设置?

已购恢复、资料同步和系统 VPN 授权分别处理不同事项。即使应用已恢复,也要检查本机授权、当前配置与服务器选择。iPhone、iPad 的兼容性与系统要求以 App Store 页面标注为准。

哪里查看从导入到首次连接的完整步骤?

按顺序阅读入门指南,完成已有资料导入、Global Routing 选择、系统授权与实际访问验证。购买和已购恢复问题则查看App Store 获取指南。