DNS over HTTPS(DoH)与DNS over TLS(DoT)完全解析

从DNS查询这一步开始,就可以隐藏你正打算访问哪个网站。

为什么传统DNS查询可能会被看到

普通的DNS查询以未加密的明文形式(通常经UDP 53端口)传输,因此中间环节能够看到你在查询哪个网站的地址。访问网站时,浏览器首先会向DNS服务器发起查询,把域名转换成IP地址。传统DNS在传输这个查询和响应时不做任何加密,导致同一网络中的其他设备或ISP能够轻易窥探到你在查询哪些域名,严重时甚至理论上有可能被中间人篡改、伪造成指向另一个IP地址的响应。

什么是DoH(DNS over HTTPS)

DoH把DNS查询包裹在HTTPS中加密传输,使用的正是网页访问同样使用的443端口,因此表面上很难与普通HTTPS流量区分开。Chrome、Firefox、Edge等主流浏览器都在自身设置中支持DoH,Cloudflare(1.1.1.1)、Google(8.8.8.8)等公共DNS服务商也都提供DoH端点。

什么是DoT(DNS over TLS)

DoT同样使用TLS加密DNS查询,但不与普通HTTPS共用443端口,而是使用专门指定的853端口。这使得网络管理员相对更容易单独识别DoT流量并对其应用策略。安卓系统的"专用DNS"设置就是典型的DoT支持案例。

DoH和DoT的关键区别

两者都对DNS查询内容进行加密,目的同样是防止被窃听和篡改。区别在于传输方式:DoH混杂在普通网页流量中,网络管理员很难单独过滤或屏蔽DNS流量;而DoT使用独立端口,更便于企业或学校网络按策略允许或屏蔽。因此企业IT部门往往更倾向于DoT,而重视个人隐私的用户则更偏好DoH。

加密DNS的优点与局限

DoH、DoT能有效阻止第三方(比如ISP或公共Wi-Fi管理者)看到"你查询了哪个域名",但并不能完全隐藏之后实际连接该服务器时交换的IP地址或SNI(服务器名称指示)信息。此外,如果学校、公司或路由器本身设有屏蔽特定网站的策略,使用DoH的设备有可能绕过这种屏蔽,这对网络管理员来说反而可能成为一个麻烦。

如何设置

Chrome可以在"设置>隐私设置和安全性>安全"菜单中打开"使用安全DNS",并选择Cloudflare、Google等提供商。Firefox可以在网络设置中启用"DNS over HTTPS"。安卓系统则可以在"设置>网络>专用DNS"菜单中输入支持DoT的服务器主机名(例如dns.google),为整台设备的DNS查询启用加密。

标准化的过程

DoT于2016年以RFC 7858标准化,DoH于2018年以RFC 8484标准化。两者的目的相同,都是通过加密查询防止窃听和篡改。DoH作为后来者,借助现有的HTTPS机制,浏览器等应用不需要依赖设备本身的设置就可以独立启用。

选择解析服务与隐私

即使DNS查询已加密,接收查询的服务商仍然知道你查询了哪些域名。也就是说,窃听的第三方减少了,但信任的对象从运营商转到了公共DNS服务商等。建议查看各服务商的隐私政策,了解日志保存多久、用于什么目的,再选择自己放心的对象。

安卓"专用DNS"的工作方式

安卓9及以上系统提供的专用DNS是以DoT方式实现的。自动模式下,如果网络自带的DNS支持加密就会使用加密,不支持则回退到普通DNS。手动指定主机名的模式则更严格,如果无法连接到支持的服务器,域名解析会直接失败。

不能正常工作时的检查要点

公司或学校网络有时会阻断853端口或某些DoH服务器,导致无法连接。仅在内部使用的域名也可能因此无法解析,这时需要关闭DoH,回到单位的DNS。另外,更改设置后可能需要重启浏览器或清除缓存才能生效。

如何确认加密DNS已经生效

部分公共DNS服务商提供检测页面,可以显示你当前的DNS查询是否通过DoH或DoT完成。浏览器里启用安全DNS后,也可以在设置页面确认状态是否显示为已启用。如果检测结果与预期不符,常见原因有:设备上的其他软件(如VPN或安全软件)接管了DNS、网络强制使用自己的DNS,或者设置只对其中一个应用生效。

企业和学校网络的管理角度

对网络管理员来说,明文DNS便于做内容过滤、安全监控和排查故障。DoH让这些设备更难看到查询内容,因此一些单位会通过策略统一配置浏览器的DoH设置,或指定使用单位自己的DoH服务器,以便兼顾加密与管理。个人用户在工作设备上不要擅自更改,以免违反使用规定。

与带过滤功能的DNS搭配

部分公共DNS会拦截传播恶意软件或有害网站的域名解析。把加密与过滤结合使用,可以同时提高传输安全和对恶意网站的防护。但不同服务商的拦截标准不同,偶尔也会出现误拦截。

想直接更换DNS服务器

如果只是想在不加密的情况下更换公共DNS服务器,这是一个更简单的独立设置,值得单独了解。

想了解DNS记录类型

如果对A、CNAME、MX这些DNS记录类型本身感兴趣,也可以一并了解一下。

加密DNS能保护什么、不能保护什么

加密DNS保护的是DNS查询与响应的内容。但连接目标的IP地址在通信过程中仍然可见;如果连接时服务器名称以明文发送,也会成为线索。因此DoH和DoT并不是匿名化手段,只是防止DNS被窃听和篡改的措施之一。如果需要更强的匿名性,就要考虑VPN等其他手段,而它们同样存在信任问题。另外,在某些网络环境中,运营商或单位出于管理或合规的目的限制第三方DNS,使用前最好了解相关规定。

常见问题

开启DoH会拖慢网速吗?

虽然会增加加解密的过程,但以现代设备的处理速度,几乎感觉不到明显延迟。不过如果所用的DoH服务器物理距离较远,首次连接时可能会出现一点延迟。

在公司或学校网络里使用DoH会有问题吗?

如果公司或学校通过DNS屏蔽的方式限制访问某些网站,使用DoH的设备有可能绕过这种限制。因此一些机构会在自己的网络中专门制定策略来屏蔽或限制DoH流量。

用了DoH就不需要VPN了吗?

不是。DoH只加密域名解析的内容,之后通信目标的IP地址等仍可能被看到。如果要加密全部通信就需要VPN等手段,两者的作用不同。

手机和电脑都要分别设置吗?

是的。DNS设置通常是按设备甚至按应用分别配置的:浏览器里的安全DNS只影响该浏览器,安卓的专用DNS影响整台手机。要覆盖所有设备,可以在支持的路由器上统一设置,不过各设备的优先级和冲突需要自己确认。

DoH服务器应该怎么选?

可以比较响应速度、运营者的隐私政策、日志保存方式以及是否带有过滤功能。不确定时,可以在几家服务商之间试用一段时间,再选择速度稳定、政策透明的。

家里的路由器也能使用加密DNS吗?

部分型号的路由器和固件提供DoT或DoH的设置项。在路由器上设置后,家中所有设备都能受益,但并非所有型号都支持,请查看说明书或管理界面。