DNS over HTTPS (DoH) 与 DNS over TLS (DoT) 原理与区别详解
字数 2059 2025-11-20 06:11:26
DNS over HTTPS (DoH) 与 DNS over TLS (DoT) 原理与区别详解
DNS over HTTPS (DoH) 和 DNS over TLS (DoT) 是两种旨在提高域名系统查询隐私和安全性(防止中间人攻击、DNS劫持)的协议。它们通过加密 DNS 查询和响应来实现这一目标。
第一步:理解传统 DNS 查询的安全风险
- 工作原理:传统 DNS 查询使用 UDP 或 TCP 协议,以明文形式在客户端(如您的浏览器)和 DNS 服务器之间传输数据。
- 安全风险:
- 窃听:网络上的任何中间节点(如您的 ISP、公共 Wi-Fi 提供商)都可以查看您正在访问的网站域名。
- 篡改:攻击者可以拦截并修改 DNS 响应,将您引导至恶意网站(DNS 劫持)。
- 审查:组织或政府可以监控并阻止对特定域名的访问。
第二步:核心目标——加密 DNS 流量
DoH 和 DoT 的共同目标是解决上述安全问题。它们不再使用明文,而是为 DNS 查询和响应建立一个加密的通信通道。
- 保密性:防止第三方窥探查询内容。
- 完整性:防止数据在传输中被篡改。
- 认证性:确保您正在与可信任的 DNS 服务器通信。
第三步:DNS over TLS (DoT) 详解
- 技术原理:
- DoT 在 TCP 协议的基础上,增加了一个 TLS 加密层。这与你访问 HTTPS 网站时使用的加密技术相同。
- 它使用一个独立的、专用的端口号 853。
- 工作流程:
- 客户端向 DNS 服务器的 853 端口发起 TCP 连接。
- 双方进行 TLS 握手,建立一个安全的加密通道。
- 所有的 DNS 查询和响应都在这个 TLS 通道内进行传输。
- 特点:
- 优点:由于使用独立端口,网络管理员可以很容易地识别、允许或阻止 DoT 流量,便于企业网络管理。
- 潜在缺点:同样因为使用独立端口,审查者也可以轻松地通过封锁 853 端口来禁用 DoT。
第四步:DNS over HTTPS (DoH) 详解
- 技术原理:
- DoH 将 DNS 查询封装在 HTTP/2 协议中,然后通过标准的 HTTPS 端口 443 进行传输。
- 本质上,DNS 查询变成了一个特殊的 HTTP 请求。
- 工作流程:
- 客户端向支持 DoH 的服务器(如
https://cloudflare-dns.com/dns-query)发起一个 HTTP POST 或 GET 请求。 - 这个 HTTP 请求的正文或参数中包含了加密的 DNS 查询信息。
- 服务器返回一个 HTTP 响应,其正文中包含加密的 DNS 查询结果。
- 所有这些通信都受到标准的 HTTPS(TLS)保护。
- 客户端向支持 DoH 的服务器(如
- 特点:
- 优点:由于流量与普通的 HTTPS 网页流量混合在一起(都走 443 端口),很难被网络设备区分和阻断,隐蔽性更强,抗审查能力更好。
- 潜在缺点:这同样使得网络管理员难以监控和管理网络中的 DNS 流量,可能绕过企业或组织的安全策略。
第五步:DoH 与 DoT 的核心区别对比
| 特性 | DNS over TLS (DoT) | DNS over HTTPS (DoH) |
|---|---|---|
| 传输层协议 | 基于 TCP | 基于 HTTP/2 |
| 加密方式 | TLS | HTTPS (HTTP over TLS) |
| 端口号 | 853 (专用) | 443 (与普通网页共享) |
| 流量特征 | 独立的 DNS 加密流量,易于识别 | 混合在普通网页流量中,难以区分 |
| 部署与管控 | 易于网络防火墙识别和管控 | 难以被单独阻断,但可能绕过现有安全策略 |
| 应用层集成 | 通常由操作系统或网络栈处理 | 通常由浏览器等应用程序直接处理 |
第六步:应用场景与现状
- DoT:更受网络运营商和系统管理员的青睐,因为它允许清晰的流量管理和策略执行。例如,可以在路由器或网络网关层面统一配置。
- DoH:更受浏览器厂商(如 Mozilla Firefox, Google Chrome)和隐私保护倡导者的欢迎,因为它能更好地保护终端用户免受本地网络监控和干扰。
- 现状:目前,主流浏览器普遍支持 DoH,并允许用户配置或自动启用。而 DoT 更多在操作系统层面(如 Android 9+)或路由器层面进行配置。两者都在逐步普及,共同推动着 DNS 查询走向全面加密。
总结:DoH 和 DoT 是解决同一问题(DNS 隐私安全)的两种不同技术路径。DoT 像是为 DNS 流量专门修建了一条加密高速公路,路标清晰;而 DoH 则是将 DNS 流量伪装成普通快递车,混在庞大的普通货车(HTTPS 流量)队伍里运输,更不易被察觉。选择哪种方案,往往取决于你是更看重管理的便利性还是极致的隐私保护。