2.3.2 使用 HTTPDNS 解决“中间商”问题

“域名解析器”是 DNS 查询中的第一站,它作为客户端与“域名服务器”的中间人帮我们去整棵 DNS 树上进行解析,然后将解析的结果返回给客户端。

但作为一个“中间商”,“域名解析器”很容器出现域名劫持、解析时间过长、解析调度不精准等问题。这些问题的根源在于 域名解析经历了过多的中间环节,服务质量不可控

为了解决上述问题,一种新型的 DNS 解析模式 - HTTPDNS 应运而生。

HTTPDNS 的工作原理如图 2-7 所示,客户端内部通过集成 HTTPDNS 模块,跳过由“操作系统定义的解析服务”(图中的 LocalDNS,也就是默认基于 UDP 协议的域名解析系统),替换为使用 HTTPS 协议请求更可靠的“软件定义的解析服务”(图中的 6.6.6.6)。这种设计的好处是避免了“中间商赚差价”,软件定义的解析服务直接从“权威域名服务器”同步解析记录,逻辑更可控,也能准确判断客户端地区和运营商,得到更精准的解析结果。

图 2-7 HTTPDNS 模式下 DNS 解析原理

使用 HTTPDNS ,再通过构建客户端解析缓存、热点域名预解析、懒加载等优化策略,能明改善传统域名解析带来的各类问题。笔者的工作实践结果中,使用 HTTPDNS 服务,海外服务初次请求延迟约下降 25% 左右,之前劫持、页面无法打开、请求失败的故障率也大幅下降。

总字数:444
Last Updated:
Contributors: isno