实验目的:(需在实验过程中有明显的体现自己的元素)
•理解域名服务器的应用场景;
•掌握BIND的区域数据文件的构造;
•掌握BIND的配置文件的构造;
•配置文件的简写;
•掌握主域名服务器的配置;
•域名服务的检测和管理。
实验过程、步骤(可另附页、使用网络拓扑图等辅助说明)及结果:
DNS是一种用于 TCP/IP 应用程序的分布式数据库,它提供主机名字和I P地址之间的转换及有关电子邮件的选路信息。简单的说DNS 就是进行域名解析的服务器。它是一种分布式网络目录服务,用于域名与 IP 地址的相互转换,以及控制因特网的电子邮件的发送。 DNS 命名方式中,采用了分散和分层的机制来实现域名空间的委派授权,以及域名与地址相转换的授权。通过使用 DNS 的命名方式来为遍布全球的网络设备分配域名,而这则是由分散在世界各地的服务器实现的。命名系统是分层次的,域名树是倒置的,它的根级显示在最上方,分为若干顶级域(.com、.net、.edu、.gov、.org 等,以及 200 多个国家级的顶级域),这些域又被分成二级域,依此类推。它们由各自相应的政府或私有实体管理 DNS工作原理,如图1所示: 图1:DNS的查询原理 例如:在浏览器中输入www.baidu.com域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个ip地址映射,完成域名解析。 /如果hosts里没有这个域名的映射,则会查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析 /如果hosts与本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/IP参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析记过给客户端,完成域名解析,此解析具有权威性。 /如果要查询域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析,此解析不具有权威性。 /如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。这台负责.com域的服务器收到请求后,如果自己无法解析,它就会找一个管理.com域的下一级DNS服务器地址(baidu.com)给本地DNS服务器。当本地DNS服务器收到这个地址后,就会找baidu.com域服务器,重复上面的动作,进行查询,直至找到www.baidu.com主机。 /如果用的是转发模式,此DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析,上一级服务器如果不能解析,或找根DNS或把请求转至上上级,以此循环。不管是本地DNS服务器用是转发,还是根提示,最后都是把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机. 最终根据查询到的IP对Web服务器进行访问 3.了解DNS报文格式,如图2: 图2:DNS总体报文格式 DNS 报文的基础结构部分指的是报文首部,如图3: 图3:DNS报文首部 其中: 事务 ID:DNS 报文的ID标识。对于请求报文和其对应的应答报文,该字段的值是相同的。通过它可以区分 DNS 应答报文是对哪个请求进行响应的。 标志:DNS 报文中的标志字段。 问题计数:DNS 查询请求的数目。 回答资源记录数:DNS 响应的数目。 权威名称服务器计数:权威名称服务器的数目。 附加资源记录数:额外的记录数目(权威名称服务器对应 IP 地址的数目)。事务 ID:DNS 报文的 ID 标识。对于请求报文和其对应的应答报文,该字段的值是相同的。通过它可以区分DNS应答报文是对哪个请求进行响应的。 标志:DNS 报文中的标志字段。 问题计数:DNS 查询请求的数目。 回答资源记录数:DNS 响应的数目。 权威名称服务器计数:权威名称服务器的数目。 附加资源记录数:额外的记录数目(权威名称服务器对应 IP 地址的数目)。
由众多资源记录RR(Resource Record)组成包括: SOA:Start Of Authority(起始授权记录),一个区域解析库有且仅能有一个SOA记录,必须位于解析库的第一条记录。 A:Address(地址记录) FQDN –> IPv4 32bit AAAA: FQDN –> IPv6 128bit=32bit×4 PTR: PoinTeR(域名服务记录) IP –> FQDN NS: Name Server(域名服务记录),一个区域解析库可以有多个NS记录,其中一个为主的。 CNAME:Canonical Name (别名记录) MX: Mail eXchanger(邮件交换器),优先级:0-99,数值越小优先级越高
BIND主要有三类配置文件:BIND的主配置文件、正/反解记录清单文件和正/反解记录文件。 BIND的主配置文件(/var/named/chroot/etc/named.conf)中有BIND的全局设置; 正/反解记录清单文件(/var/named//chroot/etc/named.rfc1912.zones,实际上,在主配置文件named.conf指定了正/反解记录清单文件的位置。)列举了本机解析记录文件的位置/类型/性质; 正/反解记录文件(/var/named/chroot/var/named目录下)记录了具体的IP/域名的对应关系。
在网易的镜像网站下载centos7,并安装虚拟机,如图2所示: 图2.下载完成的centos并安装完图形界面后的效果 |
下载并安装bind,如图3所示: 图3.下载并安装bind 打开named.conf设置全局访问和监听的权限,如图4所示: 图4.配置权限 |
图4.配置权限 打开rfc1912.zones,添加一个命名为xuan.com的主服务器,如图5: 图5.添加一个主服务器 |
创建一个在var/named/文件夹内的xuan.com.zone文件,并修改其中区域数据文件,如图6所示: 图6.配置完成的xuan.com.zone 使用service named start开启服务 修改服务器DNS,并重新连接,如图7所示: 图7.配置DNS 使用nslookup mail.xuan.com查找服务器,如图8所示: 图8.查找的到的结果 |
反向解释 在rfc1912.conf中添加15.16.172.in-addr.arpa,如图9所示: 图9.配置的文件内容 |
创建一个在var/named/文件夹内的172.16.15.zone的文件,并修改其中区域数据文件,如图10所示: 图10.配置的文件内容 重启一下服务后,使用nslookup 172.16.15.5查找域名,如图11所示: 图11.查找得到的域名 |