NSlogging鸡和鸡蛋:NS在它服务的域名

我已经和BIND打交道了好几年了,这总是让我感到困扰。

$ dig google.com ns ;; QUESTION SECTION: ;google.com. IN NS ;; ANSWER SECTION: google.com. 87046 IN NS ns3.google.com. etc... ;; ADDITIONAL SECTION: ns1.google.com. 87274 IN A 216.239.32.10 etc. 

我知道,至less在理论上,根服务器是处理的,并且把.com,.gov等移交给正确的服务器(尽pipe实际上这些服务器都caching了几个层次),但是在某些时候,要知道在216.239.32.10处向服务器索取whatever.google.com的Alogging。 但是parsing者是如何认识到这一点的,因为你需要知道NS的A来做到这一点? (就此而言,既然我们知道这是互联网NS,而不是混沌之类,那么为什么你必须使用一个名字而不是NSlogging的地址?)

我的名字服务器一直有可能被上游某人发现的名称(例如,我在foo.com上为bar.com托pipeDNS,而我的上游则处理了foo.com),但是我从来没有完全理解像Google这样的人如何克服以google.com为名称托pipeDNS的google和egg问题。

我认为你正在努力的概念是胶水logging 。


从上面的链接文章:

例如,如果exam​​ple.org的授权名称服务器是ns1.example.org,则试图parsingwww.example.org的计算机首先会parsingns1.example.org。 由于ns1包含在example.org中,所以首先需要parsingexample.org,它提供了一个循环依赖。 要打破依赖关系,顶级域名组织的名称服务器将包含胶水以及example.org的代理。 胶水logging是为ns1.example.org提供IP地址的地址logging。 parsing器使用这些IP地址中的一个或多个来查询域的权威服务器之一,这使得它可以完成DNS查询。