2026-08-27 · 进阶设置 · 约 10 分钟

Shadowrocket DNS 设置

逐项说明系统 DNS、自定义 DNS 与 DoH 的工作方式和取舍,讲清它们与规则分流的配合,以及填写后如何验证是否生效。

本文速览

本文适合已经在 Shadowrocket(小火箭)中完成基本连接、需要选择 DNS 或排查域名解析问题的用户。先区分解析服务器、解析传输与请求出站,再按系统 DNS、自定义 DNS、DoH 的顺序做单变量对照,最后结合 Config 规则和连接记录确认结果。

DNS 设置影响什么

DNS 负责把域名解析为地址。打开一个网站时,客户端通常需要取得 A 或 AAAA 记录,再向对应地址建立连接。A 对应 IPv4,AAAA 对应 IPv6。域名解析成功,并不等于后续 TCP、TLS 或代理连接一定成功;因此“打不开网页”不能直接归因于 DNS。

下列流程是便于排查的逻辑示意,不代表所有连接都严格按同一顺序执行。域名规则可以在取得目标 IP 前匹配,IP 类规则则可能依赖解析结果;部分代理连接也可能把域名交给远端解析。

域名请求 规则判断 按需解析 选择出站 建立连接

需要分别回答三个问题:向哪台 DNS 服务器查询、用什么协议发送查询、查询本身走哪条网络路径。把服务器改成某个地址,只回答了第一个问题;选择 DoH,主要改变第二个问题。DNS 的出站路径仍受当前配置和连接条件影响,不能仅凭填写内容推断。

53
传统 DNS 的常见 UDP / TCP 端口
443
DoH 的常见 HTTPS 端口,可由端点另行指定
2 类
常见地址记录:A 与 AAAA

系统 DNS、自定义 DNS 与 DoH

系统 DNS 通常沿用设备当前网络提供的解析配置。它适合作为初始基线,也更可能满足公司内网、校园网或家庭局域网中的内部域名需求。但从 Wi-Fi 切换到蜂窝网络后,实际使用的解析服务器可能变化,所以不同网络下的结果需要分别记录。

设置方式 确定的内容 适用条件 主要检查项
系统 DNS 沿用系统解析配置 建立基线,访问依赖本地解析的域名 网络切换、内网域名与系统配置
自定义传统 DNS 指定解析服务器地址 需要固定解析来源,且该服务器可达 UDP / TCP 53 可达性与返回记录
DNS over HTTPS 通过 HTTPS 查询指定端点 需要加密查询传输,且端点可以建立 HTTPS 连接 完整 URL、证书、时间与初始解析

“自定义”与“加密”不是同一个维度。手动填写普通 DNS 服务器 IP,不会自动变成 DoH;DoH 也不保证返回地址更适合当前网络。解析器可能依据查询来源和自身策略返回不同的内容分发地址,换解析器后网页变慢,不一定是查询本身变慢。

DoH 加密的是设备到 DoH 端点之间的查询传输。它不隐藏端点所接收的查询,也不替代网站自身的 HTTPS,更不代表所有应用都已采用同一解析路径。部分应用会维护自己的缓存或解析机制,需要在验证时单独识别。

判断:先保留可用基线,再更换传输

系统 DNS 能稳定访问目标网站时,先记录结果;只有出现明确解析故障或需要加密查询传输时,再测试自定义 DNS 或 DoH,不要同时修改节点、规则和 DNS。

在 Shadowrocket 中填写 DNS

以下以 iPhone / iPad 的 Home、Config、Settings 结构说明。先在 Home 确认当前使用的连接,在 Config 确认启用的配置,再进入 Settings → DNS 检查解析设置。不同平台的入口布局可能不同,不应直接照搬移动端点击位置。

  1. 记录 Home 中当前连接和 Global Routing 选择,并保存一份当前 Config 副本。节点与订阅从你的服务商处获取,本文不提供或推荐相关服务。
  2. 在 Settings → DNS 查看当前设置;同时检查启用 Config 的 [General] 中是否有 dns-server。不要只改一处就认定实际配置已改变。
  3. 先使用系统 DNS 完成一次访问测试,再只修改 DNS 项。若使用 DoH,填写解析服务明确提供的完整 HTTPS 端点,不要填写服务商介绍页。
  4. 保存后重新建立连接,再重复访问同一个域名。若仍出现旧结果,先考虑缓存与应用已有连接,再判断设置是否生效。

下面两张卡用于核对字段含义,不是可直接使用的解析服务。示例中的 192.0.2.53 属于文档示例地址,dns.example.com 是示例主机名,均须替换为你有权使用且确认可达的真实值。

传统 DNS 核对

入口
Settings → DNS
系统值
system
地址示例
192.0.2.53,仅用于说明格式
配置项
[General] 下的 dns-server

填写 IP 指定了解析目标,不会自动启用加密传输。

DoH 核对

协议
https://
端点示例
https://dns.example.com/dns-query
路径
以实际解析服务给出的路径为准
证书要求
证书有效,且与端点主机名匹配

