DNS over HTTPS (DoH) 是一种协议,它通过使用 HTTPS(安全超文本传输协议)加密 DNS(域名系统)请求,从而增强 DNS 请求的安全性和隐私性。此协议允许客户端安全地将域名解析为 IP 地址,从而确保第三方无法轻易拦截或篡改 DNS 查询和响应。DNS over HTTPS 是互联网安全领域的一项重要进步,它因能够保护用户免受各种威胁(例如 DNS 劫持和窃听)而广受欢迎。
DNS over HTTPS(DoH)的起源历史以及对它的首次提及
加密 DNS 流量的概念已经存在了一段时间,但当 Mozilla 的 Patrick McManus 于 2017 年 10 月首次提出 DNS over HTTPS 时,它引起了广泛关注。DoH 协议的初稿由 Patrick McManus 和其他贡献者在互联网工程任务组 (IETF) 上发布。从那时起,该协议经历了多次迭代和改进,从而得到了广泛的接受和采用。
有关 DNS over HTTPS (DoH) 的详细信息
DNS over HTTPS 利用 HTTPS 的加密功能,提供了一种安全且私密的域名解析方式。传统的 DNS 查询通常以纯文本形式发送,因此容易受到拦截和操纵。借助 DoH,DNS 查询将被加密并通过安全通道传输,从而具有以下几个优点:
-
隐私: DNS over HTTPS 隐藏了 DNS 请求的内容,阻止 ISP、网络管理员或恶意行为者根据用户的 DNS 流量监视用户的互联网活动。
-
安全: 加密 DNS 流量可保护用户免受基于 DNS 的攻击,例如 DNS 欺骗和中间人攻击,确保用户从权威 DNS 服务器收到合法响应。
-
规避审查: DNS over HTTPS 可以帮助绕过某些政府或 ISP 施加的 DNS 过滤和审查,允许用户访问被阻止的网站和服务。
-
改进的性能: 通过使用 HTTPS,DNS over HTTPS 可以利用现有的基础设施并受益于针对安全 Web 通信所做的优化,从而有可能缩短 DNS 解析时间。
DNS over HTTPS(DoH)的内部结构 - 工作原理
DNS over HTTPS 的工作原理是将 DNS 查询和响应包装在 HTTPS 数据包中,然后将其发送到专用的 DoH 服务器并从专用的 DoH 服务器接收。以下是 DNS over HTTPS 工作原理的分步说明:
-
客户要求: 当用户的设备发起 DNS 解析请求时,设备上的 DNS 客户端会将查询发送到与 DoH 兼容的 DNS 解析器,该解析器通常由 DoH 服务提供商运营。
-
DNS 查询加密: DNS 客户端使用 HTTPS 加密 DNS 查询,有效地将其转换为 HTTPS GET 或 POST 请求。
-
HTTP(S)传输: 然后,加密的 DNS 查询通过标准 HTTPS 端口 (443) 发送到 DoH 服务器。
-
DoH 服务器处理: DoH 服务器接收加密的 DNS 查询,对其进行解密,然后将 DNS 查询转发到适当的 DNS 解析器以获取与请求的域名相关联的 IP 地址。
-
DNS 解析: DNS 解析器处理查询,检索 IP 地址,并将响应发送回 DoH 服务器。
-
DNS 响应加密: DoH 服务器使用 HTTPS 加密 DNS 响应。
-
回复客户: 加密的 DNS 响应通过 HTTPS 连接发送回客户端。
-
客户端解密: 客户端解密 DNS 响应,获取 IP 地址,并使用它来连接到所需的 Web 服务器。
此过程可确保客户端和 DoH 服务器之间的所有 DNS 通信保持加密和安全,从而保护用户的隐私和数据完整性。
DNS over HTTPS(DoH)关键特性分析
DNS over HTTPS 提供了几个关键功能,使其有别于传统 DNS 和其他 DNS 加密方法:
-
端到端加密: DNS over HTTPS 会加密从客户端到 DoH 服务器的 DNS 查询,并且也会加密从 DoH 服务器到客户端的响应。这种端到端加密可确保只有客户端和 DoH 服务器才能理解 DNS 查询和响应。
-
可移植性: 任何支持 HTTPS 的设备都可以使用 DNS over HTTPS,从而与各种平台和操作系统兼容。
-
防拦截安全性: 通过利用 HTTPS,DoH 可以防止窃听和篡改 DNS 请求,保护用户免受各种基于 DNS 的攻击。
-
隐私增强: DNS over HTTPS 隐藏了用户的 DNS 查询,阻止 ISP 和其他实体监控和收集有关其互联网活动的数据。
-
实施难度: 由于 DoH 利用现有的 HTTPS 基础设施,因此对于已经支持 HTTPS 的 Web 浏览器和应用程序来说,通过 HTTPS 实现 DNS 相对简单。
HTTPS 上的 DNS (DoH) 类型
DNS over HTTPS 部署主要有两种类型:
-
公共 DoH 解析器: 这些是由各种组织和服务提供商运营的 DoH 服务器,它们向公众提供 DoH 解析。用户可以配置他们的设备或应用程序以直接使用这些公共 DoH 解析器。
-
私有 DoH 解析器: 在这种情况下,私有 DoH 解析器设置在特定组织的网络基础设施内,为其用户提供安全的 DNS 解析,而无需依赖公共 DoH 解析器。私有 DoH 解析器可以增强组织内部 DNS 解析的安全性和隐私性。
使用 DNS over HTTPS(DoH)
用户可以通过多种方式通过 HTTPS 使用 DNS:
-
Web 浏览器: 许多现代网络浏览器(例如 Mozilla Firefox 和 Google Chrome)都内置了对 DNS over HTTPS 的支持。用户可以在浏览器设置中启用此功能,以享受增强的安全性和隐私性。
-
操作系统配置: 一些操作系统允许用户在系统范围内启用 DNS over HTTPS,确保来自各种应用程序的所有 DNS 查询都经过加密。
-
第三方应用程序: 用户还可以使用第三方 DNS over HTTPS 客户端或应用程序,这些客户端或应用程序可独立于操作系统或 Web 浏览器通过 HTTPS 提供 DNS 解析。
问题与解决方案
虽然 DNS over HTTPS 具有许多优点,但其部署也面临着一些挑战:
-
不兼容: 并非所有 DNS 解析器或 DNS 服务器都支持 DoH,这会导致潜在的不兼容问题。不过,DoH 的广泛采用正在鼓励 DNS 解析器运营商增加对此协议的支持。
-
安全问题: 虽然 DNS over HTTPS 解决了许多安全问题,但如果实施不当,可能会带来新的风险。用户必须信任他们正在使用的 DoH 解析器,因为它将成为 DNS 查询的新中介。聘用信誉良好且值得信赖的 DoH 服务提供商对于降低潜在风险至关重要。
-
DNS 过滤和家长控制: DNS over HTTPS 可以绕过 DNS 过滤和家长控制机制,可能会引发对内容控制和访问不适当或有害网站的担忧。
-
本地网络管理: 对于依赖 DNS 管理本地网络的网络管理员来说,HTTPS 上的 DNS 可能会带来挑战。大规模实施 DoH 需要仔细规划并考虑本地网络管理要求。
为了应对这些挑战,组织和个人应该仔细评估他们的 DNS over HTTPS 部署,选择可靠的 DoH 服务提供商,并实施适当的安全措施。
主要特点及与同类术语的其他比较
以下是 DNS over HTTPS (DoH) 与类似 DNS 安全机制的比较:
机制 | 特征 | 与 DoH 的比较 |
---|---|---|
基于 TLS 的 DNS (DoT) | 使用 TLS(传输层安全性)加密 DNS 流量 | DoT 和 DoH 都为 DNS 流量提供加密,但 DoH 使用 HTTPS,它利用现有的 Web 基础设施并且可能得到更广泛的支持。 |
DNS加密 | 使用加密协议保护 DNS 查询 | DNSCrypt 是另一种 DNS 加密方法,但 DoH 由于使用 HTTPS 而变得更受欢迎,这使得它与已经支持 HTTPS 的 Web 浏览器和系统兼容。 |
VPN(虚拟专用网络) | 通过安全的专用网络路由所有互联网流量 | 虽然 VPN 可以增强整体在线安全性,但它们并非专门为保护 DNS 请求而设计。DoH 为 DNS 解析提供集中加密,而无需通过单独的网络路由所有流量。 |
DNSSEC(DNS 安全扩展) | 为 DNS 数据添加数字签名 | DNSSEC 主要侧重于确保 DNS 数据的真实性和完整性,但不加密 DNS 查询。DNSSEC 和 DoH 可以相互补充,提供全面的 DNS 安全方法。 |
DNS over HTTPS 很可能在保护 DNS 通信和保护互联网用户隐私方面继续取得重大进步。随着其采用率不断增长,我们可以期待以下与 DNS over HTTPS 相关的发展和技术:
-
增加支持: 预计会有更多 DNS 解析器和 DNS 服务器增加对 DoH 的支持,使其成为安全 DNS 解析的标准功能。
-
加密的 SNI(服务器名称指示): 加密 SNI 是一种补充技术,可隐藏用户尝试访问的网站的主机名。它可以与 DoH 一起使用以进一步增强隐私。
-
物联网设备中的 HTTPS 上的 DNS: 随着物联网 (IoT) 的不断扩展,在 IoT 设备中实施基于 HTTPS 的 DNS 可以提高安全性并防止利用 DNS 漏洞的潜在攻击。
-
标准化和监管: 随着 DoH 的普及,可能会引入围绕其实施的标准化工作和法规,以确保一致且安全的使用。
如何使用代理服务器或将其与 DNS over HTTPS (DoH) 关联
代理服务器可以通过以下方式在增强 DNS over HTTPS 部署方面发挥关键作用:
-
缓存和加速: 代理服务器可以缓存通过 DoH 获得的 DNS 响应。此缓存可以加快后续 DNS 解析速度,从而减少整体延迟并改善用户体验。
-
负载均衡: 代理服务器可以在多个 DoH 服务器之间分发 DNS over HTTPS 查询,确保高效利用并平衡 DoH 基础设施上的负载。
-
过滤和记录: 可以配置代理服务器来过滤特定的 DNS 请求或记录 DNS 流量,为管理员提供有关网络内 DNS 使用情况的宝贵见解。
-
隐私和匿名: 通过在客户端和 DoH 解析器之间使用代理服务器,用户可以向 DoH 解析器隐藏自己的真实 IP 地址,从而进一步增强隐私和匿名性。
-
地理位置和内容访问: 代理服务器还可以通过位于不同地区的服务器路由 DNS over HTTPS 请求,为用户提供对受地理限制的内容的访问。
将代理服务器合并到 DNS over HTTPS 设置中可以优化性能、提高安全性并提供额外的控制和自定义选项。
相关链接
有关 DNS over HTTPS(DoH)的更多信息,可以参考以下资源:
- 互联网工程任务组 (IETF) 有关 HTTPS 上的 DNS 的草案: https://datatracker.ietf.org/doc/draft-ietf-doh-dns-over-https/
- Mozilla 开发者网络 (MDN) – DNS over HTTPS (DoH) 简介: https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview_of_DNS_over_HTTPS
- Google 开发者 – DNS over HTTPS (DoH) 说明: https://developers.google.com/speed/public-dns/docs/doh
总之,DNS over HTTPS (DoH) 是保护 DNS 通信和保护互联网用户隐私的一项重要进步。通过使用 HTTPS 加密 DNS 查询,DoH 可确保用户的 DNS 请求保持机密并免受各种威胁。随着 DoH 不断发展并获得广泛支持,它有可能成为未来互联网安全的标准功能。将代理服务器与 DNS over HTTPS 结合起来可以进一步优化性能,并为组织和个人用户提供对 DNS 解析的增强控制。