引入:就是我们平常输入的网站,我们总不能查询一个网站输入它的IP地址.
因特网采用层次树状结构的域名结构
域名的结构由若干个分量组成,各分量之间用“点”隔开,分别代表不同级别的域名。
….三级域名.二级域名.顶级域名
域名系统既不规定一个域名需要包含多少个下级域名,也不规定每一级的域名代表什么意思。
各级域名由其上一级的域名管理机构管理,而最高的顶级域名则由因特网名称与数字地址分配机构ICANN进行管理。
在国家顶级域名下注册的二级域名均由该国家自行确定
。例如,顶级域名为jp的日本,将其教育和企业机构的二级域名定为ac和co,而不用edu和com。
我国
则将二级域名
划分为以下两类
:
举例:
这种按等级管理的命名方法便于维护名字的唯一性,并且也容易设计出一种高效的域名查询机制.需要注意的是,域名只是个逻辑概念,并不代表所在的物理地点. |
分布在各地的域名服务器
来实现域名到IP地址的转换。根域名服务器
根域名服务器是最高层次的域名服务器。每个根域名服务器都知道所有的顶级域名服务器的域名及其IP地址。因特网上共有13个不同IP地址的根域名服务器。尽管我们将这13个根域名服务器中的每一个都视为单个的服务器,但“每台服务器”实际上是由许多分布在世界各地的计算机构成的服务器群集。当本地域名服务器向根域名服务器发出查询请求时,路由器就把查询请求报文转发到离这个DNS客户最近的一个根域名服务器。这就加快了DNS的查询过程,同时也更合理地利用了因特网的资源。根域名服务器通常并不直接对域名进行解析,而是返回该域名所属顶级域名的顶级域名服务器的IP地址。
顶级域名服务器
这些域名服务器负责管理在该顶级域名服务器注册的所有二级域名。当收到DNS查询请求时就给出相应的回答(可能是最后的结果,也可能是下一级权限域名服务器的IP地址)。
权限域名服务器
这些域名服务器负责管理某个区的域名。每一个主机的域名都必须在某个权限域名服务器处注册登记。因此权限域名服务器知道其管辖的域名与IP地址的映射关系。另外,权限域名服务器还知道其下级域名服务器的地址。
本地域名服务器
本地域名服务器不属于上述的域名服务器的等级结构。当一个主机发出DNS请求报文时,这个报文就首先被送往该主机的本地域名服务器。本地域名服务器起着代理的作用,会将该报文转发到上述的域名服务器的等级结构中。每一个因特网服务提供者ISP,一个大学,甚至一个大学里的学院,都可以拥有一个本地域名服务器,它有时也称为默认域名服务器。本地域名服务器离用户较近,一般不超过几个路由器的距离,也有可能会在同一个局域网中.本地域名服务器的IP地址需要直接配置在需要域名解析度的主机中.
递归查询与迭代查询
图解:
递归查询是主机找本地域名服务器,本地域名服务器找根域名服务器,类似于A找B,B找C,C找D,以此类推 |
迭代查询是,类似于A找B,B给A,C的电话号码,A找C,C告诉A,D的电话号码,A找D,以此类推 |
高速缓存
。高速缓存用来存放最近查询过的域名以及从何处获得域名映射信息的记录。应为每项内容设置计时器并删除超过合理时间的项
(例如,每个项目只存放两天)。