大部分用户使用的本地DNS是用户在接入网络时由ISP自动分配的。存在几方面问题:

1、首次查询或缓存过期后的查询,需要遍历多个互联网上多个DNS才能得到结果,查询时间较长,影响用户的访问速度。

2、域名解析的环节较多,其中任何一点出现问题,都可能会导致解析异常,进而影响用户对互联网的访问。

3、Local DNS会对获取的结果做一定时间缓存,当域名管理员对域名对应的IP地址调整后,Local DNS不能马上感知,还会用缓存中老的地址应答,可能导致访问出错。

4、当前互联网上CDN很多都是根据Local DNS的地址来调度。有些ISP的Local DNS并不直接去递归解析,而是转发到其他Local DNS上,可能导致CDN调度不准确,使用户不能访问到最快的站点。

5、ISP不是专业的DNS服务商,提供的Local DNS可能出现性能、稳定性等方面的问题。另外,日益频繁的DNS攻击,也会导致Local DNS出现宕机、劫持等情况。这些都会影响客户的上网体验。

6、部分ISP通过DNS劫持做广告植入,给用户带来较差的体验。

公共DNS的优势:

如阿里公共DNS,从架构和原理上讲,确实很有优势。

快速:

    通过BGP anycast技术,让用户访问到离自己较近的DNS集群。

    主动同步com/net域名、万网注册域名的变更,减小ttl时间的影响,快速访问到正确的记录。

    主动缓存热点域名的,提高查询CACHE命中率,减少递归过程,快速应答。

稳定:

    异地多机房高可用架构。

    基于DPDK自主研发的高性能DNS系统。

    Aliguard多种攻击防御策略。

    持久化保存热点记录,当“根”或域名的权威DNS出现异常后,阿里公共DNS具备快速恢复正常访问的能力。

智能:

    结合阿里优质CDN资源和精准的IP地址库,让用户访问到较近的网站。

关于本地DNS和公共DNS的优缺点,本文就介绍这么多,希望对您有所帮助,谢谢!

03-14 03:08