构建主从域名服务器
环境准备:
1.centos7.4系统
2.三台虚拟机(一个主服务器,一个从服务器,一个客户端)
/etc/named.conf 主配置文件 控制系统全局
/etc/named.rfc1912.zones 区域配置文件 控制具体单个区域
/var/named/named.localhost 区域数据配置文件 区域信息
关闭防火墙–设置开机关闭–内核防护也需要关闭;
systemctl stop firewalld
systemctl disable firewalld
vi /etc/selinux/config
安装所需要的四个软件包
yum -y install bind bind-utils bind-libs bind-chroot
Bind ##提供了域名服务的主要程序
bind-chroot ##为了BIND服务提供一个伪装的目录
bind-utils ##提供了对DNS服务器测试的工具“nslookup”
主域名服务器配置
修改主配置文件/etc/named.conf
vi /etc/named.conf
options {
listen-on port 53 { any; }; #监听地址与端口号。tcp连接udp解析
listen-on-v6 port 53 { ::1; };
forwarders { 8.8.8.8; 114.114.114.114; };
directory "/var/named"; #工作目录
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; }; #允许哪些主机来进行域名解析
修改正反区域配置文件
vi /etc/named.rfc1912.zones
#正向解析区域:
zone "bdqn.com" IN {
type master;
file "bdqn.com.zone"; #区域数据文件,需要在主配置文件里面配置的工作目录下
allow-transfer { 20.0.0.166; }; #允许20.0.0.166主机同步
also-notify { 20.0.0.166; };
};
#反向解析区域:
zone "0.0.20.in-addr.arpa" IN {
type master;
file "20.0.0.arpa";
allow-transfer { 20.0.0.166; };
also-notify { 20.0.0.166; };
};
添加文件bdqn.com.zone和20.0.0.arpa
cp -p /etc/named.localhost bdqn.com.zone #复制区域数据配置模板
vi /var/named/bdqn.com.zone #正向解析区域数据文件
$TTL 1D
@ IN SOA bdqn.com. admin.bdqn.com. (
\# bdqn.com表示需要解析的域名,后面要有点 admin.bdqn.com管理员邮箱,@用.代替,因为此处@是一个变量
0 #序列号,每次修改,序列号增1,从服务器就是根据此序列号来同步的
1D #同步时间
1H #重试间隔
1W #超过此时间还是没同步上,就放弃同步
3H ) #失效时间
NS bdqn.com.
A 20.0.0.44 #bdqn.com解析为20.0.0.44
www IN A 20.0.0.55 #www.bdqn.com解析为20.0.0.55
ftp IN A 20.0.0.66 #ftp.bdqn.com解析为20.0.0.66
mail IN CNAME www #mail.bddqn.com与www.bdqn.com一样,相对于别名
\# @ 是一个变量 是区域配置文件中zone "bdqn.com" IN { 的“”内的内容bdqn.com
vi /var/named/20.0.0.arpa ##反向解析区域数据文件
$TTL 1D
@ IN SOA bdqn.com. admin.bdqn.com. (
1
1D
1H
1W
3H )
NS bdqn.com.
A 20.0.0.44 #20.0.0.44解析为bdqn.com
55 IN PTR www.bdqn.com. #20.0.0.55解析为www.bdqn.com
66 IN PTR ftp.bdqn.com.
77 IN PTR bbs.bdqn.com.
检验配置文件语法
named-checkconf -z /etc/named.conf #检查配置文件的语法
重启服务named
systemctl restart named
配置从域名服务器
同主服务器操作流程基本一样;
vi /etc/named.conf
options {
listen-on port 53 { 20.0.0.166; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; };
vi /etc/named.rfc1912.zones
\#正向区域:
zone "bdqn.com" IN {
type slave;
masters { 20.0.0.128; };
also-notify { 20.0.0.128; };
file "slaves/bdqn.com.zone";
};
\#反向区域:
zone "0.0.20. in-addr.arpa" IN {
type slave;
masters { 20.0.0.128; };
also-notify { 20.0.0.128; };
file "slaves/20.0.0.arpa";
};
重启服务named
systemctl restart named
客户端测试
添加映射nameserver 20.0.0.128主服务器
vi /etc/resolv.con
nameserver 20.0.0.128
nslookup测试工具正向,反向测试
正向解析:
[root@localhost ~]# nslookup ftp.bdqn.com
Server: 20.0.0.128
Address: 20.0.0.128#53
Name: ftp.bdqn.com
Address: 20.0.0.66
[root@localhost ~]# nslookup www.bdqn.com
Server: 20.0.0.128
Address: 20.0.0.128#53
Name: www.bdqn.com
Address: 20.0.0.55
反向解析:
[root@localhost ~]# nslookup 20.0.0.55
Server: 20.0.0.128
Address: 20.0.0.128#53
55.0.0.20.in-addr.arpa name = www.bdqn.com.
[root@localhost ~]# nslookup 20.0.0.66
Server: 20.0.0.128
Address: 20.0.0.128#53
66.0.0.20.in-addr.arpa name = ftp.bdqn.com.
[root@localhost ~]# nslookup 20.0.0.77
Server: 20.0.0.128
Address: 20.0.0.128#53
77.0.0.20.in-addr.arpa name = bbs.bdqn.com.