1、配置yum源、挂载、安装bind包
[root@localhost ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.5 (Maipo)
[root@localhost ~]# vim /etc/yum.repos.d/base.repo
[base]
name=base
baseurl=file:///mnt
gpgcheck=0
enable=1
[root@localhost ~]# mount /dev/sr0 /mnt/
[root@localhost ~]# yum install bind -y
提供dns服务的套件叫bind但执行服务名称的是named
2、关闭防火墙、selinux
ocalhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0
3、配置主配置文件
[root@localhost ~]# vim /etc/named.conf
options {
listen-on port 53 { 192.168.218.100; };
directory "/var/named";
};
zone "haha.com." IN {
type master;
file "named.haha.com.";
};
=======================================================================================
区域类型:
主区域:主DNS,master
从区域:从DNS,slave
缓存区域:hint,在找不到相关信息的时候去从根查找,标识根的地址
转发区域:forward,转发到指定区域,而不指向根
4、配置具体信息
[root@localhost ~]# vim /var/named/named.haha.com.
$TTL 1D
@ IN SOA @ zhang.haha.com. (
2019080301 #时间、编号
1D #检查间隔时间、主被同步周期时间
1H #重试时间、当同步失败后,在1h之内进行重试
1H #过期时间、充实结束后,1h之内丢弃
3H ) #否定缓存时间、当被访问服务器中不存在的域名信息时,将此条信息保存,等到下次被访问时,直接回复不知道,不需要再次查表
IN NS ns.haha.com.
ns IN A 192.168.218.100
www IN A 192.168.218.100
a IN A 192.168.218.128
=======================================================================================
owner-name :@
TTL :资源记录生存时间
INTERNET :IN
NS :将自己的域名映射到DNS ,将域名最终映射到那一台主机(由那一台主机去解析当前所定义的域主机)
A :(IPV4地址记录)资源记录将主机名映射到IPV4地址
CNAME :(规范名称) 域名的别名
MX :邮件交换记录
PTR:(指针记录) 将IPV4和IPV6地址映射到主机名(用于反向DNS)
AAAA :(IPV6地址记录)资源记录将主机名映射到IPV6地址上
5、重启服务
[root@localhost ~]# systemctl restart named.service
6、详情解释
DNS在53端口上监听请求并提供响应的服务。出于性能的考虑,DNS查询请求用UDP协议交互并且每个请求的大小小于512字节,但是如果返回的请求大小大于512字节,交互双方会协商使用TCP协议。
/etc/named.conf #主配置文件
/etc/rndc.conf #相关配置文件
/var/named/zidingyi.zone. #区域数据文件,需要手动创建 (/var/named/named.haha.com.)
/usr/sbin/named-checkconf #配置检查脚本工具
/usr/sbin/named-checkzone #区域配置检查工具