谷歌已经宣布计划从v78开始在谷歌Chrome中正式测试新的DNS-over-HTTPS (DoH)协议,计划在今年10月底发布。
https协议的工作原理是将DNS请求发送到特殊的、与dojo兼容的DNS解析器。这样做的好处在于,DNS请求是通过端口443作为加密的HTTPS流量发送的,而不是通过端口53作为明文发送的。
这将DoH请求隐藏在无止境的HTTPS流量流中,这些流量每时每刻都在web上移动,并防止第三方观察员通过记录和查看用户未加密的DNS数据来跟踪用户的浏览历史。
谷歌打算在Chrome中测试DoH的消息传出之际,Mozilla刚刚在周末宣布,计划在本月晚些时候逐步为一小部分用户默认启用DoH。如果Mozilla的计划如预期的那样,这家浏览器制造商希望到明年所有用户都能默认启用该功能。
谷歌的DoH计划有所不同,因为浏览器制造商在支持这个新协议方面落后了。Firefox从去年开始就支持DoH,而Chrome开发者直到今年5月才添加DoH。
虽然Firefox已经运行了无数的DoH测试,但谷歌现在才刚刚开始测试这个已有两年历史的协议。谷歌的首次公开测试定于10月22日,届时谷歌将发布Chrome 78。
在昨天发布的一份支持文件中,谷歌表示,当满足某些条件时,Chrome 78将自动切换到使用DoH而不是DNS。
如果Chrome用户使用的是来自某些公司的普通DNS服务器,这些公司也运行其他兼容的DNS解析器,那么Chrome将把DNS请求发送到兼容的DNS解析器,而不是普通的DNS服务器。
对于这个初始测试,谷歌表示,它将只针对少数DNS提供商(而不是全部)切换到DoH,而不是常规的DNS。支持的DNS提供商列表包括cleanbrowse、Cloudflare和DNS。SB,谷歌,OpenDNS和Quad9。
例如,如果用户使用Cloudflare的DNS服务器来处理正常的DNS请求,Chrome会自动将DNS请求发送到Cloudflare的备选doh兼容DNS解析器。
Chrome产品经理Kenji Baheux说:“入选名单的供应商在隐私和安全方面的立场非常坚定,他们的DoH服务也准备就绪,他们也同意参与实验。”
使用不包括在此列表中的DNS提供商的用户将不包括在谷歌的DoH实验中。
如果切换失败或DoH解析器没有及时响应,Chrome将自动切换回使用经典DNS解析器服务。
“这个实验的目的是验证我们的实现并评估性能影响,”Baheux说。
“我们的实验将在所有支持的平台上运行(除了Linux和iOS),只有一小部分Chrome用户可以使用。在Android 9及以上版本中,如果用户在专用DNS设置中指定了dn -over- tls提供商,Chrome可能会使用相关的DoH提供商,并在出错时退回到系统专用DNS。”
Baheux提到的dn -over- tls协议的工作原理是对在端口53上发送的实际DNS流量进行加密,而不是将其重定向到端口443。这是一种被认为优于DoH的治疗方案;然而,目前支持它是一个相当复杂的问题。
谷歌支持DoH的计划与Mozilla的实现完全相反。目前,Mozilla默认情况下通过Cloudflare服务器传输所有Firefox流量,从而转变了对DoH的支持。Firefox用户可以更改此设置以使用自定义DoH DNS解析器,但该浏览器制造商因使用Cloudflare作为默认设置而受到批评。
谷歌决定只为同一DNS提供商提供的DoH服务切换DNS服务器,这应该会打消谷歌将大量互联网DNS流量只提供给一个提供商的讨论。
此外,还有另一个好处。谷歌表示,通过用来自相同提供商的DoH替代DNS解析器,在DNS提供商级别设置的任何基于dna的过滤器和家长控制都将保持不变。度支持将扩大后的还包括DNS服务器所提供的互联网服务提供商(ISP),这种“相同供应商切换”机制将防止DoH绕过以域名系统过滤器设置在ISP层面,有时提出防止虐待儿童访问内容或法律规定层面的伺服。
如果用户不希望包含在Chrome DoH实验中,他们可以使用不在谷歌列表中的DNS提供商(大多数Chrome用户已经这样做了),或者他们可以通过修改Chrome://flags/# DNS -over-https标志来禁用DoH支持。
如果他们想要参与Chrome DoH的实验,他们应该配置他们的操作系统来使用上面列出的DNS提供商的DNS服务器。
如果用户想马上启用DoH,不想等到10月份,那么在Chrome中使用DoH的唯一方法就是手动启用它,这是一个复杂的过程,包括向Chrome可执行快捷方式添加命令行参数,详情如下。