域名系统将主机名解析成IP地址使用到一个全局的、层次性的分布式数据库系统。该系统包含了Internet上所有域名及IP的对应信息。数据库的层次性允许将域名空间划分成独立的管理部分,并称为域(Domain)。数据库的分布式特性则允许将数据库的各个不同的部分分配到不同网络上的域名服务器上,这样各域名服务器可以实现独立的管理。

    DNS的域是一种分布式的层次结构系统,这种结构非常类似于UNIX文件系统的层次结构,根的名字以空标签(“”)表示,并称为根域(root domain)。图1所给出的结构是典型的例子。根域的下一级是顶级域。顶级域有两种划分方法:地理域和通用域。地理域是为世界上每个国家或地区设置的,由ISO-3166定义,如中国是cn,美国是us,日本是jp。通用域是指按照机构类别设置的顶级域,主要包括:com(商业组织);edu(教育机构)等。另外随着互联网的不断发展,新的通用顶级域名也根据实际需要不断被扩充到现有的域名体系中来,新增加的通用顶级域名是biz(商业),info(信息行业)等。在顶级域名下,还可以再根据需要定义次一级的域名,如在我国的顶级域名cn下又设立了com,net,org,gov,edu,ac以及我国各个行政区划的字母代表如bj代表北京,sh代表上海等。

                           图一域名结构层次

     域名空间是指表示DNS这个分布式数据库的逆向树型层次结构,完整域名由从树叶节点到根节点的一条路径的所有节点以分隔符“.”按顺序连接而成,如., 其中“.”代表根域(当“.”出现在域名的最右边时,实际上还表示其右边有代表根的空标签“”;也可以用最右边的“.”来表示根),“cn”为顶级域,“com”为二级域,“sina”为三级域,“www”为主机名。

    DNS的服务管理层次结构允许将整个域名空间的管理任务分成多份,分别由每个子域自行进行管理,被委托子域有自己的域名服务器,该服务器维护属于该子域的所有主机信息,父域的域名服务器不保留子域的所有信息,而只保留指向子域的指针。域和子域的实际信息包含在区数据文件(zonefile)中,域和子域指域名空间的逻辑分区,区指域名服务器含有的域名空间中的某一部分的完整信息,一个域内可以有多个区。区数据文件是一套包含某个域内机器信息的文本,它的格式是资源记录(resource record)。这些记录中表示主机和它的IP的映射方法。大部分的资源记录如下:Name [TTL] class type data。其中Name是域名。TTL域表示“生存时间”,它是告诉域名服务器隔多长时间更新一次记录。Class域说明记录属于的等级,一般是IN,表示Internet数据。Type域指出记录的类型。Data域保存资源记录要求的参数。主要的资源记录如下表:

               表1主要的资源记录的类型 

2.CN域名服务的解析的原理和过程

    在介绍了域名服务体系的层次结构合域名服务器的相关概念后,我们可以比较容易的理解CN域名解析的工作原理和过程,其工作原理及过程分下面几个步骤:

  第一步:用户提出域名解析请求,并将该请求发送给本地的域名服务器。

  第二步:当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回。

  第三步:如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域,如CN)的主域名服务器的地址。

  第四步:本地服务器再向上一步骤中所返回的域名服务器发送请求,然后收到该请求的服务器查询其缓存,返回与此请求所对应的记录或相关的下级的域名服务器的地址。本地域名服务器将返回的结果保存到缓存

 

  第五步:重复第四步,直到找到正确的纪录 

  第六步:本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户机。(请参考下图进行理解)