现在,DNS-over-QUIC 是正式标准版
我们非常高兴地宣布,DNS-over-QUIC 是一个非常有前途的协议,且现在已经成为一个拟议标准。我们认为 DNS-over-QUIC 比其他协议(DNS-over-HTTPS、DNS-over-TLS)更好用,并且具有完全取代旧的未加密的 DNS 的潜力。我们先不着急吧。我们一步一步看。
DNS-over-QUIC 的改善历史
DNS-over-QUIC (缩写是 DoQ)是传输 DNS 查询的比较新协议。直到2022年5月,它才成为一个标准。作为比较,DNS-over-TLS 在 2016 年被标准化,DNScrypt 则在 2011 年被标准化。
大约一年半以前,AdGuard DNS 成为首个支持 DNS-over-QUIC 新协议的公共 DNS 解析器。当时,DoQ 的标准依然处于了草案阶段。本协议还是属于试验阶段,无法普遍使用。
在 5 月中旬,事情终于迎来了转机。DNS-over-QUIC 作为 RFC(征求意见稿,一种描述适用于互联网的在线协议、方法、程序或研究的文件)发表,被分配到编号 9250。从那时起就不得不被当作一种拟议的标准。这个 RFC 在成为互联网标准之前还有很长的路要走,但现在已经发现 DNS-over-QUIC 足够稳定,并得到了足够的社区审查,可以在世界各地实施。
但是,先让我们说一下现在 DNS-over-QUIC 是什么?为什么比其他协议好多了。
为什么 DNS-over-QUIC 值得使用?
我们曾发布过一篇关于 DNS-over QUIC 的详细文章。如果有用户渴望深入了解所有的细节,可以先阅读那篇文章。简而言之,DNS-over-QUIC 是一种 DNS 协议,它使用 QUIC 传输层协议来传输 DNS 请求。
TCP 数据包传送流程
QUIC 数据包传送的流程
与 TCP 相比 QUIC 是更快、更可靠的,并且它提供更多加密选项。而且,DNS-over-QUIC 从其所有优点中获益。
简而言之,以下是 DNS-over-QUIC 的主要优势:
- 加密 DNS 流量。没有他人能够查看用户访问的网站。
- QUIC 设计解决队头阻塞的问题。 本协议在丢包率高的网络中运行效果会更好。
- QUIC 支持所谓“连接迁移”。当用户出门时,手机将从 Wi-Fi 连接到移动网络。QUIC 连接与其他不一样,不会断线。不好的是,本功能还没有应用,但我们希望情况尽快改变。
- QUIC允许用户更快建立网络连接。与"连接迁移"一样,它在移动时特别有用。通过实施 DNS-over-QUIC,建立连接的速度是 DNS-over-TLS 的两倍。
与草案相比,标准有什么变化?
DNS-over-QUIC 现在不仅可以用于递归 DNS 服务器(如 AdGuard DNS),还可以用于权威性服务器。从长远来看,这将使得不仅可以加密从客户端(您的电脑或手机)到递归服务器的流量,而且可以加密所有的 DNS 流量。也就是说,与 DNS-over-HTTPS 不同,DoQ 是一个更全面的协议,可以完全覆盖以前使用未加密协议的情况。
AdGuard DNS-over-QUIC 有什么变化?
很多 AdGuard 软件都支持 DoQ,但是我们想要给用户指出一些重点:
- 现在,AdGuard DNS 全面支持标准版。不过,我们还继续支持"草案"版。
- AdGuard Home 已经也应用了新标准版。
- 我们的全部应用程序也要支持标准版本。“实验性"的标记将最终被删除。在未来的版本中,我们计划将 DoQ 作为默认协议(代替现在的 DNS-over-HTTPS 默认协议)。
我们几乎所有与 DoQ 相关的发展都是公开的。我们维护它们并定期更新。下面是其中的一些。
-
dnslookup 是指处理 DNS 请求的基本工具。它支持所有现代通信协议,包括 DoH、DoT、DNSCrypt, 以及 DoQ。
-
当用户使用 AdGuard Home 时,您可以设置自己的 DoQ 服务器。如您使用 AdGuard Home 作为公共服务器,您可以设置加密。
-
dnsproxy 是支持 DoH、DoT、DoQ 和 DNSCrypt 的 DNS 代理服务器。
-
DnsLibs 是我们在 AdGuard 软件使用的 C++库。使用它以将 DoQ 纳入自己的应用程序里。
我们还期望在不久的将来公开新的 AdGuard DNS 代码。
我们对作为标准版的 DNS-over-QUIC 的实施所带来的新机遇感到非常激动:更快的连接速度、更好的加密性、更低的丢包率、"连接迁移"等好用的改进。我们非常期待利用所有这些优势!同时,您可以阅读如何在 AdGuard for iOS 和 AdGuard for Android 中设置 DoQ,或配置一个使用 QUIC 协议的公共 AdGuard DNS 服务器(您可以在我们的地址部分找到它)。或者创建您的私人 AdGuard DNS 服务器,选择您想要的任何协议,并自行控制您的所有 DNS 请求!