DNS服务器的理解

3.1 DNS概述在TCP/IP的网络中,网络通信的终点是套接字(Socket ),其由目标主机的IP 地址和要访问的TCP/UDP端口组成,也就是说,不管是在局域网还是互联网上,计算机在网络上通讯时

3.1 DNS概述

在TCP/IP的网络中,网络通信的终点是套接字(Socket ),其由目标主机的IP 地址和要访问的TCP/UDP端口组成,也就是说,不管是在局域网还是互联网上,计算机在网络上通讯时是通过如“202.115.22.33”之类的数字形式的IP 地址来识别目标主机。但当我们在访问Internet 或Intranet 时,我们打开浏览器,在地址栏中输入如“www.sina.com.cn ”的域名后,就能看到我们所需要的页面。这给了人们一个困惑,难道计算机通讯时也能根据对方域名来直接找到目标主机么?

其实,当我们在浏览器的地址栏中输入要访问的网页的域名时,计算机系统会为我们做一个“翻译”工作,即将我们输入域名解析为目标主机的IP 地址。而这种“翻译”记录的建立,在早期是通过一个hosts 文件来完成的,但随着网络规模的扩大,通过管理员手动建立并分发的hosts 文件已不适应网络中越来越多的名字解析的需求,此时,则需要一种能够动态地为客户机进行域名注册,同时能动态的为用户要访问的域名进行名字解析的服务,而DNS (Domain Name System)服务为我们提供了这个解决方案。

域名系统 (DNS) 是用于 TCP/IP 网络(例如,Internet )的名称解析协议,在IP 的网络里,它是客户机/服务器通信的一个集成部分。

DNS 是一个分布式数据库系统,它用来将用户容易记住的友好的名称FQDN (Full Qualified Domain Name :完全限定域名,其描述了主机到它域的精确关系,比如www.gocean.com.cn )解析为难记的IP 地址(比如“202.186.250.41),并将这个映射存放在其数据库系统中,以定位计算机和服务。

,

因此,不管是在局域网还是广域网中,只要你将要用到如“www.gocean.com.cn ”之类域名的时候,你都得首先确保已为此名字在DNS 服务器中作好了相应的和IP 地址的映射工作。而在互联网中,这个工作则由专门的服务器进行完成。

3.2 DNS查询的工作原理

当 DNS 客户端需要查询程序中使用的名称时,它会查询 DNS 服务器来解析该名称。客户端发送的每条查询消息都包括三条信息,指定服务器回答的问题:

1、指定的 DNS 域名,规定为完全合格的域名 (FQDN)

2、指定的查询类型,可根据类型指定资源记录,或者指定为查询操作的专门类型。

3、DNS 域名的指定类别。对于 Windows DNS 服务器,它始终应指定为 Internet (IN) 类别。

例如,指定的名称可以是计算机的 FQDN,例如,“host-a.example.microsoft.com ”,而指定的查询类型可以是通过该名称搜索地址 (A) 资源记录。将 DNS 查询看作客户端向服务器询问由两部分组成的问题,例如“您是否拥有名为 ‘hostname.example.microsoft.com ’ 的计算机的 A 资源记录?”当客户端收到来自服务器的应答时,它将读取并解译应答的 A 资源记录,获取根据名称询问的计算机的 IP 地址。

3.2.1 DNS的查询类型

,

在DNS 中,通常可执行两类的查询。这两种类型如下:

1、递归查询(Recursive )。DNS 服务器承担全部的工作量和责任,为该查询提供完全的答案。它可使用其自身的资源记录信息缓存来应答客户查询,也可代表请求客户端查询或联系其他 DNS 服务器,以便完全解析该名称,并随后将应答返回至客户端。这个过程如上图中的第1和第10步,称为递归。

2、迭代查询(Iterative )。如果DNS 服务器的高速缓存内或区域中没有需要的数据记录,则DNS 服务器会向客户端提供去查询其它DNS 服务器的指针让client 去继续查询,直到出现了正确答案或超时、错误等为止。或第一台DNS 服务器在向第二台DNS 服务器提出查询要求后,如果第二个DNS 服务器内没有所需数据,则它会提供第三台DNS 服务器的IP 地址给第一台DNS 服务器让第一台DNS 服务器向第三台DNS 服务器查询。该过程这个过程如上图中的第2至第9步,称作迭代。

