设备如何自动发现加密DNS
How a device finds encrypted DNS by itself

设备通常只配置一个DNS解析器的IP地址,但这无法支持加密DNS所需的协议和端口信息。DDR(Discovery of Designated Resolvers)机制让解析器能主动向设备推送加密端点的详细配置。当设备连接网络时,它会向当前解析器查询_dns.resolver.arpa,获取DoH、DoT或DoQ等加密端点的地址和优先级。Windows 11和Apple设备已默认支持此功能。对于仅支持明文DNS的设备,如电视或游戏机,DDR也能帮助其自动切换到加密连接。不过,若网络运营商拦截查询,升级可能失败,因此手动配置加密解析器仍是更稳妥的选择。
一台已经加密的设备,比如使用DoH的浏览器或使用DoT的手机,可以发送同样的查询,从而得知DoH3和DoQ是否可用。
- Utilera
如果设备只暴露 IP 字段,那它确实可以在无需额外用户配置的情况下使用 DDR,但前提是它得先实现 DDR 和加密 DNS 协议……
- WarOnPrivacy
查询 _dns.resolver.arpa,这是一个保留域名,用于询问是否存在加密版本以及在哪里可以找到它。
挺有意思!我们来试试:nslookup _dns.resolver.arpa
[mine] unblound.lan 找不到 _dns.resolver.arpa:域名不存在
[1.1.1.1] 找不到 _dns.resolver.arpa:域名不存在
[8.8.8.8] 对于 _dns.resolver.arpa,IPv4 和 IPv6 地址(A+AAAA)记录均无内部类型
[9.9.9.9] 名称:_dns.resolver.arpa
- rdme
我自己运行一个解析器作为系统 DNS,可以确认苹果设备在每次加入网络时都会发起 _dns.resolver.arpa 查询。但由于经过验证的 DDR 需要覆盖解析器 IP 的 TLS 证书,这实际上意味着它仅适用于公共解析器。因此,对于局域网解析器来说,正确的做法是直接返回 NODATA,而不是将查询泄露到上游。