互联网公司,基本都有针对DNS域名解析的优化处理。有些公司甚至会构建本身的智能 DNS 解析系统,来解决 LocalDNS 存在的一系列问题,如域名劫持、调用精度和实时性等。html
现现在,HttpDNS 已经成为一种比较经常使用优化方案之一。HttpDNS 是基于 http 协议具备 DNS 域名解析能力的一种服务,如今各大云厂商都已经构建了本身的 HttpDNS 服务。如阿里云 HttpDNS、腾讯云 HttpDNS等。python
HttpDNS 的原理很是简单:api
HttpDNS 将域名解析过程显式的体现了出来。绕过 LocalDNS 的域名递归解析过程,这样就直接避免了 LocalDNS 的一系列问题。服务器
经过 HttpDNS 原理,能够看出 HttpDNS 须要高度的可用,很容易成为整个系统的瓶颈。除此以外,还须要一个高效的域名解析配置管理系统来作域名解析和选优策略的管理。markdown
下面咱们来探讨另外一种简单的实现方式,利用本身可控的 DNS 系统和 dig 命令来实现简单 HttpsDNS 服务。oop
思路以下:学习
dig @ns服务器 www.baidu.com +subnet=客户端ip
复制代码
该方式利用了 DNS 系统的动态调度功能和域名 IP 的管理功能,结合 Http api 服务提供 Http 协议的 DNS 解析能力。绕过了 LocalDNS 的递归查询,解决了 DNS 劫持问题和精度问题。优化
该方式,只是一个简单的思路探索,其中还有不少细节的问题须要深究。DNS 解析是业务系统的一个强依赖服务,可用性和稳定性不容忽视。阿里云
好了,今天的分享就到这里,欢迎留言探讨!spa
关注公众号「码农吴先生」, 可第一时间获取最新文章。回复关键字「go」「python」获取我收集的学习资料,也可回复关键字「小二」,加我 wx 拉你进技术交流群,聊技术聊人生~