DoH/DoT 实测:13 家公共加密 DNS 延迟对比,和一个几乎人人填错的地址

AI 摘要规则摘要

网上讲 DoH / DoT 的文章,大多是同一份地址清单的反复搬运:罗列十几个服务商的 IPv4、IPv6、DoH 地址、DoT 域名,… 全文依次覆盖:先纠正一个几乎人人填错的地?、测量方法与环境(可复现)、测量中踩到的三个坑(很关键,会直接毁掉数据)、DoH 延迟、DoT 延迟,以及一个反直觉的结论、为什么国内网站不该用境外 DoH(实测证据)、可直接复制的地址清单(已…

此内容由AI根据文章内容自动生成。

网上讲 DoH / DoT 的文章,大多是同一份地址清单的反复搬运:罗列十几个服务商的 IPv4、IPv6、DoH 地址、DoT 域名,看完你只知道「有哪些」,不知道「该用哪个」,更不知道「填进去到底能不能通」。

这篇不搬运。我把 13 家公共加密 DNS 放到两个真实网络里跑了一遍——一台腾讯云机房的服务器,一条家庭宽带——测端口通不通、测延迟多少、测各家解析出来的 IP 是不是同一个。测完之后发现三件现有教程基本没讲清楚的事:

  1. 腾讯 DNSPod 的 119.29.29.29 根本不提供 DoH/DoT,它的 443 和 853 端口是关的。无数教程让你把这个 IP 和 https://doh.pub/dns-query 写在一起使用,其实两回事。
  2. 同样一条查询,DoH 比 DoT 快 2~3 倍(首次查询口径)。这和「DoT 更轻量所以更快」的直觉相反。
  3. 用境外 DoH 解析国内网站,拿到的是海外节点 IP。实测 www.taobao.com,国内三家给 183.36.18.x,Cloudflare 给 155.102.176.x,Google 给 163.181.60.x——完全不是一组地址。

下面是完整的测量过程和数据,方法写清楚了,你可以自己复现,也可以照着结论直接抄配置。

一、先纠正一个几乎人人填错的地址

几乎所有 DoH 教程都会这么写:「腾讯 DNSPod,IP:119.29.29.29,DoH:https://doh.pub/dns-query」。于是很多人就把这两行当成一个东西,甚至在路由器里把上游填成 https://119.29.29.29/dns-query。

我逐端口测了 DNSPod 的三个 IP,结果如下(腾讯云机房与家庭宽带两个网络交叉验证,结论一致):

服务商 / IP 明文 DNS(53) DoH(443) DoT(853) 说明
阿里 AliDNS 223.5.5.5 通 通 通 三种协议全能,最省心
阿里 AliDNS 备 223.6.6.6 通 通 通 同上
腾讯 DNSPod 119.29.29.29 通 不通 不通 只做明文 DNS
腾讯 DNSPod 1.12.12.12 不通 通 通 加密专用节点
腾讯 DNSPod 120.53.53.53 不通 通 — 加密备用节点
百度 DNS 180.76.76.76 通 不通 不通 没有可用的 DoH/DoT
114 DNS 114.114.114.114 通 不通 不通 同上

结论:要用 DNSPod 的加密 DNS,请填域名 doh.pub / dot.pub(让它自己解析到 1.12.12.12 这类加密节点),或者显式指定 1.12.12.12、120.53.53.53。把 119.29.29.29 当 DoH 服务器填,一定连不上。

顺带一提:百度 DNS 和 114 DNS 虽然名气很大,但实测它们没有对外可用的 DoH/DoT 服务(443 端口在两个网络里都不通)。这两家只适合继续当明文 DNS 用。

二、测量方法与环境(可复现)

为了让数据站得住,方法全部公开:

  • 查询内容:统一查询 www.baidu.com 的 A 记录,构造标准 DNS 报文,不带缓存预热。
  • DoH:RFC 8484 规定的 GET 形式,?dns=<base64url 编码的 DNS 报文>,请求头 accept: application/dns-message。
  • DoT:853 端口建 TLS,先收 2 字节长度前缀再收满报文体,不是简单 recv() 一次。
  • 采样:每家测 3~7 次取中位数,不是单次值。
  • 口径:DoH 用「首字节时间」(含 TCP + TLS + HTTP 全流程);DoT 用「TLS 握手完成时间 + 查询往返时间」,两者相加才是首次查询的真实总耗时,这样才和 DoH 可比。
  • 时间:2026-10-06。

测量中踩到的三个坑(很关键,会直接毁掉数据)

这几个坑不处理,测出来的数全是假的。我一开始也中招了:

  1. 本地 53 端口被透明劫持。我往 1.2.3.4、203.0.113.9 这种根本不是 DNS 服务器的 IP 发 DNS 查询,居然也收到了 74 字节的应答。说明本机所在网络把 53 端口的流量接管了。于是明文 DNS 的延迟全是 1~2ms 的假数据——那是本地网关在代答,不是上游的真实延迟。所以本文不给出明文 DNS 的延迟对比。(腾讯云机房同一测试无应答,说明机房侧没有劫持。)
  2. curl 默认会走系统代理。第一次测出来 Cloudflare 675ms、AdGuard 902ms,看着很像回事,但翻 curl -v 的日志才发现请求全走了 127.0.0.1 上的本地 HTTP 代理,连百度、114 的「失败」其实也是代理返回的 502,不是人家服务挂了。加上 --noproxy '*' 之后才是直连真实数据。
  3. DoT 的应答是分包的。服务端先发 2 字节的长度前缀,再发报文体。如果只 recv() 一次,你只会拿到 2 个字节,然后误判成「这家 DoT 不可用」——我一开始就是这么把阿里 DoT 判死的,实际它一直是通的。

三、实测结果:DoH 延迟

单位毫秒,「首字节」= 从发起请求到收到第一个字节响应,包含 TCP 建连、TLS 握手、HTTP 往返的全过程。

服务商 DoH 地址 腾讯云机房 家庭宽带
阿里 AliDNS 备 https://dns.alidns.com/dns-query(223.6.6.6) 34.2 37.7
阿里 AliDNS https://dns.alidns.com/dns-query(223.5.5.5) 32.3 39.2
腾讯 DNSPod https://doh.pub/dns-query(1.12.12.12) 39.8 81.3
360 安全 DNS https://doh.360.cn/dns-query 92.6 106.5
Cloudflare https://cloudflare-dns.com/dns-query 不通 651.3
Google DNS https://dns.google/dns-query 不通 701.2
DNS.SB https://doh.dns.sb/dns-query 不通 709.7
AdGuard DNS https://dns.adguard-dns.com/dns-query 不通 897.3
Quad9 https://dns.quad9.net/dns-query 不通 不通(HTTP 505)
百度 DNS / 114 DNS / CNNIC — 不通 不通

两个视角的差异本身就是结论:在纯净的国内机房网络里,境外 DoH 一个都连不上;在家庭宽带里能连上,但延迟是国内服务的 10~25 倍。把 651ms 花在每次域名解析上,打开一个网页要多等几十个 651ms。

四、实测结果:DoT 延迟,以及一个反直觉的结论

服务商 DoT 域名 腾讯云机房(握手+查询=总计) 家庭宽带(握手+查询=总计)
阿里 AliDNS 备 dns.alidns.com(223.6.6.6) 28 + 55 = 83 49 + 60 = 109
阿里 AliDNS dns.alidns.com(223.5.5.5) 31 + 58 = 89 49 + 61 = 110
360 安全 DNS dot.360.cn 74 + 102 = 176 91 + 101 = 192
Cloudflare one.one.one.one 不通(连接被重置) 503 + 163 = 666
Google DNS dns.google 不通 501 + 164 = 665
Quad9 dns.quad9.net 不通 504 + 165 = 669
DNS.SB dot.sb 不通 529 + 173 = 702
AdGuard DNS dns.adguard-dns.com 不通 658 + 239 = 897
腾讯 DNSPod dot.pub(119.29.29.29) 不通 不通

反直觉的地方:把两张表并排看,同一家服务商,DoH 的首次查询总耗时普遍只有 DoT 的三分之一左右(阿里:DoH 32ms vs DoT 89ms;360:DoH 93ms vs DoT 176ms)。原因不是协议本身,而是端口待遇不同:443 是互联网上被优化得最好的端口,CDN、运营商、防火墙都对它友好;853 相对冷门,路径上更容易被限速或排队。

那 DoT 是不是就没用了?不是,要看谁在用:

  • 浏览器、手机系统这类「问一次就走」的场景 —— 每次都是冷启动,DoH 更快,而且 443 端口在咖啡厅、酒店、公司网络里被放行概率远高于 853。选 DoH。
  • MosDNS、AdGuard Home、SmartDNS 这类常驻程序 —— 它们会保持长连接复用,DoT 握手那 30~50ms 只在启动时付一次,之后每条查询只有查询往返的开销,而且 DoT 没有 HTTP 层的额外开销。选 DoT,或者两者都配上做备份。
  • 要绕过网络对 853 的封锁 —— DoH 混在普通 HTTPS 流量里,特征更弱。选 DoH。

五、为什么国内网站不该用境外 DoH(实测证据)

这一节是「不要无脑用 1.1.1.1」的实证,不是猜测。同一时刻向各家查询同一组域名,返回的 A 记录如下:

查询域名 阿里 / DNSPod / 360 Cloudflare / AdGuard Google
www.taobao.com 183.36.18.63 / .64 155.102.176.107 / .108 163.181.60.253 / .254
www.qq.com 121.14.77.201 / .221 43.159.109.55 43.159.109.55
www.997wan.com 106.52.82.143 106.52.82.143 106.52.82.143

看 www.taobao.com 这一行:国内三家给的是 183.36.18.x(国内节点),境外三家给的是 155.102.176.x 和 163.181.60.x(海外节点)。这是因为境外递归 DNS 没有向权威服务器传递你的来源网段(ECS),权威服务器只能按「查询来自海外」来调度,于是把海外节点给了你。

结果是:你在国内,访问淘宝却被指向海外节点,慢是正常的,不通也不意外。www.qq.com 同理,境外拿到的是 43.159.109.55 这条海外地址。

一句话选型:主要上国内网站 → 用国内 DoH/DoT(阿里或 DNSPod);有境外访问需求 → 让代理软件在隧道内自己解析,或者用支持分流的自建方案,不要把全设备的 DNS 直接指向 1.1.1.1 或 8.8.8.8。

六、可直接复制的地址清单(已按实测标注)

下面只列实测可用或官方明确提供、且端口分工清楚的服务。「通」指本文两个网络中至少一个能连通。

国内

阿里 AliDNS(本文实测综合最优:53/443/853 全通,延迟最低)

  • IPv4:223.5.5.5 / 223.6.6.6
  • IPv6:2400:3200::1 / 2400:3200:baba::1
  • DoH:https://dns.alidns.com/dns-query
  • DoT:dns.alidns.com
  • HTTP/3 DoH:h3://dns.alidns.com/dns-query

腾讯 DNSPod(注意加密节点与明文节点是分开的)

  • 明文 DNS:119.29.29.29 / 182.254.116.116
  • 加密专用节点:1.12.12.12 / 120.53.53.53
  • DoH:https://doh.pub/dns-query
  • DoH(国密):https://sm2.doh.pub/dns-query
  • DoT:dot.pub

360 安全 DNS(实测可用,但延迟约为阿里的 2~3 倍)

  • DoH:https://doh.360.cn/dns-query
  • DoT:dot.360.cn

境外(国内直连基本不可用,仅在代理环境下有意义)

  • Cloudflare:DoH https://cloudflare-dns.com/dns-query;DoT one.one.one.one;IPv4 1.1.1.1 / 1.0.0.1
  • Google:DoH https://dns.google/dns-query;DoT dns.google;IPv4 8.8.8.8 / 8.8.4.4
  • Quad9:DoH https://dns.quad9.net/dns-query;DoT dns.quad9.net;IPv4 9.9.9.9
  • AdGuard DNS:DoH https://dns.adguard-dns.com/dns-query;DoT dns.adguard-dns.com;IPv4 94.140.14.14
  • DNS.SB:DoH https://doh.dns.sb/dns-query;DoT dot.sb;IPv4 185.222.222.222

注意 AdGuard 的加密域名是 dns.adguard-dns.com(带 -dns),不少教程写成 dns.adguard.com,那是错的。

七、配置片段

浏览器(最省事,只对本浏览器生效)

Chrome / Edge:设置 → 隐私和安全 → 安全 → 使用安全 DNS,选「自定义」填入 https://dns.alidns.com/dns-query。
Firefox:设置 → 网络设置 → 启用基于 HTTPS 的 DNS,填同一个地址。

Windows 11 / 10(系统级 DoH)

设置 → 网络和 Internet → 以太网/Wi-Fi → DNS 服务器分配 → 编辑
首选 DNS:223.5.5.5
DNS 加密:仅加密(DoH)

改完记得清缓存再验证:

ipconfig /flushdns

OpenWrt / iStoreOS

在 DHCP/DNS 或 MosDNS / SmartDNS 的上游里填:

# MosDNS 上游示例(forward 插件)
- addr: "https://dns.alidns.com/dns-query"
- addr: "tls://dns.alidns.com"
  enable_pipeline: true

SmartDNS

server-https https://dns.alidns.com/dns-query -no-check-certificate
server-tls dns.alidns.com

AdGuard Home

https://dns.alidns.com/dns-query
tls://dns.alidns.com

Android / iOS

Android 9+:设置 → 网络和互联网 → 私人 DNS,填 dns.alidns.com(这是 DoT,不是 DoH)。
iOS:系统设置里不能直接填,需要装描述文件或用支持 DoH 的 App。

八、怎么验证真的生效了

很多人配完以为生效了,其实流量还是走明文 53。三个自查办法:

  1. 看本地 53 端口有没有被接管。往一个不可能提供 DNS 的 IP 发查询,如果也收到应答,说明你的网络在劫持 53,你配的加密 DNS 可能被旁路了:
nslookup www.baidu.com 1.2.3.4

正常情况下这条命令应该超时;如果秒回,说明 53 端口被代答了。

  1. 测端口通不通。先确认你填的那台服务器的 443 或 853 真的活着:
curl -o /dev/null -s -w "%{http_code}" ^
  --resolve dns.alidns.com:443:223.5.5.5 ^
  -H "accept: application/dns-message" ^
  "https://dns.alidns.com/dns-query?dns=AAABAAABAAAAAAAAA3d3dwdleGFtcGxlA2NvbQAAAQAB"

返回 200 就是通的。

  1. 看解析出来的 IP 对不对。用第五节的方法对比:如果国内网站解析出了海外 IP,说明你的 DNS 出口在境外。

如果你在本机测出来境外 DoH 的延迟异常地低(比如 1.1.1.1 只要几毫秒),先怀疑本地代理:curl 默认会读系统代理环境变量。加上 --noproxy '*' 再测一次,差别通常会让你吃惊。

九、自建:想要完全可控就自己搭

公共 DNS 再怎么说,查询记录也在别人手里。想彻底可控,在自家内网或 VPS 上搭一台:

  • MosDNS:https://github.com/IrineSistiana/mosdns —— 规则分流能力最强,适合有国内外分流需求的场景。
  • EasyMosdns:https://github.com/pmkol/easymosdns —— 简化 MosDNS 部署的辅助脚本,几分钟能起一台支持 ECS 的服务器。
  • AdGuard Home:https://github.com/AdguardTeam/AdGuardHome —— 带 Web 界面和拦截规则,上手最快。

自建之后再统一把设备 DNS 指向它,比每台设备各配一个公共 DoH 要干净得多,也便于集中看日志。

十、结论:按你的情况直接选

你的情况 建议
只想防运营商劫持、主要上国内网站 阿里 DoH https://dns.alidns.com/dns-query,或 DNSPod https://doh.pub/dns-query
路由器 / 常驻程序做上游 阿里 DoT dns.alidns.com(长连接复用,握手只付一次)
要过滤广告和跟踪 AdGuard DNS,但注意它在国内延迟接近 900ms,只建议在代理环境或自建方案里用
有境外访问需求 让代理软件处理境外解析;全设备统一国内 DoH,不要直接指向 1.1.1.1 / 8.8.8.8
想完全可控、不留查询记录给别人 自建 MosDNS / AdGuard Home,上游再指向国内 DoT
只是想给浏览器单独换个 DNS Chrome / Edge 的「使用安全 DNS」,填阿里的 DoH 地址,30 秒搞定

本文的数据来自 2026-10-06 在腾讯云机房与家庭宽带两个网络的实测,方法已在第二节公开,你可以照着复现。服务商的端口和延迟会变,我会定期重测更新;如果你测出不一样的结果,欢迎在评论区把你的网络环境和数据一起贴出来。

相关阅读:如果你只是想快速抄地址,可以看整理好的清单版:国内外常用 DoH/DoT 服务汇总(含 IPv4/IPv6 与接入地址)。

上一篇 AeroCore Pro 首页幻灯片变形:object-fit:fill 的坑和一套 1640×700 Banner 标准
下一篇 WordPress 首页没有 H1 标记怎么修:AeroCore 主题实测修复全过程