公众号旧文
什么是 DNS over HTTPS?如何开启 DoH?
当我们用浏览器访问网站时,会有一个必不可少的步骤:DNS 解析。
在地址栏输入一个网址,例如:www.google.com
电脑并不能直接理解访问目标是谁,于是需要先去询问 DNS 服务器:
www.google.com 对应的 IP 地址是多少?
这个过程就叫 DNS 查询。
但传统 DNS 存在一个问题:查询过程是明文的。
也就是说,在网络中间的设备(例如运营商)是可以看到 DNS 查询内容的,例如:
www.google.com
www.youtube.com
www.example.com
如果网络设备不仅能看到 DNS 查询,还能修改返回结果,就可能发生 DNS 劫持。为了解决这个问题,就出现了一种新的技术:DoH。
一、什么是 DoH
DoH 是 DNS over HTTPS 的缩写,意思是通过 HTTPS 进行 DNS 查询。
传统 DNS 的查询方式是:
DNS → UDP 53 端口 → 明文传输
而 DoH 则把 DNS 请求封装在 HTTPS 里面:
DNS → HTTPS 443 端口 → TLS 加密
也就是说,DNS 查询不再是明文,而是通过 HTTPS 加密传输。
这样一来,网络中的其他设备只能看到一段 HTTPS 流量,而无法知道具体查询了哪个域名。
二、DoH 的优点
使用 DoH 主要有几个好处:
1.提高隐私性
DNS 查询内容被加密,网络中的其他设备无法看到查询的域名。
2.防止 DNS 劫持
有些网络会修改 DNS 返回结果,例如把某些网站解析到错误的地址。
使用 DoH 后,中间设备无法篡改 DNS 查询结果。
3.更安全
DoH 使用 HTTPS 传输,具有 TLS 加密保护。
三、支持 DoH 的 DNS 服务
目前很多公共 DNS 都支持 DoH,例如:
- Cloudflare DNS
- Google DNS
- Quad9 DNS
这些服务都提供专门的 DoH 接口,例如:
Cloudflare:
https://cloudflare-dns.com/dns-query
Google:
https://dns.google/dns-query
四、只修改 DNS IP 不等于开启 DoH
很多人以为,只要把 DNS 改成:
8.8.8.8
1.1.1.1
就等于使用了 DoH。
这是一个误解。
如果只是修改 DNS IP,系统仍然会使用传统 DNS:
电脑 → 8.8.8.8:53 → 明文 DNS
只有当 DNS 查询通过 HTTPS 发送 时,才算是 DoH。
五、如何开启 DoH
目前开启 DoH 主要有两种常见方式。
1.浏览器开启 DoH
很多浏览器已经内置 DoH 功能,例如:
- Mozilla Firefox
- Google Chrome
以 Firefox 为例:
打开设置:
设置
→ 网络设置
→ DNS over HTTPS
然后选择:
Cloudflare
NextDNS
自定义
如果选择自定义,可以填写:
https://dns.google/dns-query
开启后,浏览器的 DNS 查询就会通过 HTTPS 发送。
2.操作系统开启 DoH(Windows)
在较新的 Windows 系统中,也可以直接开启 DoH。
步骤:
设置
→ 网络和 Internet
→ DNS 设置
→ 加密 DNS
然后选择支持 DoH 的 DNS 服务器,例如:
1.1.1.1
系统就会自动使用对应的 DoH 接口。
简单来说:
| 类型 | DNS 查询方式 |
|---|---|
| 传统 DNS | UDP 53,明文 |
| DoH | HTTPS 443,加密 |
DoH 的核心思想就是:把 DNS 查询放进 HTTPS 里面传输。
这样既可以保护隐私,也可以避免 DNS 被篡改。
你可能感兴趣的其他文章: