2.3.4 使用 HTTPDNS 解决“中间商”问题
“域名解析器”是 DNS 查询的第一站,充当客户端与“域名服务器”之间的中介,帮助我们解析“整棵 DNS 树”。
但作为一个“中间商”,“域名解析器”很容易出现域名劫持、解析时间过长、解析调度不精准等问题。这些问题的根源在于,域名解析经过了多个中间环节,导致服务质量不可控。为了解决上述问题,一种新型的 DNS 解析模式 —— HTTPDNS 应运而生。
HTTPDNS 的工作原理如图 2-7 所示。客户端内部集成 HTTPDNS 模块,绕过操作系统默认的域名解析服务(图中的 LocalDNS,通常基于 UDP 协议),改为通过 HTTPS 协议向更可靠的“软件定义的解析服务”(图中的 6.6.6.6)发起请求。
图 2-7 HTTPDNS 模式下 DNS 解析原理
HTTPDNS 好处是避免了“中间商赚差价”。软件定义的解析服务直接从权威域名服务器同步解析记录,逻辑更加可控,同时能够准确识别客户端的地区和运营商,从而提供更精准的解析结果。
通过使用 HTTPDNS,并结合客户端解析缓存、热点域名预解析等优化手段,可以显著改善传统域名解析所带来的各种问题。根据笔者的实践经验,采用 HTTPDNS 后,HTTP 服务的初次请求延迟下降约 25%,同时域名解析劫持、页面无法打开和请求失败等故障率也大幅降低。
总字数:410字