首页 百科知识 的关键概念

的关键概念

时间:2022-06-17 百科知识 版权反馈
【摘要】:5.2.2 DNS的关键概念在理解DNS结构和工作过程之前,很有必要正确理解DNS中几个关键的概念和组件,包括名字服务器,资源记录,解析器,域名空间,顶级域,正向映射和反向映射,域,区域,授权。一般来说,一个domain中的映射关系是由一台主机服务器负责的。是DNS报文的关键组成部分。这里有一个重要的概念需要说明,Resolvers和Stub Resolvers是不同的概念。

5.2.2 DNS的关键概念

在理解DNS结构和工作过程之前,很有必要正确理解DNS中几个关键的概念和组件,包括名字服务器(Name Servers),资源记录(Resource Records),解析器(Resolvers),域名空间(Domain Name Space),顶级域(Top Level Domain),正向映射和反向映射,域(Domain),区域(Zone),授权(Delegation)。正确地理解这些概念和组件才能够正确地理解DNS系统结构和工作原理。这些概念和组件在后面的学习中会反复的使用。

(1)域名空间(Domain Name Space)

在实际运用中,DNS可以看成是一个主机名(Names)的分布式数据库。这里提到的分布式是指在Internet上的单个站点不能拥有所有的信息。每个站点(如大学中的系、校园,公司或公司中的部门)保留它自己的信息数据库,并运行一个服务器程序供Internet上的其他系统(客户程序)查询。这些主机名建立了一个反方向的逻辑树形结构,称之为域名空间(Domain Name Space)。可以形象地说,域名空间就是由Internet上众多的DNS服务器中的数据记录组成。

(2)顶级域(Top Level Domain)

DNS域的根域(root domain)是由NIC统一管理,它也负责分派全球范围内的域名。在根域下面的子域,类似于.com,.org,.edu等,就称为顶级域。

(3)正向映射和反向映射空间

在上面提到了DNS有正向映射和反向映射两种功能,这两种功能导致了两个命名空间:一个正向映射空间首先分为.com,.edu等顶级域,它们可以划分成各个不同的子域,子域又可以继续分成下一层子域等等,它们负责从域名到IP地址的映射;另一个反向映射空间中,所有的IP组成一个叫做arpa.in-addr的顶级域,然后再根据IP层层细分。要注意的是:负责正向映射和反向映射的机器不一定是同一部;域名和IP并不是一一对应的,很简单,一台机器可能有多个IP。这也就是为什么有时候需要把域名空间划分为正向映射空间和反向映射空间的原因。

(4)域(Domain)

域名空间中每一个节点以及节点下面的树枝构成了一个域,也就是说,域名空间中一棵逻辑子树称为域。而每一个节点或者域都可以细分为多个子域(subdomain),也就是多条树枝。一般来说,一个domain中的映射关系是由一台主机服务器负责的。

(5)区域(Zone)

一般来说域名空间的一部分如果存有数据库记录并且这些记录是由一个特殊的区域文件管理,这一部分域名空间就可以称为一个区域。简单来讲,一个区域就是一棵独立管理的域名空间的子树。精确点来说,每个zone由一个名字服务器负责。对于zone和domain的关系,可以这么理解:一个domain除去分派给子域负责的那部分,剩下的部分就成为zone。因此,具体的对域中的主机信息进行管理以及地址映射的功能可以从zone来考虑,因此它是一个具体的管理实体,而domain基本上是一个逻辑上的划分。

(6)名字服务器(Name Servers)

一个包含了DNS树形结构的信息并且能够设置这些信息的服务程序。名字服务器能够高速缓存域名树的任何一部分信息,但是一般来说,一个名字服务器只用来完善特定的一部分DNS信息,这就意味着,某一个名字服务器只对域名空间的某一个特定子域拥有权利。一般一个区域拥有一台包含区域中所有主机信息的名字服务器,该名字服务器也可称为授权(authoritative)名字服务器,也称为主名字服务器(primary,master)。显然,为了防止主名字服务器当机而导致无法实现域名解析,在一个区域内,还应该存在一台或多台备用名字服务器(secondary,slave)。

(7)资源记录(Resource Records,RRs)

该组件规范了和名称相关联的数据的格式。在DNS名字服务器中,一条信息就是一个资源记录(RR),每一个资源记录都有一种与之相关联的类型,描述了它所表示的数据。名字服务器中所有的信息都是以RR格式保存,该格式被用在DNS报文中传送信息。是DNS报文的关键组成部分。

(8)解析器(Resolvers)

简单来说,解析器就是一个位于服务器和客户端的中介程序,它从名字服务器取得信息来响应客户端的DNS请求。这里有一个重要的概念需要说明,Resolvers和Stub Resolvers是不同的概念。Stub Resolvers是客户端的一个程序库(例如UNIX下的gethostbyname,gethostbyaddr函数),客户端如果需要访问DNS,通过它向Resolvers发送DNS请求。而Resovlers一般位于DNS服务器端并且为一组Stub Resolvers提供服务,Resovlers收到Stub Resolvers请求后,根据该DNS请求的内容向名字服务器查询,然后把查询结果返回给Stub Resolvers。

(9)授权(Delegation)

上面提到了每一个域场可以根据需要细分成多个子域(sub-domain),这样,domain可以将它分出来的sub-domain的域名和IP映射交给另一部机器管理,这个动作就称为授权。在DNS系统中,并没有哪个机构来专门负责管理域名树中的每个标识,而只有一个机构,NIC负责分配顶级域和委派其他指定地区域的授权机构。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