DoH draft - DNS Queries over HTTPS
本文是 DNS Queries over HTTPS (DoH) 的 ietf 草案,希望实现的东西是整个 DNS 协议 overlay 在 HTTP 协议上,能扛 amplification 攻击了有木有(当然,除非世界上的 DNS 服务器都升级了)。它不仅仅把 HTPT 当作一个隧道,还想使用更多时髦的特性,例如 caching, redirection, proxying, authentication, and compression。具体草案如下:
- 通过 HTTP/2, HTTPS, URIs 请求,例如
GET https://example.org/dns-query?dns=<base64 encoded domain>
- 响应 Content-Type 必须是
application/dns-message
,响应 Body 也是 base64 编码的 DNS query 数据。 - Cache 设定:HTTP freshness lifetime
Cache-Control: max-age=30
,这个值不能超过 DNS TTL. 例如你不能设置 DNS TTL = 60, Cache-Control: max-age=600. - HTTP/2 是必须的,不支持 2 以下。
具体社区讨论可以见 The Benefits of HTTPS for DNS 一文。