Shadowrocket DNS 设置与代理规则怎么选?
简答:先记住:日常按域名分流通常选择 Global Routing → Config;DNS 先保留系统设置,只有出现解析超时、域名解析异常或需要加密 DNS 时再改为自定义 DNS 或 DoH。Proxy、Direct 适合临时对照测试,不等于修复全部规则。修改前备份配置,每次只改一个变量,并重新访问同一地址验证。
定义:Shadowrocket 的 DNS 负责把域名解析为地址,Global Routing 决定整体处理方式,规则则根据域名、IP 或其他条件选择 PROXY、DIRECT 或 REJECT 策略。
先按这个顺序设置:路由模式 → 配置文件 → 规则 → DNS
Shadowrocket 是 iOS 和 iPadOS 上的代理客户端;App Store 页面显示其支持通过配置、服务器和规则处理网络请求,但具体界面会随应用版本变化,菜单名称应以当前安装版本为准。App Store 中的 Shadowrocket 页面可用于核对应用条目和当前版本信息。
- 先确认服务器或订阅已经导入。DNS 和规则不能代替服务器地址、端口、认证信息或可用的网络连接。
- 打开 Home,查看 Global Routing。日常需要按域名分流时选择
Config;临时比较代理路径时选择Proxy;检查当前网络能否直连时选择Direct。 - 打开 Config,确认正在使用的配置文件。仅导入或保存文件,不代表它已经成为当前生效配置。
- 先不要改 DNS。使用现有配置访问一个已知可用地址,记录网页是否能打开、连接日志和匹配到的规则。
- 只有出现明确的解析问题时再调整 DNS。改完后关闭并重新发起请求,不要只刷新已经打开的页面。
检索到的 Shadowrocket 设置说明也将 Config、Proxy、Direct 视为整体路由模式,而不是服务器名称;规则中的 PROXY、DIRECT、REJECT 则是单条规则命中后的处理策略,两者不能混为一谈。Shadowrocket 设置与规则说明
DNS 怎么选:系统 DNS、自定义 DNS 还是 DoH?
DNS 只回答“这个域名对应什么地址”,不直接决定请求一定走代理还是直连。真正的访问路径还会受到 Global Routing、当前配置、规则顺序、代理服务器和系统网络状态影响。Apple 的 Network Extension 文档也将 DNS 配置、DNS over HTTPS 和 DNS over TLS 作为独立的网络能力说明,表明加密 DNS 本身不等于完整代理连接。Apple DNS Settings 文档
| 选项 | 适合场景 | 优点 | 主要注意事项 |
|---|---|---|---|
| 系统 DNS | 普通日常使用、局域网设备或内网域名较多 | 改动少,便于保留当前网络的局域网解析能力 | 若当前网络的 DNS 不稳定,可能出现解析超时或结果异常 |
| 自定义 DNS | 需要明确指定解析服务器,且已确认该服务器可达 | 便于对照不同解析路径 | 填入不可达或不适合当前网络的地址,可能让网页和订阅域名一起解析失败 |
| DoH | 需要使用 HTTPS 形式的 DNS 服务,并且端点可访问 | DNS 请求通过 HTTPS 发送,配置目标更明确 | 需要完整 URL、端点可达;若依赖域名引导解析,还要检查 bootstrap 或初始解析链路 |
推荐选择:没有明确 DNS 故障时先用系统 DNS;只有当日志或对照测试指向解析问题时,再一次只改为自定义 DNS 或 DoH。Apple 文档说明,系统级加密 DNS 配置需要用户明确启用,具体能否由某个客户端提供则取决于客户端实现和当前版本。Apple Network Extension 文档
不要把 DNS 当成代理规则:即使域名成功解析,也可能因为规则将其设为 DIRECT 而直连;同样,DNS 正常也不代表代理服务器、TLS 握手或目标站点一定可用。
Config、Proxy、Direct 怎么选?
| Global Routing 模式 | 作用 | 适用情况 | 验证方法 |
|---|---|---|---|
Config | 按照当前配置文件中的规则决定每个请求的策略 | 日常分流、国内直连与其他地址按规则分别处理 | 确认配置已启用,再查看日志或规则匹配结果 |
Proxy | 使用代理路径处理请求,具体行为仍可能受系统绕过和客户端设置影响 | 临时判断某个目标能否通过已选服务器访问 | 保持目标地址不变,切换到 Proxy 后重新发起请求 |
Direct | 使用当前网络的直连路径 | 判断问题是否只出现在代理路径,或检查内网、局域网服务 | 在相同网络和目标地址下重新访问;直连失败不代表规则错误 |
日常使用优先选择 Config,因为它能够按规则分别处理不同域名或 IP。Proxy 和 Direct 更适合作为对照组:如果 Proxy 可以打开而 Config 不行,优先检查规则顺序、配置文件是否生效及命中的策略;如果 Direct 可以打开而 Proxy 不行,优先检查服务器、代理协议、端口和连接日志。切换模式后必须重新发起请求,不能只观察已经加载完成的页面。
规则怎么选:类型、策略与顺序
Shadowrocket 规则通常由“匹配类型、匹配值、策略”组成。规则从上到下检查,前面较宽泛的规则可能先命中,因此具体规则应放在宽泛规则前面,未匹配请求再交给 FINAL 兜底。以下仅为结构示例,不是可直接复制的完整配置,也没有提供任何服务器地址。
[Rule]
DOMAIN,example.com,PROXY
DOMAIN-SUFFIX,example.net,DIRECT
DOMAIN-KEYWORD,ads,REJECT
IP-CIDR,192.168.0.0/16,DIRECT
GEOIP,CN,DIRECT
FINAL,PROXY| 规则类型 | 匹配范围 | 使用提示 |
|---|---|---|
DOMAIN | 精确域名 | 只想匹配一个主域名或完整主机名时使用 |
DOMAIN-SUFFIX | 域名后缀及其子域名 | 适合覆盖一个域名及多个子域名,范围比 DOMAIN 大 |
DOMAIN-KEYWORD | 域名中包含指定关键词 | 范围较宽,可能误匹配,应尽量缩小关键词 |
IP-CIDR / IP-CIDR6 | IPv4 / IPv6 地址段 | 依赖目标地址和解析路径;不应仅凭域名规则经验判断 |
GEOIP | 按 IP 地理归属匹配 | 地理归属不等于服务实际内容或网络路径,适合做粗粒度兜底 |
FINAL | 前面没有命中的请求 | 通常放在规则末尾,明确指定最后的默认策略 |
PROXY、DIRECT、REJECT 是策略,不是匹配类型:PROXY 走代理,DIRECT 直连,REJECT 拒绝请求。加入 REJECT 后,网页可能不仅少一个广告,还可能缺少登录、图片、通知或接口资源,所以必须对受影响功能进行完整测试。规则和策略的基本区分可参考 Shadowrocket 设置说明。
按场景选择的速查表
| 你的目标 | Global Routing | DNS 建议 | 规则重点 |
|---|---|---|---|
| 日常按网站分流 | Config | 先用系统 DNS | 确认配置启用,具体规则在前,FINAL 在后 |
| 只想临时比较代理路径 | Proxy | 保持原 DNS | 固定同一目标测试,不要同时改服务器和规则 |
| 检查局域网或内网服务 | Direct 或明确的 DIRECT 规则 | 优先保留系统 DNS | 检查局域网 IP、内网域名和是否存在代理绕过设置 |
| 域名经常解析超时 | 先保持原模式 | 逐项对照自定义 DNS 或 DoH | 先确认 DNS 端点可达,再判断规则是否命中 |
| 广告拦截后网页缺资源 | Config | 不必先改 DNS | 检查 REJECT 规则是否过宽,必要时暂时禁用单条规则 |
| 网页打不开但连接显示正常 | 先用 Proxy、Direct 做对照 | 记录解析结果和超时位置 | 查看命中规则、策略组、服务器连接和日志 |
网页打不开、规则不生效时的排查步骤
- 记录原状态:保存当前 Global Routing、活动配置、服务器和 DNS 设置;先导出或复制配置,避免无法回滚。
- 固定测试条件:使用同一个域名、同一个 Wi-Fi 或蜂窝网络,并在切换模式后重新发起请求。
- 先测 Direct:如果直连也打不开,问题可能在当前网络、目标服务或 DNS,不要直接归因于代理规则。
- 再测 Proxy:如果 Proxy 也打不开,检查所选服务器、端口、认证、协议和连接日志。
- 最后回到 Config:查看实际启用的配置文件,确认规则顺序、策略名称和 FINAL;不要只看你编辑过的文件。
- 一次只改一个变量:例如先只替换 DNS,再测试;不要同时更换服务器、配置文件、DNS 和规则。
- 恢复验证:若修改后更差,立即恢复备份配置,重新启用原配置,再确认原问题是否仍能复现。
如果使用 IP 规则,域名解析结果可能影响是否能匹配到 IP-CIDR;但一次对照测试不能覆盖所有应用、TUN、浏览器缓存和系统网络行为。因此,日志中的匹配规则、解析失败位置和实际连接结果应分别记录,不能只凭“VPN 图标已连接”下结论。
第三方使用说明与版本边界
本站是第三方使用指南,不是 Shadowrocket 官方站点,也不提供该应用的下载、服务器或订阅。本文只基于 App Store 页面、Apple 网络扩展文档和检索到的设置说明整理通用操作;Shadowrocket 的界面、DNS 选项、配置格式和规则能力可能随版本变化,具体入口以当前 App Store 条目和应用内显示为准。
截至 2026 年 11 月 1 日,本文没有据此推断任何服务商的价格、可用性、速度或长期稳定性;文中示例域名和配置仅用于解释规则结构。
常见问题
Shadowrocket 日常使用应该选 Config、Proxy 还是 Direct?
通常选 Config,因为它按当前配置文件中的规则分流。Proxy 适合临时判断某个目标能否通过代理访问,Direct 适合比较当前网络的直连结果;测试结束后应恢复原来的 Config。
Shadowrocket DNS 要不要改成 DoH?
没有明确解析故障时不建议先改。先使用系统 DNS;若出现 DNS 超时、域名解析异常,再逐项测试自定义 DNS 或 DoH,并确认完整 URL、端点可达性和初始解析链路。
为什么 Proxy 模式能打开,Config 模式却打不开?
这通常只能说明两种模式的处理路径不同,不能直接证明服务器或规则一定有问题。先确认活动配置、规则顺序、实际命中规则和 FINAL,再检查该规则指向的策略或策略组。
DOMAIN、DOMAIN-SUFFIX 和 DOMAIN-KEYWORD 有什么区别?
DOMAIN 用于精确域名,DOMAIN-SUFFIX 覆盖指定后缀及其子域名,DOMAIN-KEYWORD 按域名关键词匹配,范围通常更宽、误匹配风险更高。具体规则应放在宽泛规则前面。
设置 DNS 后内网域名打不开怎么办?
先恢复系统 DNS,并切回 Direct 测试同一个内网域名。如果恢复后正常,说明自定义 DNS 或 DoH 可能无法解析该内网域名;不要继续叠加规则,先确认局域网 DNS 的可达性和域名范围。
添加 REJECT 规则后网页显示不完整,怎么处理?
暂时禁用最近添加的 REJECT 规则并重新加载页面。如果页面恢复,再缩小规则匹配范围,逐项确认哪些资源被拒绝;广告规则过宽可能影响登录、图片、通知或接口请求。
相关阅读
参考资料
- App Store:Shadowrocket 应用页面
- Shadowrocket 设置与规则说明:Global Routing、规则和 DNS(shadow-official.com)
- Apple Developer Documentation:Network Extension
- Apple Developer Documentation:DNS Settings