Shadowrocket DNS 设置教程:系统 DNS、DoH 怎么选和恢复
简答:先在当前生效配置中只修改 DNS,优先用系统 DNS或一个已核实可达的地址;保存后断开重连,再用同一域名测试。能解析但网页超时,应转查节点、规则和网络路径。
定义:Shadowrocket DNS 设置,是在客户端配置或 iPhone 当前网络中指定域名解析服务,DNS 负责解析域名,代理节点和规则负责后续连接路径。
先试这一步:只改 DNS,再断开重连
与 Shadowrocket 项目及开发者无隶属关系。本文是第三方使用指南,按 2026 年 10 月 23 日已核验的公开资料整理。Shadowrocket 的 App Store 页面确认它支持 DNS 请求记录、本地 DNS 映射、DNS over HTTPS、DNS over TLS、DNS over QUIC,并支持从 iPhone、iPad 等 Apple 设备导入配置;具体菜单名称可能随应用版本和系统语言变化,功能范围可查看Shadowrocket App Store 功能说明。
- 打开 Shadowrocket,进入当前正在使用的配置编辑区域,先记录配置名称、路由模式、DNS 原值和备用值。
- 常见操作路径是:配置(Config)→ 当前已选配置 → 编辑 → 通用(General)→ DNS 覆写或 DNS 相关字段。如果你的界面没有完全相同的名称,以当前版本显示的 DNS、DNS Override 或 General 字段为准;不要编辑列表中未选中的配置。
- 本轮只修改一个变量:先填系统 DNS,或填一个已确认可达的普通 DNS 地址;不要同时更换节点、规则、全局路由和 IPv6。
- 保存后回到主页,断开 Shadowrocket,再重新连接;使用同一 Wi-Fi 或蜂窝网络、同一个域名和新请求测试。
30 秒速查:所有网页都打不开,先把 DNS 改回原值或系统 DNS;只有某些域名失败,检查配置和规则;域名已经解析但网页超时,优先检查节点、端口、IPv4/IPv6 和目标站点。
DNS 覆写、本地 DNS 映射和系统 DNS怎么区分
| 入口或功能 | 作用 | 适合怎么用 | 改错后的回退 |
|---|---|---|---|
| 系统 DNS | 使用当前 Wi-Fi 或系统提供的解析服务 | 作为排查基线,先确认当前网络能否正常解析 | 配置改回 system,或在 iPhone Wi-Fi 的“配置 DNS”中选择“自动” |
| DNS 覆写 | 在客户端当前生效配置中指定普通或加密 DNS | 需要比较不同解析服务,或希望客户端使用独立 DNS 时使用 | 删除自定义值,恢复 system 或原配置 |
| 本地 DNS 映射 | 把特定域名固定对应到指定地址,不是公共 DNS 服务 | 只适合明确知道目标地址且需要固定映射的场景 | 删除对应域名映射,避免它覆盖正常解析结果 |
| DNS-over-PROXY 等其他方式 | 让 DNS 查询使用特定代理或配置路径 | 仅在当前版本和配置说明明确支持、且你能确认查询路径时使用 | 回退到系统 DNS 或普通 DNS,不要同时叠加多个未知字段 |
Shadowrocket 的 App Store 页面确认了本地 DNS 映射以及 DoH、DoT、DoQ 等能力,但没有在公开页面给出所有版本统一的配置字段和菜单截图。因此,配置文件中的字段名应以你当前应用实际显示和可成功保存的内容为准;不要把第三方示例中的多个 DNS 字段全部叠加。
DNS 只负责把域名转换为地址,不会直接增加节点带宽,也不会自动改变代理节点、全局路由或规则命中结果。域名已经解析成功但连接仍然超时,继续更换 DNS 不一定有效。
普通 DNS 与 DoH:可直接照填的地址示例
下面只列出由解析服务提供方公开的地址。它们是可测试的示例,不代表在所有地区、运营商、Wi-Fi 或蜂窝网络中都最快或一定可达;应一次只测试一组,并记录原值。
| 方式 | 可复制示例 | 适用判断 | 失败时怎么退回 |
|---|---|---|---|
| Cloudflare 普通 DNS | 1.1.1.11.0.0.1 | 适合作为一组公开 IPv4 DNS 进行可达性对照 | 恢复 system 或原 DNS |
| Google 普通 DNS | 8.8.8.88.8.4.4 | 适合作为另一组公开 IPv4 DNS 对照;Google 建议至少配置两个不同地址 | 恢复 system 或原 DNS |
| Google DoH | https://dns.google/dns-query | 仅填入当前版本明确接受完整 HTTPS DNS URL 的字段 | 删除 DoH URL,改用 system 或普通 DNS |
Cloudflare 官方 iOS 配置说明公布了 1.1.1.1、1.0.0.1及对应 IPv6 地址,并提醒手动 DNS 只作用于当前 Wi-Fi;Google 官方配置说明公布了 8.8.8.8、8.8.4.4、对应 IPv6 地址和 https://dns.google/dns-query,可分别核对Cloudflare 1.1.1.1 iOS 配置说明与Google Public DNS 配置说明。
格式要匹配字段:普通 DNS 字段通常填写 IP 地址,不能把 https://dns.google/dns-query 当成普通 IP;DoH 字段则需要当前版本接受完整 URL。若界面没有对应字段,不要凭截图猜字段名,先使用系统 DNS或普通 DNS完成基线测试。
Shadowrocket 中的实际设置路径与订阅配置注意事项
- 进入配置:打开 Shadowrocket,找到“配置(Config)”列表,确认当前被选中的配置,再进入编辑。列表里存在某个文件,不等于它正在控制当前连接。
- 找到通用 DNS:在当前配置编辑器中查找“通用(General)”和 DNS 相关位置。常见主路径是“配置→当前配置→通用→DNS 覆写”,但菜单文字和入口可能因版本、语言或配置类型不同而变化。
- 先填 system:如果目标是判断自定义 DNS 是否造成故障,先使用
system或恢复原值,保存后回主页重新连接。 - 再测一组地址:如果系统 DNS 能工作,只把 DNS 替换为 Cloudflare 或 Google 的一组地址,保持节点、规则和路由模式不变。
- 订阅更新后复查:如果 DNS 改动在更新订阅或远程配置后消失,重新确认当前配置和通用 DNS 字段。远程配置刷新可能覆盖本地编辑,因此修改前应保存原配置或记录原值。
Shadowrocket 的 App Store 页面说明它支持从 URL 或 iCloud Drive 导入规则文件,也支持 DNS 请求记录和网络信息显示。导入或刷新后,必须再次确认当前生效配置,而不能只看文件是否仍在列表中。
如何验证 DNS 是否生效,并区分 DNS、节点和规则故障
| 测试结果 | 更可能的问题 | 下一步 |
|---|---|---|
| 多个域名都出现解析失败或 DNS timeout | DNS 地址不可达、格式错误或当前网络阻断 | 切回 system,断开重连;若恢复,再单独测试另一组普通 DNS |
| 域名能解析出地址,但网页连接超时 | 节点、端口、线路、IPv4/IPv6、规则或目标站点 | 查看请求记录和连接日志,保持 DNS 不变,检查命中的策略和节点 |
| 只有一个或少数域名失败 | 本地 DNS 映射、规则顺序、域名匹配或目标站点 | 对比一个正常域名和一个失败域名,不要马上增加更多 DNS 地址 |
| 改完后结果完全没变化 | 编辑了未启用配置、缓存未更新或连接未重建 | 确认当前配置,保存后断开重连,并用新请求测试 |
- 在 Shadowrocket 中打开请求记录或日志相关页面,先确认测试请求是否出现;App Store 页面确认该应用支持记录和显示 HTTP、HTTPS、DNS 请求。
- 看失败请求有没有解析结果或目标 IP。没有解析结果且出现 DNS 错误,先查 DNS;已有目标 IP 但连接超时,不要直接归因于 DNS。
- 比较同一网络下的 Wi-Fi 与蜂窝数据,或比较 system 与一组自定义 DNS;每次只改变一项。
- 如果 DNS 恢复后网页仍打不开,保持 DNS 不变,继续查节点连接、全局路由、规则命中、IPv4/IPv6 和目标服务。
Google 的官方排查资料也提醒,DNS 解析工具的结果不能等同于最终网络连接速度;出现超时或不同解析结果时,应进一步检查网络可达性和解析路径,可参考Google Public DNS 故障排查说明。
改错后如何恢复 iPhone 系统 DNS
- 打开 iPhone“设置”。
- 进入“无线局域网”或“Wi-Fi”,点击当前已连接网络右侧的信息按钮。
- 进入“配置 DNS”,选择“自动”,点击保存。
- 回到 Shadowrocket,删除或撤销自定义 DNS 覆写,确认当前配置没有继续强制指定其他 DNS。
- 断开并重新连接 Shadowrocket,再用原来的域名测试。
Apple 用户指南确认,iPhone 可在“设置→Wi-Fi→当前网络信息”中配置 DNS、HTTP 代理等网络设置;Google 也说明将 iOS DNS 切回“自动”会恢复该 Wi-Fi 网络提供的 DNS。这里的手动 DNS 只针对当前 Wi-Fi,不会自动覆盖其他 Wi-Fi 或蜂窝数据网络,具体路径可核对Apple:管理 iPhone 的无线局域网设置。
如果你使用的是蜂窝数据,不能把 Wi-Fi DNS 的恢复结果直接推断到蜂窝网络;Cloudflare 的 iOS 文档也明确区分了手动 Wi-Fi 配置与覆盖蜂窝网络的应用方式。仍然失败时,应转向节点、规则、网络质量或目标站点排查。
常见问题
Shadowrocket DNS 设置入口在哪里?
常见路径是“配置(Config)→当前已选配置→编辑→通用(General)→DNS 覆写或 DNS 相关字段”。不同版本和语言的菜单可能不同,关键是确认编辑的是当前生效配置,而不是列表中未选中的文件。
Shadowrocket 普通 DNS 和 DoH 应该怎么选?
先用 system 建立基线;需要测试普通 DNS 时,可一次选择 Cloudflare 的 1.1.1.1、1.0.0.1 或 Google 的 8.8.8.8、8.8.4.4。只有当前字段明确接受完整 HTTPS URL 时,才使用 DoH 地址。
Shadowrocket DNS 设置后网页打不开怎么办?
先删除自定义 DNS 或恢复 system,保存后断开并重新连接,再用同一域名测试。如果恢复后仍打不开,检查节点、端口、规则、IPv4/IPv6 和目标站点,不要继续叠加 DNS 设置。
DNS 覆写和本地 DNS 映射有什么区别?
DNS 覆写是更换解析服务或解析方式;本地 DNS 映射是把指定域名固定指向某个地址。前者影响一类解析请求,后者只影响匹配到的域名,误填映射可能导致单个域名始终解析到错误地址。
为什么改了 DNS 但速度没有变快?
DNS 主要负责域名解析,不能直接增加节点带宽或降低代理线路丢包。若域名已经解析成功但网页仍超时,应检查节点、路由、规则、IPv4/IPv6、TLS 和目标站点。
Shadowrocket 订阅更新后 DNS 设置消失怎么办?
先确认当前选中的配置,再检查其通用 DNS 字段。远程配置刷新后,本地修改可能被覆盖;修改前应保存原值,更新后重新核对配置,并只恢复必要的 DNS 改动。
iPhone 如何恢复自动 DNS?
进入“设置→无线局域网→当前网络右侧信息→配置 DNS”,选择“自动”并保存。该手动设置只作用于当前 Wi-Fi,恢复后还要在 Shadowrocket 中撤销继续生效的自定义 DNS。