Shadowrocket 配置文件是一组用于描述代理节点、策略、分流规则、DNS 和相关网络设置的结构化内容。导入后,应用会根据文件包含的项目更新当前配置,因此不能把它简单理解为“批量导入几个节点”。

文件最终会新增、替换还是重新组织哪些内容,取决于文件本身、导入方式和当前应用版本。稳妥做法是:导入前备份,导入后逐项检查,不熟悉来源的文件不要直接启用。如果你第一次接触这款工具,可以先查看 Shadowrocket 是什么及基础功能

文章目录

  1. 配置文件通常包含哪些内容
  2. 怎样阅读一份配置文件
  3. 导入前要检查什么
  4. 导入后怎样确认配置生效
  5. 配置文件、二维码和手动添加的区别
  6. 常见问题

一、Shadowrocket 配置文件通常包含哪些内容

不同文件不一定包含全部项目。阅读文件时,先确认有哪些区块,再判断它们之间是否正确引用。

配置内容主要作用导入后应该检查什么
代理节点定义服务器地址、端口、协议和认证信息节点是否完整、来源是否可信、能否建立连接
策略组决定从哪些节点或动作中选择出口策略是否引用了实际存在的节点,默认选择是否符合预期
分流规则判断不同请求应该交给哪个策略规则顺序是否合理,兜底规则是否过早出现
DNS 设置决定域名解析所使用的服务器和路径是否改变原有解析方式,是否影响内网或目标业务域名
重写、脚本或证书相关设置改变请求、响应或流量检查方式是否确实需要、来源是否可信、是否涉及敏感数据
其他网络设置控制部分连接或系统行为是否包含不熟悉的开关,是否有恢复方案

Shadowrocket 的 App Store 功能说明确认应用支持从 URL 或 iCloud Drive 导入规则文件,但公开说明没有为所有导入形式承诺统一的覆盖行为。因此,不应把“所有配置文件都会整体覆盖”写成固定结论。

二、怎样阅读一份 Shadowrocket 配置文件

下面是用于说明结构的脱敏示意,不是可直接使用的完整配置。区块名称和语法可能随文件来源、格式或应用版本不同。

[General]
dns-server = 1.1.1.1

[Proxy]
Example-Node = http, proxy.example.com, 8080, username, password

[Proxy Group]
Main = select, Example-Node, DIRECT

[Rule]
DOMAIN-SUFFIX,example.com,Main
FINAL,DIRECT
Shadowrocket配置文件中General、Proxy、Proxy Group和Rule区块关系示意图
图示:Shadowrocket 配置文件中的通用设置、代理节点、策略组和分流规则之间的引用关系。

先看节点,再看引用关系

[Proxy] 定义可用出口;[Proxy Group] 决定怎样选择出口;[Rule] 把具体请求交给某个策略。节点存在并不代表一定会被使用,只有策略引用它、规则又命中该策略时,它才可能成为实际出口。

最后检查 DNS 和兜底规则

DNS 设置会影响域名解析,FINAL 一类兜底规则则处理前面没有命中的请求。兜底规则的位置或目标策略不符合预期,可能造成大量流量走错出口。

关于 .json:不同来源的 .json 文件可能代表不同的数据结构。在没有确认文件内容和当前版本导入方式前,不要默认它与常见配置文件具有完全相同的作用。

三、导入 Shadowrocket 配置文件前要检查什么

  • 文件是否来自可信来源,是否知道提供者是谁
  • 是否已经备份当前可用配置,并确认怎样恢复
  • 文件中是否包含未知服务器、账号或认证信息
  • 策略组是否引用了正确且实际存在的节点
  • 规则列表中是否过早出现兜底规则
  • DNS 设置是否会改变现有解析路径
  • 是否包含证书、HTTPS 解密、脚本或重写等敏感设置
  • 是否已经确定导入后要验证的网站、出口 IP 和地区结果

尤其要谨慎对待证书、HTTPS 解密和脚本。它们可能接触或改变网络请求,不应为了“配置更全”而默认启用。团队分发文件时,还应记录版本、负责人、变更内容和回滚方式。

四、导入后怎样确认配置真的生效

Shadowrocket配置文件导入前检查与导入后验证流程图
图示:导入 Shadowrocket 配置文件前先备份和检查,导入后通过节点、策略、日志和公网 IP 逐项验证。
  1. 确认当前启用的配置。不要只看“导入成功”提示,要确认应用正在使用刚导入的配置。
  2. 检查节点。确认需要的节点存在,服务器、端口和认证信息没有缺失。
  3. 检查策略组。确认策略引用了正确节点,当前选中项符合业务要求。
  4. 发起新的连接请求。避免只观察导入前已经建立的连接。
  5. 查看日志。确认请求命中了哪条规则、调用了哪个策略。
  6. 核对公网出口。查询当前公网 IP,确认地区和网络属性是否符合预期。
  7. 验证目标业务页面。实际检查页面内容、接口结果或地区展示,而不是只依赖测速。

如果已经成功导入,但请求仍没有走预期出口,可以继续查看 Shadowrocket 配置不生效排查,其中包含规则顺序、策略引用和日志定位方法。

五、配置文件、二维码和手动添加有什么区别

方式适合情况主要注意点
手动添加少量节点、临时测试参数容易填错,不适合维护大量规则
二维码单节点或快速导入扫码前不容易看清全部内容,应确认来源
配置文件多规则、长期维护或团队统一配置导入前应检查内容、备份现有配置并准备回滚

没有哪一种方式在所有场景下都更好。个人临时测试可能只需手动添加;需要扫码时可先了解 Shadowrocket 节点二维码的内容与风险;需要多人共享、版本管理或维护复杂规则时,结构化配置文件通常更容易管理。

只需要添加少量代理节点、不涉及复杂规则时,可以参考 Shadowrocket iOS 新手使用步骤

六、Shadowrocket 配置文件常见问题

Shadowrocket 配置文件从哪里导入?

App Store 的公开功能说明确认支持从 URL 或 iCloud Drive 导入规则文件。不同版本的菜单名称和入口可能变化,应以当前应用界面为准。导入前先完成备份和内容检查。

导入配置文件会删除原来的节点吗?

不能脱离文件内容、导入方式和应用版本给出统一答案。配置可能新增、替换或重新组织部分节点、规则和策略。最可靠的方法是先备份,在测试配置中导入,并比较导入前后的节点、策略和规则。

配置文件导入成功为什么没有生效?

常见原因包括:没有启用新配置、策略未引用目标节点、规则没有命中、已有连接未重新建立,或 DNS 与网络环境影响了结果。先按本文的七步验证,再进入配置排查专题。

配置文件和订阅链接有什么区别?

配置文件描述某一份具体配置内容;订阅链接是获取或更新内容的入口。订阅返回的是节点列表、规则还是完整配置,要看提供方实际下发的内容,不能只凭“订阅”二字判断。

如何恢复导入前的配置?

导入前先导出或复制现有配置,并记录当前启用项。恢复时重新导入备份并逐项确认节点、策略、规则和 DNS。团队环境还应保留版本号和变更记录。

不认识的配置文件能不能直接导入?

不建议。未知文件可能包含陌生代理服务器、DNS、重写、脚本或证书相关设置。无法解释其内容和影响时,不要在承载账号、支付或公司内部系统的设备上直接启用。