cachingDNS。 它如何select要查询的DNS服务器?

我有一个本地cachingDNS服务器(命名)。

说我想解决blizzard.com域名。 我的本地DNS如何pipe理find正确的服务器来查询这个域? 它是否有其他DNS服务器的列表? 我可以改变它们吗(比如Google的8.8.8.8)?

谢谢!

我的本地DNS如何pipe理find正确的服务器来查询这个域?

它问。

它是否有其他DNS服务器的列表?

是的,根列表或上游列表。 在根目录下,它会询问“。” 根服务器(其中之一)为com.的服务器com. 域名,那么那些blizzard.com. 相关服务器等。

DNS是一个定义明确的协议,caching不是一个神奇的黑盒子 – 所有的行为都是精确定义的。

如果你的caching服务器需要检索一个新的RR,它将迭代地遍历层次结构,就像任何DNS服务器一样(假设你没有configuration转发器,你不应该这么做),然后问一个对blizzard.com具有权威性的域名服务器为RR。
该值用于RR的TTL字段中给定的持续时间。

Sundry在这里详细解释: http : //www.zytrax.com/books/dns/ch2/和这里: http : //en.wikipedia.org/wiki/Domain_Name_System#DNS_resolvers

运行下面的命令会给你一个很好的想法。

 dig +trace example.com 

根服务器的官方列表在这里维护。 这是大多数recursion服务器将用来确定从何处开始寻找域的“提示”文件。 它只是很less改变。 我记得最近的大部分变化都只是添加了IPv6的AAAAlogging。

有关在根级发生什么的更多细节,这里有大量的文档