基本概念
DNS是域名系统(Domain Name System)
的缩写,也是TCP/IP
网络中的一个协议。在Internet上域名与IP地址之间是一一对应的,域名虽然便于人们记忆,但计算机之间只能互相认识IP地址,域名和IP地址之间的转换工作称为域名解析,域名解析
需要由专门的域名解析服务器
来完成,DNS就是进行域名解析的服务器
。
域名与IP地址
在上网的时候,通常输入的是如:www.ncbuct.edu.cn
这样的网址,其实这就是一个域名,而该域名实际对应的IP地址是60.10.193.26
。但是这样的IP地址我们很难记住,所以有了域名的说法,域名会让我们更容易记住。网站域名一般是不变的,但是网站的IP地址可能会更换,用户通过域名访问网站,即使网站要更换IP地址,也不会给用户的访问造成影响。
域名的层次结构
域名解析过程
当DNS客户端向DNS服务器查询IP地址,或本地域名服务器(本地域名服务器有时也扮演DNS客户端的角色)向另一台DNS服务器查询IP地址时,可以有两种查询方式:递归查询和迭代查询。
递归查询
递归查询
是指DNS客户端发出查询请求后,如果DNS服务器内没有所需的数据,则DNS服务器会代替客户端向其他的DNS服务器进行查询
。在这种方式中,DNS服务器必须给DNS客户端做出回答。一般由DNS客户端提出的查询请求都是递归型的查询方式。
迭代查询
迭代查询
多用于DNS服务器与DNS服务器之间的查询方式
。它的工作过程是:当第1台DNS服务器向第2台DNS服务器提出查询请求后,如果在第2台DNS服务器内没有所需要的数据,则它会提供第3台DNS服务器的IP地址给第1台DNS服务器,让第1台DNS服务器直接向第3台DNS服务器进行查询。依此类推,直到找到所需的数据为止。如果到最后一台DNS服务器中还没有找到所需的数据时,则通知第1台DNS服务器查询失败。
域名解析过程
example:域名为
me.abc.com的主机
打算发送邮件给域名为a.xyz.com的另一个主机
,那么域名为me.abc.com的主机就必须知道域名为a.xyz.com主机的IP地址。
me.abc.com的主机
——发送邮件到——域名为a.xyz.com的另一个主机
① 主机me.abc.com先向本地域名服务器dns.abc.com进行递归查询。
② 本地域名服务器采用迭代查询,向一个根域名服务器查询。
③ 根域名服务器告诉本地域名服务器,下一次应查询的顶级域名服务器dns.com的IP地址。④ 本地域名服务器向顶级域名服务器dns.com进行查询。
④ 本地域名服务器向顶级域名服务器dns.com进行查询。
⑤ 顶级域名服务器dns.com告诉本地域名服务器,下一次应该查询的权限域名服务器dns.xyz.com的IP地址。⑥ 本地域名服务器向权限域名服务器dns.xyz.com进行查询。
⑦ 权限域名服务器dns.xyz.com告诉本地域名服务器,所查询的主机的IP地址。
⑧ 最后,本地域名服务器把查询结果告诉主机me.abc.com。