常见问题解答
以下整理了用户在使用 DNS over HTTPS 解析器时最常遇到的问题及详细解答。
Q1:DoH 和普通的 DNS 查询有什么区别?为什么要使用 DoH?
答:普通 DNS 查询使用 UDP/TCP 53 端口进行明文传输,任何人都可以监控和篡改查询内容。DoH 将 DNS 查询封装在 HTTPS 请求中,通过 TLS 加密保护查询数据。
使用 DoH 的主要优势:
- 隐私保护:ISP 和网络监控者无法看到您在访问哪些网站
- 防篡改:DNS 响应不会被中间人修改,防止 DNS 劫持和钓鱼攻击
- 抗审查:DoH 流量与普通 HTTPS 流量不可区分,难以被封锁
- 防窃听:即使在不安全的公共 Wi-Fi 环境中,DNS 查询也是加密的
目前所有主流浏览器都支持 DoH。在 Chrome 中可以通过设置 -> 隐私和安全 -> 安全 -> 使用安全 DNS 来启用。Firefox 默认已启用 DoH(在某些地区)。
Q2:使用 DoH 会降低上网速度吗?
答:DoH 对上网速度的影响通常很小,在某些情况下甚至可能提升速度:
- 首次查询:DoH 的首次查询需要建立 HTTPS/TLS 连接,可能比普通 DNS 稍慢几毫秒到几十毫秒。但这个开销只在首次连接时发生,后续查询会复用已建立的连接。
- 缓存命中:一旦 DNS 结果被缓存,DoH 和普通 DNS 的性能没有区别。浏览器和操作系统都有 DNS 缓存机制。
- ISP DNS 劣化:某些 ISP 的 DNS 服务器性能较差或响应不稳定,使用更快的 DoH 服务器(如 Cloudflare 1.1.1.1)反而可能提升 DNS 解析速度。
- DoH 服务器性能:主流的 DoH 服务器(Google、Cloudflare)使用了全球分布的 Anycast 网络,响应速度通常优于 ISP 的 DNS 服务器。
总的来说,DoH 带来的延迟增加通常在 1-10 毫秒范围内,对日常使用几乎无法感知。如果您的 ISP DNS 服务较慢,使用 DoH 可能会有正向的性能提升。
Q3:查询返回 NXDOMAIN 是什么意思?
答:NXDOMAIN(Non-Existent Domain)是 DNS 响应码之一,表示查询的域名不存在。可能的原因包括:
- 域名未注册:您查询的域名没有被任何人注册。例如,查询一个完全虚构的域名就会返回 NXDOMAIN。
- 域名已过期:之前注册的域名已经过期且未续费,DNS 记录已被删除。
- DNS 记录被删除:域名虽然存在,但对应的特定类型记录(如 A 记录)已被管理员删除。
- DNS 传播延迟:如果您刚修改了 DNS 记录,旧的 NXDOMAIN 缓存可能还未过期。等待一段时间后重试即可。
- 拼写错误:检查域名是否有拼写错误,特别是常见的错误如将 l 写成 1、将 0 写成 o 等。
如果确认域名应该存在但仍然返回 NXDOMAIN,可以尝试使用不同的 DoH 服务器查询,排除特定服务器的缓存问题。
Q4:TTL 值是什么?对 DNS 缓存有什么影响?
答:TTL(Time To Live,生存时间)是 DNS 记录中的一个重要参数,表示该记录在 DNS 缓存中可以被保留多长时间,单位为秒。
TTL 的工作机制:
- 当 DNS 解析器首次查询某个域名的记录时,它会将结果缓存,并记录 TTL 值
- 在 TTL 到期之前,后续的查询直接返回缓存结果,不需要再次向权威服务器查询
- TTL 到期后,缓存记录被丢弃,下次查询需要重新向权威服务器获取
TTL 值的选择建议:
- 短 TTL(60-300 秒):适合即将变更 DNS 记录的场景,或需要快速故障转移的场景
- 中等 TTL(3600-86400 秒):适合大多数常规网站,平衡了性能和灵活性
- 长 TTL(86400-604800 秒):适合很少变更的记录,最大化缓存效率
通过 DoH 解析器查询时,返回的 TTL 值反映了权威 DNS 服务器设置的原始 TTL,减去缓存已消耗的时间。如果需要查看精确的原始 TTL,建议在 DNS 变更后立即查询。
Q5:为什么不同的 DoH 服务器返回了不同的结果?
答:不同的 DoH 服务器返回不同结果的可能原因包括:
- DNS 传播未完成:如果您刚修改了 DNS 记录,不同的 DNS 服务器可能还未同步到最新的数据。DNS 变更的全球传播通常需要几小时到 48 小时。
- 缓存差异:不同服务器的 DNS 缓存状态不同。某些服务器可能还缓存着旧的记录,而其他服务器已经获取了最新的数据。
- 地理位置路由:某些 DNS 服务使用 Anycast 技术,不同地区的用户可能被路由到不同的物理服务器,这些服务器可能返回基于地理位置优化的不同结果(如 CDN 场景)。
- 安全过滤差异:Quad9 等 DNS 服务内置了恶意域名拦截功能。如果查询的域名被标记为恶意,Quad9 可能会返回不同于其他服务的结果。
- 部分记录缺失:某些 DNS 服务器可能不支持所有记录类型,对于不支持的类型可能返回空结果或错误。
如果结果差异持续存在,建议等待 24-48 小时后再查询。对于重要的 DNS 变更,可以使用多个 DoH 服务器交叉验证。
Q6:如何查询 SPF 和 DMARC 记录?
答:SPF 和 DMARC 记录都以 DNS TXT 记录的形式存储。使用本工具查询的方法如下:
查询 SPF 记录:
- 选择 TXT 作为查询类型
- 输入邮件域名(如 example.com)
- 执行查询,查找以 "v=spf1" 开头的 TXT 记录
- 如果找到 SPF 记录,验证其语法是否正确
查询 DMARC 记录:
- 选择 TXT 作为查询类型
- 输入
_dmarc.example.com(在域名前加上 _dmarc 前缀) - 执行查询,查找以 "v=DMARC1" 开头的 TXT 记录
- 验证 DMARC 策略(p=none/quarantine/reject)是否正确配置
工具的"常用查询"功能会自动查询 A、AAAA、MX、NS 和 TXT 五种记录类型,帮助您全面了解域名的配置状态。
Q7:DoH 是否会被防火墙或网络审查工具封锁?
答:DoH 相比传统 DNS 和 DoT 具有更强的抗封锁能力,但并非完全不可封锁:
DoH 的抗审查优势:
- DoH 流量使用 443 端口,与普通 HTTPS 流量完全相同
- 封锁 DoH 服务器需要同时封锁其 HTTPS 服务,这会影响到正常 Web 访问
- 即使封锁了已知的 DoH 服务器 IP,用户可以通过 CDN 中转或使用域名前置(Domain Fronting)技术绕过
潜在的封锁手段:
- SNI 检查:深度包检测(DPI)可以检查 TLS 握手中的 SNI(Server Name Indication)字段,识别对 DoH 服务器的连接
- IP 黑名单:封锁所有已知 DoH 服务器的 IP 地址
- 流量指纹:通过分析 DoH 流量的模式特征(如请求大小、频率)来识别 DoH 连接
为了应对潜在的封锁,建议:使用支持 ECH(Encrypted Client Hello)的浏览器来加密 SNI 信息;使用支持 DoH 代理的工具;关注最新的反封锁技术发展。
UD5工具箱