3.2.2 DNS的查找类型

区域查找类型确定DNS 服务器将执行的任务。在你创建区域时,你要通过指定区域类型,来确定该区域将被用来解决正向查找查询还是逆向查找查询。而迭代查询和递归查询可以与下述查找类型相关联:

,

1、正向查找(Forward Lookup )。这种请求将FQDN 映射为IP 地址,为最常用的查找类型。

2、逆向查找(Reverse Lookup)。这种请求将IP 地址映射为FQDN ,当你只知道目标的IP 地址,而不知其域名时,可以采用这种查找类型。

3.3 DNS创建的区域类型

域名系统 (DNS) 允许 DNS 名称空间分成几个区域(Zone ),这些区域存储有关一个或多个 DNS 域的名称信息。对于包括在区域中的每个 DNS 域名,该区域成为该域的有关信息的权威性信息源。

区域是域名称空间中的一个连续部分,通过区域,可以让我们在域中精确的定位某一台主机。

为了创建区域,我们必须先要理解下面这些概念:

1、区域类型(Zone types )。DNS 服务器上可以驻留不同类型的区域,你可以配置单个DNS 服务器,使之支持或驻留多个区域。也可以配置多个服务器,让它们驻留一个或多个区域,用于提供容错和负载平衡的功能。

2、区域文件(Zone file)。资源记录存储于区域文件中。区域文件中存储的停息用于将FQDN 解析为IP ,或将IP 解析为FQDN 。每一个zone 都有一个区域文件,文件位

于:systemrootsystem32dns中。(systemroot表示当前系统的安装目录)。

3.3.1 识别区域类型

,

在DNS 中,你可以创建并配置以下四种类型的区域:即主要区域(Primary zone )、辅助区域(Secondary zone)、存根区域(Stub zone)、活动目录集成区域(Active Directory interated zone)。

3.3.1.1 主要区域(Primary zone)

区域的主 DNS 服务器作为区域的更新点。新创建的区域通常是这种类型。可以按以下列两种方法之一使用主要区域:作为标准的主要区域或集成 Active Directory 的主要区域。 对于标准主要类型区域,只有一个 DNS 服务器能主持和加载区域的主副本。如果创建了一个区域并将其作为标准主要区域,则不允许区域有其他主服务器。只允许一个服务器接受动态更新和处理区域更改。

标准主区域包含区域文件的一个读/写版本,该文件存储为标准的文本文件,区域的任何变化都被记录在该文件中。

3.3.1.2 辅助区域(Secondary zone)

标准主模式隐含了一个故障点。例如,如果因为某种原因区域的主服务器对于网络不可用,则对区域无法做动态更新,无法为DNS 客户进行正常的域名解析。这时候,如果我们为事先为主区域创建了辅助区域服务器,则该服务器可用于应答,则区域中名称的查询不受影响并能不受干扰地继续进行。

辅助区域包含了主区域的的只读副本,其通过区域复制得到主区域信息的变化。辅助区域能通过响应client 查询请求来减少主zone 的负担,从而实现容错和负载平衡。

,

辅助区域的区域文件被存储为一个标准的只读文本文件,该区域的任何的变化都被记录在相应主区域文件中,并被复制到辅助区域的区域文件中。

3.3.1.3 存根区域(Stub zone)

存根区域是一个区域副本,只包含标识该区域的权威域名系统 (DNS) 服务器所需的那些资源记录。存根区域用于使主持父区域的 DNS 服务器知道其子区域的权威 DNS 服务器,从而保持 DNS 名称解析效率。

存根区域由以下部分组成:

1、委派区域的起始授权机构 (SOA) 资源记录、名称服务器 (NS) 资源记录和粘附 A 资源记录。

2、可用来更新存根区域的一个或多个主服务器的 IP 地址。

存根区域的主服务器是对于子区域具有权威性的一个或多个 DNS 服务器,通常 DNS 服务器主持委派域名的主要区域。

使用存根区域可执行以下操作:

1、使委派的区域信息保持最新。 通过定期更新它的一个子区域的存根区域,主持父区域和存根区域的 DNS 服务器将维护该子区域的权威 DNS 服务器的当前列表。

,

2、改进名称解析。 存根区域使 DNS 服务器能够使用存根区域的名称服务器列表执行递归,而无需查询 Internet 或 DNS 名称空间的内部根服务器。

