关于DNS的一些材料

DNS概述

在使用WINDOWS2000 SERVER 作为网络的操作系统时,通过配置DNS服务器、DHCP服务器和WINS服务器,可以实现WINDOWS 2000 SERVER服务器提供的最为重要和基本的服务。这是因为,无论是在局域网中还是在INTERNET中,客户机都需要这3种服务器所提供的服务来识别其他的计算机,并获得动态的IP地址。其中,DNS、DHCP、WINS服务器为网络中的客户机提供的服务为分别是域名服务、为进入网络的客户机动态地分配IP地址的服务,以及将NETBOIS计算机名转换为对应的IP地址的服务。这3种服务的关键作用在于将计算机能够识别的IP地址与实现中人们使用的诸如WWW.263.COM类型的计算机地址进行转换。于是,计算机拥护无须通过记忆那些抽象的IP地址来与其他网络客户机进行连接了。
DNS服务器所提供的服务是完成将主机名和域名转换为IP地址的工作。为什么需要将主机名和域名转换为IP地址的工作呢?这是因为,当网络上的一台客户机访问某一服务器上的资源时,拥护在浏览器地址栏输入的是便于识记的主机名和域名,如HTTP://WWW.263.NET。而网络上的计算机之间实现连接却是通过每台计算机在网络中拥有的唯一的IP地址来完成的,这样就需要在用户容易记忆的地址和计算机能够识别的地址之间有一个解析,DNS服务器便充当了解析的重要角色。
DNS是域名系统(DOMAIN NAME SYSTEM)的缩写,是一种组织域层次结构的计算机和网络服务命名系统。当用户在应用程序中输入DNS名称时,DNS服务可以将此名称解析为与此名称相关的IP地址信息。
用户在使用网络服务时喜欢在浏览器的地址栏中输入使用主机名和域名组成的名称,如COMPUTER.BOOKSHOP.COM,因为,这样的名称更容易被用户记住。但是,计算机在网络是使用IP地址来通信的。为了能够实现网络计算机之间通信,DNS服务器所提供的服务就是将用户所使用的经济或服务名称映射为IP地址。
DNS服务的工作过程如下:
当DNS客户机需要查询程序中使用的名称时,它会查询DNS服务器来解析该名称。客户机发送的每条查询消息都包括3条信息,以指定服务器应回答的问题。
指定的DNS域名,表示为完全合格的域名(FQDN)。
指定的查询类型,它可根据类型指定资源记录,或作为查询操作的专门类型。
DNS域名的指定类别。
对于DNS服务器,它始终应指定为INTERNET类别
。例如,指定的名称可以是计算机的完全合格的域名,如HOSTA.HELLO.COMPANY.COM,并且指定的查询类型用于通过该名称搜索地址资源记录。系统将把DNS查询当作客户机向服务器提出的两部分问题,如“对于名为HOSTA.HELLO.COMPANY.COM的计算机,你有没有地址资源记录?”当客户机从服务器接受应答时,它读取并解释应答地址资源记录,以了解它通过名称提问的计算机的IP地址。
DNS查询以各种不同的方式进行解析。客户机有时也可通过使用从以前查询获得的缓存信息就地应答查询DNS服务器可使用其自身的资源记录信息缓存来应答查询,也可代表请求客户机来查询或联系其他DNS服务器,以完全解析该名称,并随后将应答返回至客户机。这个过程称为递归。
另外,客户机自己也可尝试联系其他的DNS服务器来解析名称。如果客户机这么做,它会使用基于服务器的独立和附加的查询,该过程称为迭代。
总之,DNS的查询过程按两部分进行:首选,名称查询从客户机开始并传至解析程序(DNS客户服务)进行解析:其次,不能就地解析查询时,可根据需要查询DNS服务器来解析名称。
如查询过程的初始步骤所示,DNS域名有本机的程序使用。该请求随后传送至DNS客户服务,以通过使用就地缓存的信息进行解析。如果可以解析查询的名称,则查询将被应答,并且此过程完成。其中,本地解析程序的缓存可从以下2个可能的来源获取名称信息:
如果主机文件就地配置,则来自文件的任何主机名称到地址的映射都将在DNS客户服务启动时预先加载到缓存中。
从以前DNS查询应答的响应中获取的资源记录将被添加至缓存并保留一段时间。

