自强不息厚德载物第二单元DNS学习目的•掌握DNS服务器的安装•掌握DNS服务器的配置(主DNS,辅DNS,转发服务器)•了解DNS工作原理DNS•DNS:DomainNameService/域名服务•支持将计算机的域名解析成IP地址(正向搜索)•支持将IP地址解析成计算机的域名(反向搜索)•允许计算机根据逻辑组合成一个一个名字域区、域及授权•一个域(domain)包含一个完整的分级域名下层树•一个区(zone)则是域的一部分,被一个具体详细的服务器所管理•子域可以被授权成为附加的域•一个区可以直接管理子域英特网上的分级DNS•根域名服务器–作为区认证域名服务器的最高级别域名服务器存在–为递归查询提供权威解释•区认证域名服务器–区的划分与认证–主域名服务器与从域名服务器主域和从域•主域服务器–拥有一个域的主复制数据•从域服务器–为主服务器提供自动数据备份–每一个从服务器都会自动从主服务器处同步更新数据客户端DNS•客户端产生对IP与主机名解析的需求,通常DNS客户端上有许多程序运行时需要解析•客户端检索本地数据文件的相关记录•客户端将无法自行解释的需求,通过53端口送给指定的DNS服务器•收回的数据也许并不权威服务端DNS•服务端接受请求•如果自己无法给出回答,则可能将请求转发给上级服务器,或直接询问根域名服务器•其上级服务器有可能给出回答,或进一步转交给其他域名服务器•一个服务器上可以记录多个域的数据BIND•BIND:BerkeleyInternetNameDaemon•BIND是在Internet上应用最为广泛的DNS服务器•提供稳定与可信赖的下层结构以提供域名与IP地址的转换BIND服务一览•后台进程:named•脚本:/etc/rc.d/init.d/named•使用端口:53(tcp,udp)•所需RPM包:bind,bind-utils•相关RPM包:bindconf,caching-nameserver•配置文件:/etc/named.conf•相关路径:/var/named/*/etc/sysconfig/named•named进程被SystemV脚本激活后,会根据此文件的参数决定其运行参数:•例如:OPTION=“-d5”(将debug等级设为5)/etc/named.conf•named.conf是BIND使用的默认配置文件•在每一次named启动与挂起时都会被读取•一个简单的文本文件,其中记录的可以包括options(全局参数)、zone(区域定义)、accesscontrollists(访问控制列表)等option•在/etc/named.conf的options段中被宣告•常用的参数包括–directory:指定zonefile的存放位置–forwarders:指定其上级域名服务器–allow-query:指定允许向其提交请求的客户–allow-transfer:指定允许复制zone数据的主机主域•由一个zone段在/etc/named.conf中宣告•typemaster;•file:存放该zone数据的文件名–必须存在于options段中提及的目录之下–文件名可以随意•allow-update:允许动态更新该zone数据的客户机从域•由一个zone段在/etc/named.conf中宣告•typeslave;•master:指定其主域名服务器–对应的主域名服务器必须承认并存放有该区域的数据•file:本地用于存放zone数据的文件•从域名服务器总是试图与其master联系并获取一份当前数据的副本反解析域•域的名字必须用.in-addr.arpa来结尾•由一个zone段在/etc/named.conf中宣告•反解析域一般对应到一个具体的IP段•反解析域同样可以配置为从域•许多服务会尝试进行反解析根域•根域“.”zone.IN{typehint;filenamed.ca;};zone文件•文件通常存放在/var/named目录下•用于存放指定域内的各种资源与数据•第一段资源记录被成为起始授权记录(SOA)•每一个在/etc/named.conf中定义的zone都应该对应一个具体的zone文件资源记录•SOA:定义起始授权•NS:指定域名服务器•MX:指定邮件服务器•A:将一个域名解析成其后的IP•CNAME:将一个域名设置为另一个域名的别名•PTR:将一个IP地址指向一个域名SOA记录•SOA(StartofAuthority):起始授权•每一个域文件中都应该有一个SOA段@INSOAlocalhost.root.localhost.(1997022700;Serial28800;Refresh14400;Retry3600000;Expire86400);MinimumNS记录•NS(nameserver):域名服务器•每一个主域名服务器和从域名服务器都应该拥有一条NS记录,以防止主服务器在出现故障后,从服务器不能及时提供服务@INNSlocalhost.example.com.example.comINNSlocalhost.example.com.资源记录•A记录–用于将主机名对应成IP地址•CNAME记录–用于定义某一个地址的别名•PTR记录–用于将IP地址对应成一个主机名MX与HINFO记录•MX:用于定义某一个域里负责的邮件服务器–每一条MX记录前都需要指定优先级别example.comINMX5mail•HINFO记录提供解析时对一台主机做补充注释localhostINHINFOmasterserverRoundRobin•利用复数A记录来均衡数台服务器的访问负载•域名服务器控制程序•安全防范,远程控制运行的域名服务器•使用TSIG安全•例如:[root@localhostroot]#rndcreload•rndc默认只监听本地loopback端口BIND语法检查工具•在BIND出错时使用如下工具:named-checkconf默认检查的配置文件是/etc/named.comfnamed-checkzone检查一个Zone文件的配置redhat-config-bind•图形界面下的BIND配置工具•简单清晰地完成BIND配置•可对应多个版本的BIND•配置文件存放在/etc/alchemist/namespace/dns/local.adl