3、简化 DNS 管理。 在整个 DNS 结构中使用存根区域可为区域分发权威 DNS 服务器的列表,而不用使用辅助区域。但是,存根区域与辅助区域的用途不同,考虑冗余和负载共享时,存根区域不是备用区域。

3.3.1.4 活动目录集成区域(AD integrated zone)

可通过使用 DNS 服务器服务的目录集成存储和复制功能为区域添加更多的主服务器。为此,您需要更改区域并将它集成到 Active Directory。

与AD 集成的DNS 区域中只能创建于域控制器上,其区域数据库也保存在活动目录中,并随AD 的复制而在整个域中复制。因为活动目录维护区域信息,所以你无需为了指定怎样更新与何时更新而配置DNS 服务器。

3.4 安装和配置DNS

在上面我们详细介绍了DNS 的概念及工作原理,接下来,我们就向大家说明如何在Windows 2003 Enterprise Edition服务器上配置DNS 服务。

3.4.1 企业背景

你的公司网络正向Windows2003 转移。在进行这种转移时 ,部分工作涉及到配置DNS 域的问题,要在全公司范围内使用这些域。你公司申请的域名有Nwtrade.com 和nt2000.com, 并

,

且为你的公司内的不同地理区域指派了子域。作为公司的网络管理员, 你需要在公司内部建立DNS 域名解析系统。为了进行容错和负载均担,你需要建立主区域和辅助区域。在系统建立完成后,你还需要确认这些服务器能否正常的工作,并能快速更正出现的问题。

3.4.2 配置步骤

1、安装DNS

2、建立主区域和主机记录

3、建立反向区域和指针记录

4、实现DNS 的动态更新

5、建立标准辅助区域并配置区域传输

6、与WINS 集成

7、DNS 客户端的配置

3.4.2.1 安装 DNS

默认的,当你安装好Windows Server 2003之后,DNS 服务并没有被添加进去。为了安装DNS ,你可以在“控制面板”或“配置你的服务器向导”中进行安装。这里以“控制面板”中的安装方法为例。

1、以管理员身份登录到一台固定IP 地址为192.168.0.100服务器,在“控制面板”上双击“添加/删除程序”,在其后出现的对话框中单击“添加/删除Windows 组件”。

,

2、在“Windows 组件” 向导中,选择单击“网络服务“,然后再单击“详细资料”,选择“域名服务系统(DNS )”前面的复选框,然后单击“确定”按钮进行安装。

3、安装完毕后,在“管理工具”中会出现“DNS ”管理工具。

3.4.2.2 建立主区域和主机记录

1、首先确保本机已安装了DNS 服务,则可以通过选“开始→程序→管理工具→DNS ”来打开DNS 控制台管理器(以下简称“DNS 管理器”)。

2、在DNS 管理器中,在“正向查找区域”上单击右键,选“新建区域”以进入新建区域向导中。

3、当向导提示到要让选择“区域类型”时,此处应选“主要区域”,并清除“在Acticve Directory 中存储区域”前面的复选框,单击“下一步”按钮继续。

3、随后系统会询问“区域名”,在“名称”后的文字框中输入“nwtrade.com ”;接着向导进入到“区域文件”提示窗口中,默认的,系统会自动选中“创建新文件,文件名为”一项,并在其后的文字框中自动填有“nwtrade.com.dns ”(“nwtrade.com ”部分即为上步所输入的“区域名”)的名字。

,

4、再根据系统提示选择其默认各项之后即可完成此区域的建立。此时在DNS 管理器左边的“树”栏中的“LG →正向搜索区域”里即可以看到新建立的“nwtrade.com ”区域。

5、接着在“nwtrade.com ”区域上单击右键,选“新建主机”,在其后的对话框中的“名称”处输入主机名“www ”,“IP 地址”处输入IP 地址“192.168.0.100”,再单击“添加主机”按钮,即成功地创建了主机地址记录www.nwtrade.com 。

3.4.2.3 建立反向区域和指针记录

1、在DNS 管理器中,在“反向查找区域”上单击右键,选“新建区域”以进入新建区域向导中。

2、当向导提示到要让选择“区域类型”时,此处应选“主要区域”,并清除“在Acticve Directory 中存储区域”前面的复选框,单击“下一步”按钮继续。

3、在“网络ID ”中输入“192.169.0”, 然后单击“下一步”。

标签: