一、DNS简介
DNS即Domain Name System---域名系统,可以将其理解为域名和IP地址相互映射的一个分布式数据库,能够使用户不用记住能够被机器直接读取的IP地址,而可以直接输入域名网址进行网络访问。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(分为递归查询和迭代查询)。DNS协议运行在UDP协议之上,使用53号端口进行通信。本文将利用Linux系统搭建简单DNS以及区域委派DNS服务,实现DNS域名解析功能。
二、DNS解析过程及相关配置文件
三、搭建简单DNS服务
1、安装bind软件包
2、查找主配置文件和区域文件存放目录
3、设置防火墙允许通过,开启域名服务
4、使用netstat -antp检查域名服务是否开启
5、设置named服务设为开机自启状态
6、配置主域名服务器,域名为edu.cn
编辑主配置文件/etc/named.conf,设定区域
编辑区域文件 /var/named/edu.cn.zone
字段说明:
$TTL(Time To Live,生存时间)记录
SOA(Start Of Authority,授权信息开始)记录
NS域名服务器(Name Server)记录
MX邮件交换(Mail Exchange)记录
A地址(Address)记录,只用在正向解析区域中
CNAME别名(Canonical Name)记录
改变区域文件属主
使用named-checkconf和named-checkzone检查主配置文件和区域文件
重新启动named服务并nslookup验证服务器配置
四、配置区域委派DNS服务
要求:本实验需要两台Linux虚拟机,一台配置上级区域:edu.cn,一台配置下级区域:heuet.edu.cn,并在上级区域中配置委派。
在另一台Linux虚拟机上配置heuet.edu.cn区域(步骤如上)
在上面配置好的简单DNS--edu.cn服务器上配置区域委派
1)使用nslookup检查本机是否能够解析heuet.edu.cn
2)编辑区域文件/var/named/edu.cn.zone,添加粘合记录
3)关闭上级和下级服务器的dnssec(编辑主配置文件)
4)重新启动两台服务器的named服务并使用nslookup检查本机是否能够解析heuet.edu.cn
5)使用nslookup检查下级服务器是否能够解析edu.cn
可以解析,服务搭建完毕!
DNS故障排错
使用命令查看DNS服务是否正常解析
#cat /etc/resolv.conf
#getent hosts example.com
#dig A example.com
#dig example.com
DNS返回码说明(可通过查看日志得到,根据不同返回码进行错误定位)
SERVFALL DNS服务端处理请求出错
NXDOMAIN 没有请求查询的记录
REFUSED DNS服务端拒绝客户端的解析请求
NOERROR