如果次查询不匹配缓存中的项目,则解析过程继续进行,客户机查询DNS服务器来解析名称。
接下来查询DNS服务器,当本地的DNS不能就地解析查询时,可根据需要查询DNS服务器来解析名称。客户机将查询首选DNS服务器。在次过程中使用的实际服务器是从全局列表中选择的。当DNS服务器接收到查询时,首先检查它能否根据在服务器的就地配置区域中获取的资源记录信息作出权威的应答。如果查询的名称与本地区域信息中的资源记录匹配,则服务器作出权威性的应答,并且使用该信息来解析查询的名称。
如果查询的名称没有区域信息,则服务器检查它能否通过本地缓存的先前查询信息来即席名称。如果从中发现匹配的信息,则服务器使用它应答查询。接着,如果首选服务器可使用来自其缓存的肯定匹配响应来应答发出请求的客户机,则此次查询完成。
如果查询名称在首选服务器中未发现来自其他DNS服务器的支持,以帮助解析名称。在默认情况下,DNS客户服务要求服务器在返回应答前使用递归过程来代表客户机完全解析名称。在大多数情况下,DNS服务器的默认配置支持递归过程。
为了使DNS服务器正确执行,首先需要在DNS域名空间内存放其他DNS服务器的一些有用的联系信息。该信息以根线索的形式提供,它是记录初步资源的一个列表,可用来定位一些DNS服务器,这些服务器对DNS域名空间树的根具有绝对控制权。根服务器对DNS域名空间树中的根域和顶级域具有绝对控制权。DNS服务器可通过使用根线索搜索根服务器来完成递归过程。
例如,当客户机查询单个DNS服务器时,考虑使用递归过程来定位名称HOST.EXAMPLE.MICROSOFT.COM。此过程在DNS服务器和客户机首次启动,并且没有可帮助解析名称查询的当地缓存信息时进行。
首先,首选服务器分析全名并确定对于顶级域COM具有绝对控制权的服务器的位置。随后,对COM DNS服务器使用迭代查询,以获取MICROSOFT.COM服务器的参考信息。然后,参考性应答从MICROSOFT.COM服务器传送到EXAMPLE.MICROSOFT.COM的DNS服务器。最后,与服务器EXAMPLE.MICROSOFT.COM联系上。因为该服务器包括作为其配置区域一部分的查询名称,所以,它向启动递归的源服务器作出权威性的应答。当源服务器接收到表明已获得对请求查询的权威性应答的响应时,它将此应答转发给发出请求的客户机,这样,递归查询过程就完成了。

 

 

   DNS 系统解析过程概述
  DNS(Domain Name Servive,域名服务)是Internet/Intranet中最基础也是非常重要的一项服务,提供了网络访问中域名到IP地址的自动转换。我们知道,Inetrnet上的主机成千上万,并且还在随时不断增加,不可能由一个或几个DNS服务器能够实现这样的解析过程,传统主机表(hosts)方式更无法胜任,事实上DNS依靠一个分布式数据库系统对网络中主机域名进行解析,并及时地将新主机的信息传播给网络中的其它相关部分,因而给网络维护及扩充带来了极大的方便。
  DNS提供的服务就是要将人们所熟悉的名字映射成IP地址。一般有两种机制来完成,一种是有主机表来完成,另一种是采用域名服务的守护进程(named , 或 in.namd)来实现。这两种方式都能实现域名与IP之间的互相映射。
目前的IP地址与域名由谁分配?Internet的最高层域名由Internet网络协会负责网络地址分配的委员会进行登记和管理,它还为Internet的每一台主机分配唯一的IP地址。全世界现有3个大的网络信息中心:
INTER NIC 负责美国及其它地区
RIPE-NIC 负责欧洲地区
APNIC 负责亚太地区

DNS 层次结构
DNS是一个很复杂的概念,在了解DNS结构之前,让我们先掌握一些有关DNS 的一些常用术语。
表1列出了常用的DNS术语。

术语 说明
域 代表网络一部分的逻辑实体或组织
域名 主机名的一部分,它代表包含这个主机的域。它可以和域交换使用
主机 网络上的一台计算机
节点 网络上的一台计算机
域名服务器 提供DNS服务的计算机,它将DNS名字转化为IP地址
解析 把一个DNS服务器转化为与其相映的IP地址的过程
解析器 从域名服务器中提取DNS信息的程序或库子程序
反向解析 将给出的IP地址转化为其相映的DNS名字
欺骗 使网络看上去好象具有不同的IP地址或域名的行为
表1 常用DNS术语
  好了,掌握了上面的一些术语以后,让我来介绍一下DNS的层次结构,以便能让大家更深刻的认识DNS的整个体系结构和了解DNS 系统的解析过程。 DNS实际上是一个分布式的数据库系统,它是有层次结构的系统,DNS并没有一张保存着所有的主机信息的主机表,相反,这些信息是存放在许多分布式的域名服务器中,这些域名服务器组成一个层次结构的系统,顶层是一个根域(root domain),它使用符号点号" . "来表示。其实,域的概念和我们地理上的行政区域管理的概念是类似地,一个国家行政机构包括中央政府,(就相当于根域)和各个省份的省政府(第一级域名),省政府之下又包括许多市政府(第二级域名),市政府之下包括许多县政府(第三级域名),等等依次类推,每一个下级子域都是上级域的子域。每个域都有自己一组的域名服务器,这些服务器中保存着当前域的主机信息和下级子域的域名服务器信息。例如根域服务器不必知道根域内所有主机的信息,它只要知道所有子域的域名服务器的地址即可。
图2表示了域名的层次结构:

