DNS递归解析过程

这个标题太大了,大到我都不敢写了,但是不写又怕忘了。索性记一点,把DNS解析的全过程 说一下。

 DNS的解析过程是这样的,首先我们请求自己填写的DNS服务器,服务器先查自己的缓存,没有,直接去问顶级域名,然后顶级域名呢,不直接告诉你答案,也返回一个IP,让你去访问这个IP,这个IP不是真实的你要去请求的域名的IP,而是说这个IP对应的服务器可能知道你要请求的I域名IP是多少,这么说有点罗嗦。
www.2cto.com
其实就是这样的,你问问自己的服务器A在哪里,它去问了顶级域名B,B说你去C这个IP,它会告诉你,然后呢去问了C,C可能也会告你去问D,D会知道,一直这么下去,直到某个DNS服务器告诉你答案为止,这种方式叫做递归解析。
最上层的域名有十三个,然后层层下去,直到解析出来为止。这么说不直观,我们用dig命令来看一下效果。
20121019025933909.jpg
首先是DNS服务器去访问最顶级域名的效果。总共十三个,从a~j.root-servers.net.图上告诉我们,通过自己的DNS服务器10.0.0.1,它告诉我们已经去访问了顶级域名查找我们请求解析的域名了。 www.2cto.com
20121019025936196.jpg
 然后呢,从b.root-servers.net上返回了N个条目,告诉我们通过这些条目可以知道你想要的答案,依次的,下面都这么做,我们的请求被它中介,我问A,A反而让我去问B.我们看下最后的结果。
20121019025938984.jpg
 最后通过dns.uestc.edu.cn我们知道了域名的地址是202.112.14.184.
 需要注意的是,上机域名返回给我们邀请我们去查询的地址可能有多个,从上面的例子我们就可以看出,也就是说我们可能向多个服务器发出了请求,最后这些地址也发回了回应,从最后的一个条目我们看到,有个服务器返回了一个ns记录,是dns.uestc.edu.cn.而这个地址正好是上次我们访问的服务器。也就是说有的服务器已经给出了我们答案,而有的可能解析的还比较慢,还不断的给出NS记录。 www.2cto.com
最后贴一个奇怪的图,我去dig了一个不存在的域名,后缀是zzq,最后却得到的了一个广东电信的IP地址,附上解析的全过程,而且记录类型是没见过的 SOA。这个作为后面研究AD域的时候用。
20121019025938793.jpg


你可能感兴趣的:(服务器)