DNS系列一: DNS查询原理
2009-01-06 12:59:33 来源:WEB开发网网络通讯大部分都是基于TCP/IP,而TCP/IP通讯则是基于IP地址,但是在现实网络访问中有谁愿意用IP地址访问呢,因为IP地址我们记忆起来不方便。为了解决这个问题,因此有了DNS。
DNS:域名系统 用户在访问互联网时通过输入www.luwenju.com 其实输入的是一个计算机名,用户计算机把它交给DNS服务器,服务器在接到请求后会回应用户计算机一个IP地址,用户计算机在通过DNS服务器返回的IP地址访问互联网。如下图所示
上图中,DNS客户机查询DNS服务器,要求获得某台计算机的IP,由于DNS服务器能够根据自己DNS数据库中对应查询,所以它将自己资源记录中的www.luwenju.com=192.168.1.100返回给客户机。
客户机把所要访问的计算机名交给DNS服务器,然后服务器开始查询。DNS服务器查询有四种:1、递归查询 2、迭代查询 3、转发器 4、私有根
下面分别这4中查询方法
1、递归查询:
当DNS客户机发送给DNS服务器要求解析某个计算机名时,DNS服务器首先查找自己的数据库,如果数据库中有对应的域名和IP的映射信息,则把该域名所对应的IP地址返回给客户机。如果服务器在自己的数据库中没有发现该资源记录,则宣告查询失败
首先DNS客户机向DNS服务器发起查询请求,然后DNS服务器开始检查资源记录,如果找到该资源记录,则把它返回给客户机。如找不到,可以通过转发器和根提示来查找该记录。如果DNS服务器通过任何方法都没找到该记录,则宣告查询失败。
2、迭代查询:
迭代查询指的是一台DNS服务器发往令外一台DNS服务器的查询
① 客户机向本地DNS服务器发起请求,问www.luwenju.com的IP地址是多少?
② 本地DNS服务器收到DNS客户机的迭代查询,根服务器作出相应,提供靠近所提交域名的DNS服务器的IP地址
③ 本地DNS服务器向靠近所提交的DNS服务器发起迭代查询,以此类推,直到本地DNS服务器收到所要查询的资源记录
④ DNS服务器收到资源记录后发送给本地DNS服务器
⑤ 本地DNS服务器将资源记录回应给DNS客户机
3、转发器
转发器通过内部DNS服务器把用户的发来的请求(内部DNS服务器无法解析的请求)转发给外部网络上的DNS服务器进行解析
①客户机向本地DNS服务器发起DNS请求:www.luwenju.com的IP是?
②本地DNS服务器自己的资源记录中没有该记录,由于配置了转发功能,把DNS客户机发的请求转发给了外网的DNS服务器
③外网DNS服务器把资源记录返回给本地DNS服务器
④本地DNS服务器把该记录回应给客户机
4、私有根
(待续)
本文出自 “陆文举” 博客,请务必保留此出处http://luwenju.blog.51cto.com/620835/124356
更多精彩
赞助商链接