图 2 DNS的 层次结构  
  在图2中包括了地理域和机构域两种类型,其中地理域是以中国为例说明的,机构域是以com举例说明的。如上图所示,www.china-pub.com 标明了Internet上的一个主机,com是一级域,china-pub是二级域,www,mail,dns都是主机名,用以标明主机的服务类型。这个例子就形象的说明了域名系统的层次结构和分层管理机制。
第一层域(即顶级域名)一般有两种类型,一种是地理域,另一种是机构域,地理域是通过地理区域来划分域名,例如中国的地理域名是CN,日本是JP,香港是HK,美国一般不使用地理域名;机构域是根据注册的机构类型来分类。
常用机构类的顶级域名为:
域名 机构的类型
.GOV 政府机构
.EDU 教育机构
.INT 国际组织(如北大西洋公约组织NATO)
.MIL 军事部门
.COM 商业机构
.NET 网络中心
.ORG 社会组织、专业协会
表3
  尽管机构名称不能告诉用户有关系统物理地点的情况,但大多数使用机构名称的系统都属于美国,不过现在有些域名(如.COM、.NET和.ORG)已可供全球申请使用。
其它机构类新型顶级域名:
域名 机构的类型
.FIRM 商业或公司
.STORE 提供购买商品的业务部门
.WEB 主要活动和WWW有关的实体
.ARTS 以文化性娱乐活动为主的活动
.REC 以消遣性娱乐活动为主的实体
.INFU 提供信息服务的实体
.NOM 有针对性的个人或人员的命名
表4
  (以上7个域名是Internet 国际特别委员会IAHC于1997年2月4日最新扩充的机构域名)
下面的表5中列举了一些普及地理类顶级域名:
域名 国家或地区 域名 国家或地区 域名 国家或地区 域名 国家或地区
.am 亚美尼亚 .aq 南极洲 .ar 阿根廷 .au 澳大利亚
.bb 巴巴多斯 .be 比利时 .bg 保加利亚 .ca 加拿大
.ch 瑞士 .cl 智利 .cn 中国 .cr 哥斯达黎加
.cy 塞浦路斯 .de 德国 .dk 丹麦 .ec 埃及
.eg 萨尔瓦多 .es 西班牙 .fi 芬兰 .gb 英国(官方)
.gr 希腊 .hk 香港 .hu 匈牙利 .ie 爱尔兰
.il 以色列 .in 印度 .ir 伊朗 .it 意大利
.jm 牙买加 .jp 日本 .kr 韩国 .lt 立陶宛
.lu 卢森保 .mo 澳门 .mx 墨西哥 .ni 尼加拉瓜
.nl 荷兰 .no 挪威 .nz 新西兰 .pe 贝卢
.ph 菲律宾 .pl 波兰 .pt 葡萄牙 .ru 俄国
.se 瑞典 .sg 新加坡 .si 斯洛文尼亚 .th 泰国
.tn 突尼斯 .tr 土耳其 .tw 台湾 .us 美国
.uk 英国(通用 .ve 委内瑞拉 .vn 越南 .zm 赞比亚
表5
DNS解析过程及原理
  在上面介绍了域的概念和域的层次结构之后,就可以进一步了解DNS的工作原理和过程了,DNS的工作原理及过程分下面几个步骤:
  第一步:客户机提出域名解析请求,并将该请求发送给本地的域名服务器。
  第二步:当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回。
  第三步:如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址。
  第四步:本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址。
  第五步:重复第四步,直到找到正确的纪录。
  第六步:本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户机。

  让我们举一个例子来详细说明解析域名的过程.假设我们的客户机如果想要访问站点:www.linejet.com , 此客户本地的域名服务器是dns.company.com , 一个根域名服务器是NS.INTER.NET , 所要访问的网站的域名服务器是dns.linejet.com,域名解析的过程如下所示:
 (1)客户机发出请求解析域名www.linejet.com的报文
 (2)本地的域名服务器收到请求后, 查询本地缓存, 假设没有该纪录, 则本地域名服务器dns.company.com则向根域名服务器NS.INTER.NET发出请求解析域名www.linejet.com
 (3)根域名服务器NS.INTER.NET收到请求后查询本地记录得到如下结果:linejet.com NS dns.linejet.com (表示linejet.com域中的域名服务器为:dns.linejet.com ), 同时给出dns.linejet.com的地址,并将结果返回给域名服务器dns.company.com。
 (4)域名服务器dns.company.com 收到回应后,再发出请求解析域名www.linejet.com的报文。
 (5)域名服务器 dns.linejet.com收到请求后,开始查询本地的记录,找到如下一条记录: www.linejet.com A 211.120.3.12 (表示linejet.com域中域名服务器dns.linejet.com的IP地址为:211.120.3.12),并将结果返回给客户本地域名服务器dns.company.com。
 (6)客户本地域名服务器将返回的结果保存到本地缓存,同时将结果返回给客户机。
这样就完成了一次域名解析过程,

小结
DNS是一个很复杂的概念,在我们动手搭建和配置DNS系统之前,一定要好好了解DNS 系统解析过程,这样才能不会一头雾水,只知道如何配置,却不知道为什么这样配置。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值