目录
一、理论
1. DNS系统
(1)域名系统
(2)域名服务器
(3)作用
DNS英文全称Domain Name System,它是域名系统,在网络中的作用就是维护着一个地址数据库,其中记录了各种主机域名与IP地址的对应关系,以便为客户程序提供正向或反向的地址查询服务,及正向解析与反向解析:
① 正向解析:将指定的域名解析为相应的IP地址
② 反向解析:将指定的IP地址解析为相对应的域名。
(4)类型
① 缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但是没有自己控制的区域地址数据。
② 主域名服务器:维护某一个特定DNS区域的地址数据库,对其中的解析记录具有自主控制权,是指定区域中唯一存在的权威服务器、官方服务器。
③ 从域名服务器:与主域名服务器提供完全相同的DNS解析服务,通常用于服务器,拆卸你的结果都是一样的。
2. 查询类别
① 迭代查询:本地服务器向其他服务器查询,查询源不变查询目标一直在变,需要多次查询,需要自己动手。
② 递归查询:客户机和本地服务器之间的,对已有服务器依次发送,A可以解析则返回,不能则递归到下一台直到成功或全部都失败返回结果,不需要动手。
3. DNS服务器查询过程
(1)过程:
① 首先查询本机缓存,有则返回结果,没有则进行下一步;
② 查询本机hosts文件,有则返回结果,没有则进行下一步;
③ 查询dns域名服务器,如果是本地服务器有缓存直接返回,没有则进行下一步;
④ 求助根服务器,根服务器求助顶级服务器--顶级求助二级服务器,如果二级发现是自己主机则返回结果给-本地域名解析服务器返回结果。
(2)总结:
① 客户端-本地DNS服务端:这部分属于递归查询;
② 本地DNS服务端---外网:这部分属于迭代查询;
③ 递归查询时,返回的结果只有两种:查询成功或查询失败;
④ 迭代查询,又称作重指引,返回的是最佳的查询点或者主机地址。
4.hosts文件
hosts文件:优先级最高,只对当前主机有效,可减少dns查询过程从而加快访问速度。
表1 hosts文件位置
系统 | hosts文件位置 |
Linux系统 | /etc/hosts |
Windows系统 | c:Windows\System32\drivers\etc\hosts |
5.主服务器配置文件
① 主配置文件位置:/etc/named.conf
② 区域配置文件位置:/etc/named.rfc1912.zones
③ 区域数据配置文件模板位置:/var/named/named.localhost
二、实验
1.主备DNS服务器(2台服务器都正常)
(1)搭建环境
2台centos 7.4虚拟机,ip地址在同一网段192.168.204.50(主)和192.168.204.200(备用),关闭防火墙和selinux
(2)检查安装DNS服务
检查是否安装dns服务
安装dns服务
(3)修改主服务器配置文件
(4)修改区域配置文件
(5)制作区域数据配置文件
进入目录保留权限复制
编辑文件
(6)修改备服务器配置文件
编辑文件
(7)修改备服务器区域数据配置文件
(8)启动服务
开启主备服务器的dns服务并查看备服务器中是否已同步主服务器的区域数据配置文件
主备均需执行:
(9)DNS服务器配置文件
首先将主服务和备服务器的ip地址都加到各自的dns服务器配置文件(/etc/resolve.conf)中,注意主服务器必须在备服务器上方,如果有公网的dns服务器则需要将本地服务器放在公网服务器上方。读取/etc/resolve.conf文件的顺序是从上到下,可以解析则停止。
主备均执行:
主服务器地址为192.168.204.50,备服务器地址为192.168.204.200
(10)验证结果
主服务器测试正向解析
主服务器测试反向解析
备服务器测试正向解析
备服务器测试反向解析
2.主备DNS服务器(1台主服务器关闭)
继续实验1
(1)关闭主服务器DNS服务
(2)备用服务器测试生效
备用服务器正向解析
备用服务器反向解析
(3)备用服务器slaves目录生成jjw.com文件
3.问题
(1)首先判断主备服务防火墙和selinux是否都已经关闭
(2)查看主备服务器中/etc/resolv.conf是否添加主备服务器地址且主服务器在最上方
(3)查看主配置文件中网段范围是否在本机范围内
(4)查看区域配置文件中配置是否有问题,重点查看file中写的文件名是否与区域数据配置文件创建的一致
(5)查看区域配置文件是否有配置错误或不对应,重点查看是否都有写根域 .不能遗忘 .根域。
(6)如果配置文件都没问题启动服务报错,实时查看/var/log/messages日志的报错。
日志显示区域配置文件在47、49、54行反括号前缺少分号;