




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,第12章DNS服务器,域名系统简介DNS服务器的安装与配置DNS服务器的配置实例,.,教学提示:DNS服务器是把域名解析成IP地址的域名解析系统,Linux下的域名服务器软件包是BIND。本章涉及的内容主要有域名解析系统原理,DNS服务器安装与运行控制,各种DNS服务器配置。教学要求:学习完本章后,将了解域名解析系统原理,能够在UbuntuLinux系统安装与运行BIND软件,针对实际情况配置各种类型DNS服务器。,.,域名系统简介,在Internet中,对主机进行标识的方式是使用IP地址,源主机只有知道目的主机的IP地址才有可能进行通信。但是Internet当中的IP地址的数量非常大,我们记住所有要访问的主机的IP地址是很困难的,那么如何解决这个问题呢?我们可以给计算机起个“名字”,这就好比是记一个人的名字要比记住他的身份证号码要容易得多,如果名字还遵循一定的规律那就更好记了。Internet中对主机名有一套进行统一命名的方式,称为“域名”系统,.,计算机域名和它的IP地址之间建立一定的映射关系,让这个映射的解析过程由计算机系统自动完成。我们把在Internet中对计算机进行标识的“名字”称为计算机“域名”,负责解析计算机域名的系统称为“域名系统DNS”(domainnamesystem)。它的工作原理可用图来简单表示。,.,Internet域名层次结构,由于Internet当中主机数量巨大,全世界采用一台域名服务器进行解析是不现实的。因此,Internet中的域名系统采用一种层次结构,域名就是“唯一的层次结构的名字”。这里所说的“域”,是指层次化名字空间中的一个可被管理的区域,例如,“Ubuntu中文”的域名就是。这里的“cn”表示的是“中国内地地区”,“com”表示的是商业机构,“ubuntu”是Ubuntu官方自己注册的域名,“www”则是这个域当中的一台主机。全球的域名系统组成一颗倒立的树型结构,如图所示。,.,用域名服务器进行域名解析,任何一台主机,要想获得Internet的域名服务,必须为自己指定一个域名服务器的IP地址。然后,当该主机想解析域名时,就把域名解析的请求发送给该服务器,由该服务器完成解析过程。当域名服务器收到查询请求时,首先检查该名字是否在自己的管理域内,如果在,根据本地数据库中的对应关系将结果发回给源主机。如果查询的内容不在自己的管理域内,一般说来,有两种解析方法。1迭代查询(interactiveresolution)该域名服务器不能提供解析的最终结果,它产生的回答指明了客户机应当联系的另外一台域名服务器的地址。一般另外的服务器就是该域的上级域名服务器地址(当然也可以是其他的服务器),这需要由管理员在该服务器中通过配置完成。,.,用域名服务器进行域名解析,2递归查询(recursiveresolution)该域名服务器和能够解析该名字的服务器联系,直到解析完成,然后将最终解析的结果返回给客户机。任何一台域名服务器必须知道根域名服务器的地址,这样就能保证在递归查询中一定可以找到另外的域名服务器。,.,用域名服务器进行域名解析,例:域名解析过程。假设客户机要访问“Ubuntu英文”站点:,图13.2是域名解析过程示意图,过程如下:客户机向本地DNS服务器发出请求解析域名的报文;本地的DNS服务器收到请求后,查询本地缓存,假设没有该纪录,则本地DNS服务器则向根域名服务器发出请求解析域名;根域名服务器收到请求后查询根服务器记录,得到cn域的DNS服务器地址并把结果返回给本地DNS服务器;本地DNS服务器收到回应后,接着向cn域的DNS服务器发出请求解析域名的报文;cn域的DNS服务器收到请求后查询自身服务器记录,得到域的DNS服务器地址并把结果返回给本地服务器;依次类推,本地DNS服务器从域名服务器得到的IP地址。本地DNS服务器将返回的结果保存到本地缓存,同时将结果返回给客户机。这样就完成了一次域名解析过程。,.,DNS区域(Zone),为了便于根据实际情况来分散域名管理工作的负荷,将DNS域名空间划分为区域来进行管理。区域是DNS服务器的管辖范围,是由单个域或由具有上下隶属关系的紧密相邻的多个子域组成的一个管理单位。DNS服务器便是以区域为单位来管理域名空间的,而不是以域为单位。一台DNS服务器可以管理一个或多个区域,而一个区域也可以有多台DNS服务器来管理。DNS允许DNS名域空间分成几个区域(Zone),它存储着有关一个或多个DNS域的名称信息。在DNS服务器中必须先建立区域,再在区域中建立子域,以及在区域或子域中添加主机等各种记录。DNS区域有两种,正向区域与反向区域。,.,反向地址解析,我们除了需要将域名翻译成IP地址之外,有时候还需要将IP地址解析成对应的域名,这就是所说的反向地址解析。这样做往往是因为特殊的需要,例如,我们需要限制来自某些主机对我们的访问,但是不知道这些主机的具体地址范围,只知道他们的域名后缀,这个时候就可以直接使用域名了。当一台主机到来的时候,我们的主机依据其携带的主机地址信息通过反向地址解析查看其域名是否是在我们应该限制的范围,从而做出判断。当然,随着时间的推移,这方面的应用越来越少,在很多系统中已经不再建立反向地址解析记录。,.,域名服务器分类,常见的域名服务器主要有:主服务器、辅助服务器、高速缓存系统和转发域名服务器。另外,依据授权性质分为两大类:1权威性服务器权威性服务器是一个区域的正式代表。主域名服务器(PrimaryNameServer)是区域数据的最根本的来源,是从本地硬盘文件中读取域的数据的,它是所有辅域名服务器进行域传输的源。主服务器对域中的域名有最高授权,并因为它们是域区间传送域区数据的唯一来源,就具有向任何一个甚至全部需要其数据的服务器发布域的信息的功能,因此也叫“管理服务器”。通常每个区都至少有一个主域名服务器,主域名服务器在DNS服务器配置文件/etc/bind/named.conf中由“znoe”语句中的“typemaster”变量来定义。辅域名服务器(SecondaryNameServer)通过“区域传输(zonetransfer)”从主服务器复制区数据,辅域名服务器可以提供必需的冗余服务。所有的辅域名服务器都应该写在这个域的NS记录中。残根域名服务器(StubNameServer)与辅域名服务器类似,但只复制NS记录而不复制主机数据。秘密域名服务器(StealthNameServer)并没有列在这个域的NS记录里,仅对于知道其IP地址的人可见。,.,域名服务器分类,2非权威性服务器非权威性服务器用本地缓存数据应答查询请求,不知数据是否仍然有效。惟高速缓存服务器(Caching-onlyServer)可以将它收到的信息存储下来,并再将其提供给其它的用户进行查询,直到这些信息过期。它的配置中没有任何本地的授权域的配置信息。其实惟高速缓存服务器从下面将解析的“根数据文件”加载一些根服务器的地址,并缓存这些由根服务器解析的结果并不断累计。转发服务器(ForwardingServer)代替众多客户执行查询并创建一个大的缓存。与缓存服务器区别是缓存服务器本身不能进行完全的递归查询,而转发服务器能从缓存向其它的缓存服务器转发一部分或是所有不能满足的查询。,.,安装DNS服务器,BIND的全称是BerkeleyInternetNameDomain,是美国加利福尼亚大学伯克利分校开发的一个域名服务器软件包,这是目前最为流行的DNS协议实现。Ubuntu提供了当前最新的BIND9,使用如下命令安装BIND及其相关工具:studentUbuntu:$sudoapt-getinstallbind9bind9-docbind9-hostdnsutils其中bind9是主要的软件包,bind9-doc是帮助文档,bind9-host与dnsutils是DNS测试工具。,.,DNS配置文件,1BIND主要配置文件Ubuntu中BIND9的配置文件存放在/etc/bind目录下。,.,2DNS服务器相关配置文件,要保证DNS服务器正常运行,除了配置BIND相关配置文件外,还要保证本机的各项TCP/IP参数的设置正确,否则即使BIND配置成功,DNS服务器也可能无法正常工作。首先在保证网络参数配置成功,其它相关配置文件如下。(1)/etc/resolv.conf文件。文件/etc/resolv.conf列出了主机应该查询的DNS服务器。,.,(2)/etc/host.conf文件,文件/etc/host.conf是用来控制本地DNS解析器的设置文件。该文件告诉本地DNS解析器使用哪些服务以及按照什么顺序进行查询。,.,UbuntuDNS默认配置,1/etc/bind/named.conf文件(1)named.conf是bind的主配置文件。,.,UbuntuDNS默认配置,1/etc/bind/named.conf文件(1)named.conf是bind的主配置文件。,.,(2)zone语句,zone区域声明是主配置文件中最重要的部分。zone语句的格式为:,.,2/etc/bind/named.conf.options文件,Ubuntu将named.conf的部分语句(主要为options语句)从主配置文件中分离放置于named.conf.options。配置named的全局参数时,可以修改此文件。,.,3/etc/bind/db.local文件,db.local是localhost正向区数据库文件,用于将名字localhost转换为本地回送IP地址。,.,3/etc/bind/db.local文件,(1)SOA资源记录。SOA(StartofAuthority)这是起始授权纪录,表示它后面跟的配置内容是全局有效的。格式如下:,.,3/etc/bind/db.local文件,(2)NS资源记录。NS资源记录用于标识一个区域的权威服务器(包括主服务器和从服务器),并将子域授权赋予其他服务器,其格式如下:zonettlINNShostnameNS:标识区域的域名服务器以及授权子域,其余的字段与SOA记录类似。例:区域的NS资源记录。,.,3/etc/bind/db.local文件,(3)A资源记录。ARR是DNS数据库的核心,它提供了主机名到IP地址的映射。其格式为:hostnamettlINAIPAddress例:区域的A资源记录。ubuntuINAfeistyINA这里ubuntu与feisty采用相对域名,对区域来说实际代表的是.与.这两台主机,因此.的IP地址为。,.,3/etc/bind/db.local文件,(4)CNAME资源记录。CNAMERR用于设置主机的别名。其格式为:nikenamettlINCNAMEhostname例:区域的CNAME资源记录。studyINAwwwINCNAMEubuntu.是.主机的别名,两者表示用一台主机。,.,4/etc/bind/db.127.0文件,db.127.0是localhost反向区数据库文件,用于将本地回送IP地址转换为名字localhost。,.,DNS服务器的运行控制,DNS服务运行控制有两种方式,一种直接对脚本文件/etc/init.d/bind9控制,另一中就是采用rndc(RemoteNameDaemonControl)用于系统管理员控制Bind的运行。如下:(1)启动服务。studentUbuntu:$sudo/etc/init.d/bind9start(2)要停止服务。studentUbuntu:$sudo/etc/init.d/bind9stop(3)要重新启动服务。studentUbuntu:$sudo/etc/init.d/bind9restart(4)除此之外,还可以用下面的命令来停止DNS服务:studentUbuntu:$sudorndcstop(5)要重新加载配置文件,可以用:studentUbuntu:$sudorndcreload(6)显示当前运行的named的状态:studentUbuntu:$sudorndcstatus(7)如果想在Linux系统启动的时候让DNS服务自动启动,可以通过下面的设置实现:studentUbuntu:$sudorcconf在弹出的界面选择bind9即可。如果安装了图形化启动管理工具bum,直接点击“系统”“系统工具”“BootUp-Manger”也可设置开机启动bind9。,.,配置主域名服务器,将配置域的主域名服务器,下面的配置在IP为的计算机上进行,配置步骤如下。1在主配置文件中添加区声明使用如下的命令编辑/etc/bind/named.conf.local。studentUbuntu:$sudovi/etc/bind/named.conf.local添加如下的配置语句:,.,2配置正向解析数据库文件,使用如下的命令编辑/var/cache/bind/.hosts。studentUbuntu:$sudovi/var/cache/bind/.hosts添加如下的配置语句:,.,3配置反向解析数据库文件,使用如下的命令编辑/var/cache/bind/192.168.0.rev。studentUbuntu:$sudovi/var/cache/bind/192.168.0.rev添加如下的配置语句:,.,4检测配置,(1)named-checkconf检测named-checkconf检查named.conf.local文件的语法。studentUbuntu:$sudonamed-checkconf/etc/bind/named.conf.local如果没有输出表示named.conf.local文件语法正确。(2)named-checkzone检测named-checkzone程序检查区域数据文件的合法性。studentUbuntu:$sudonamed-checkzone/var/cache/bind/.hosts,.,5重新加载bind配置文件,studentUbuntu:$sudorndcreload加载bind后主域名服务器就基本配置成功,剩下的就是检测配置结果。,.,DNS服务器诊断工具,DNS服务器配置完后要进行诊断,DNS服务器主要的诊断工具有nslookup、dig和host三种。在Ubuntu中,nslookup和dig是由dnsutils包所安装的程序;host是由bind9-host包所安装的程序。1nslookup工具2dig工具3host工具,.,全局转发器配置,当DNS客户端向指定的DNS服务器要求进行域名解析时,若此域名服务器无法解析,它将用缓存中的信息帮助定位能解析的其他服务器,通常仅仅找到一个根域服务器。为了减少广域网中的通信流
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全生产日历讲解
- 2025版股权转让合同范本
- 2025哺乳期间劳动合同终止协议书
- 2025授权书 房地产授权合同
- 2025年创作课程训练题目及答案
- 二级建造师考试试题及答案
- 2025劳动合同范本与签订注意事项
- 透镜课件教学课件
- 2025云服务器租用合同方案:虚拟主机租赁合同范本
- 2023年注册暖通工程师考试真题及答案
- 2025至2030糖生物学行业调研及市场前景预测评估报告
- 2025年官方兽医答题题库附答案详解(达标题)
- 稻谷与大米全产业链解析
- 生态环境监测机构资质认定补充要求解读
- DB23∕T 2334-2019 装配式混凝土渠道应用技术规范
- 机械装配技术课件
- 班级纪律班会课件
- 防性侵防溺水防校园欺凌主题班会课件
- 粮食商贸公司管理制度
- T/CAPE 12004-2022草酸二甲酯加氢制备乙二醇催化剂
- 水平定向钻进管线铺设工程技术规范
评论
0/150
提交评论