dns递归查询实验及分析
拓扑图如下
给所有机器配上ip【1-6号】
这一步毋庸置疑,ip就是机器的身份证号码,那个ip随便取,
给pc机【1号】配置本地dns
这一步很关键,否则主机就不知道本地域名服务器在哪里,不知道从哪里去找,博主这里给的ip为192.168.40.5的那台dns服务器,同时这台服务器也是百度的dns服务器,当然你也可以设置其他的
配置百度和360的权威域名服务器【4号,5号】
如图dns1是www.baidu.com的权威域名服务器,dns2是www.360.com的权威域名服务器
dns1配置如图(别忘了开启dns服务)
dns2配置如图(别忘了开启dns服务)
配置根域名服务器【6号】
配置如图(别忘了开启dns服务)
改一下百度和360的网站首页内容
w为了方便我们辨别,给百度和360的index.html修改一下
www.baidu.com的index.html内容如图
www.360.com的index.html内容如图
pc机分别访问发ping包效果图
在pc机的浏览器访问www.baidu.com的状态如图(动态图单击放大)
在pc机的浏览器访问www.360.com的状态如图(动态图单击放大)
分析总结
如果用户(pc机)想访问www.baidu.com,可以直接通过本地dns获知,这个没啥说的。
但是想访问www.360.com却不能访问到,所以需要上面的权威域名服务器和根域名服务器,pc机访问在www.360.com时,会去本地dns查找,本地dns里没用www.360.com的ip,但是本地dns有.com,并且知道dns.com的对应ip地址,因此它会往上一级(根dns)发送一个dns请求,根dns收到这个包,但是根dns也不知道www.360.com的ip,于是根dns又会发一个包,这时候360.com收到这个包,它知道www.360.com的ip,是192.168.40.4,然后又返回一个包给根dns,根dns再发一个包到本地dns,最后本地dns返回一个和包给pc机,然后pc机就知道www.baidu.com的ip啦,就能愉快的访问百度网站啦。
文章末尾固定信息
评论