DoH 端点不是订阅链接;不要把订阅内容填入 DNS 项。

如果采用 Config 文件管理 DNS,可先用下面的最小片段建立系统 DNS 基线。这只是文件片段,不包含代理与规则配置,不要把它当作完整配置覆盖现有文件。远程 Config 更新可能改变文件内容,更新后应重新检查相关字段。

[General]
dns-server = system

DNS 与规则分流如何配合

Global Routing 的 Proxy、Direct、Config、Scene 是不同的路由姿态,不是四种 DNS 协议。Proxy 和 Direct 用于整体出站选择;Config 按当前配置中的规则处理;Scene 按所选场景的设置处理。排查规则时应先确认处于预期姿态,不能在 Direct 下用访问结果证明某条代理规则已经生效。

下面的片段展示域名规则、IP 规则与兜底规则的顺序。example.com 和 192.0.2.0/24 都只作语法示例;其中 PROXY 应有当前配置可用的代理策略承接。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.0.2.0/24,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY

DoH 请求自身也需要连到一个服务器。若端点使用域名,首次连接通常需要先取得这个域名的地址,这一步称为初始解析。若初始解析或到端点的连接不可用,就可能出现普通网站都等待解析的现象。不要把“端点必须先经代理访问”和“代理建立又依赖这个端点解析”设置成循环依赖。

如何验证 DNS 是否生效

验证分为配置、查询、出站三个层面。界面显示已保存,只说明输入被接受;网站可以打开,只说明某条可用路径完成了访问。可靠结论需要把当前配置、查询结果和实际连接记录对应起来,而不是只看一次网页是否加载成功。

  1. 固定条件。保持同一设备、同一 Wi-Fi、同一节点、同一 Global Routing 和同一目标域名,只改变 DNS。记录修改前后是否出现解析超时、连接超时或 TLS 错误。
  2. 检查查询。在当前平台可用的 DNS 查询工具或连接记录中查看目标域名的 A / AAAA 结果。查询工具若自行指定另一台 DNS,只能验证那台服务器,不能证明 Shadowrocket 当前设置生效。
  3. 检查端点。使用 DoH 时,查找与端点主机名对应的连接记录,并核对实际端口。出现 HTTPS 连接仍不等于已成功返回 DNS 答案,还要结合错误记录判断。
  4. 检查规则。查看目标请求命中的规则、策略和出站。解析成功但命中非预期策略,应回到 Config 调整规则顺序,而不是继续替换解析器。
  5. 重复测试。重建连接并重新打开应用后再测一次;随后单独切换到蜂窝网络复测。网络切换测试应与第一次对照分开,避免把网络差异当成 DNS 差异。

缓存会明显影响判断。系统、浏览器、应用和解析器都可能缓存结果,已有连接还可能持续复用。页面立即打开不一定发生了新查询;更换 DNS 后仍看到原地址,也不一定说明修改失败。应结合记录中的新查询时间和连接时间确认,而不是频繁重复切换设置。

判断:先确认解析,再检查出站

如果已经取得合理的 A / AAAA 结果,而连接记录显示后续超时,下一步应检查目标地址可达性、IPv6 路径和代理出站,不再把更换 DNS 当作默认处理。

DNS 常见问题与处理

填了 DoH 后所有网页都打不开,先改哪里?

先恢复修改前的系统 DNS 基线并重建连接。若立即恢复访问,再逐项核对 DoH 的完整 URL、端点主机名初始解析、证书和设备时间。不要通过关闭证书验证绕过错误;端点路径写错也可能造成查询失败。

为什么家里正常,公司内网域名却失效?

先确认该域名是否只由公司内部 DNS 提供。外部解析器通常不知道内部记录;恢复该网络要求的系统解析,或使用经过管理员确认的分域解析配置。不要把公司内部域名批量交给外部端点测试。

能解析出地址,但网页仍然一直等待怎么办?

在 Home 确认连接状态与 Global Routing,再核对 Config 中命中的策略。分别查看 A 与 AAAA:如果只有 IPv6 目标连接失败,应检查 IPv6 路径。解析成功与地址可达是两件事,不能只用 DNS 结果判断线路状态。

检测页面显示其他解析器,是不是设置没生效?

不一定。检测结果可能体现解析服务的上游或出口,应用也可能使用独立解析。先确认测试发生时 Shadowrocket 已连接,再检查当前 Config、DNS 查询和端点连接记录;不能只凭显示的机构名称判定解析路径。

订阅刷新超时,也应该先换 DNS 吗?

先分清订阅域名解析失败、HTTPS 连接失败和服务商返回错误。订阅从你的服务商处获取;链接失效或授权状态异常,需要向你的服务商确认。只有记录明确指出域名解析失败时,才沿用本文的 DNS 对照步骤。

最终保留能在实际网络中稳定完成解析、且符合内网访问与隐私需求的设置。恢复日常使用前,删除文档示例值,恢复需要的 On Demand 条件,并保存经过验证的 Config。后续若同时更换网络和配置,应重新建立对照基线。

Shadowrocket 官方下载