常用环境部署(十八)——CentOS7搭建DNS服务器
一、安装Bind服务器软件并启动
1、安装Bind服务
yum -y install bind bind*
2、 启动服务
systemctl start named
3、开机自启动
systemctl enable named
二、查看named
进程是否正常启动
1、检查进程
ps -eaf|grep named
2、检查监听端口
ss -nult|grep :53
三、关闭防火墙
1、关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
四、DNS服务器相关配置文件
1、修改主要文件/etc/named.conf
vim /etc/named.conf
options {
listen-on port 53 { any; }; # 监听地址和端口;表明DNS服务监听的地址和53号端口,改为全局生效
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";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { any; }; # 允许使用本DNS服务器的网段;允许所有主机访问
recursion yes; # 表明允许本DNS服务器进行递归解析,如果配置缓存服务器,需要将查询转发到其他DNS服务器,就必须设置为yes
dnssec-enable yes; # 用来设置是否启用DNSSEC支持,DNS安全扩展(DNSSEC)提供了验证DNS数据由效性的系统
dnssec-validation no; # 指定在DNS查询过程中是否加密,为了加快效率这里设置为no
forwarders { 114.114.114.114; }; # 新添加,这里设置的是主DNS的IP地址,当本地缓存中没有对应的解析时,将客户机的查询转发到哪些DNS服务器,可以添加多个DNS服务器的地址
/* Path to ISC DLV key */
bindkeys-file "/etc/named.root.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
2、检查配置
检查named.conf是否有语法问题
named-checkconf
3、配置正向解析和反向解析
(1)修改named.rfc1912.zones
文件
vim /etc/named.rfc1912.zones
zone "vsan-nfs.local" IN {
type master;
file "named.vsan-nfs.local";
};
zone "10.20.172.in-addr.arpa" IN {
type master;
file "named.10.20.172";
};
配置文件中的 “区域配置” 部分配置项的含义:
zone "wifite.cn" IN { # 正向“wifite.cn”区域
type master; # 类型为主要区域
file "named.wifite.cn"; # 区域数据文件名为"named.wifite.cn"
allow-update { 172.27.7.130; }; # 允许更新区域信息的主机地址(无备用可默认不配置)
};
zone "0.168.192.in-addr.arpa" IN { # 反向“192.168.0.0/24”区域
type master; # 类型为主要区域
file "named.192.168.0"; # 区域数据文件名为192.168.0.arpa
allow-update { 172.27.7.130; }; # 允许更新区域信息的主机地址(无备用可默认不配置)
};
(2)添加正向解析域配置
a、基于 name.localhost 模板,创建配置文件
cp -p /var/named/named.localhost /var/named/named.vsan-nfs.local
b、配置正向域名解析文件
vim /var/named/named.vsan-nfs.local
c、内容如下(示例配置)
$TTL 1D
@ IN SOA @ rname.invalid. (
102 ; serial
1M ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
nfs1 IN A 172.20.10.90
nfs2 IN A 172.20.10.91
nfs3 IN A 172.20.10.92
注意:
每次修改完主DNS配置后,都需要改一下serial序列号,且必须比从服务器号大,配置内容如下:
$TTL 1D # 有效解析记录的生存周期
@ IN SOA @ rname.invalid. ( # SOA标记、域名、管理邮箱
0 ; serial # 更新序列号,可以说10位以内的整数
1D ; refresh # 刷新时间,重新下载地址数据的间隔
1H ; retry # 重试延时,下载失败后的重试间隔
1W ; expire # 失效时间,超过改时间仍无法下载则放弃下载
3H ) ; minimum # 无效解析记录的生存周期
NS @
A 127.0.0.1
AAAA ::1
mes A 192.168.0.8
以上单位时间为M(分)、H(时)、W(周)、D(天)。
http://nfs1.vsan-nfs.local 会解析为 172.20.10.90
d、授权 named 用户
chown :named /var/named/named.vsan-nfs.local
e、检查区域文件是否正确
named-checkzone "vsan-nfs.local" "/var/named/named.vsan-nfs.local"
(3)添加反向解析域
a、基于 name.localhost 模板,创建配置文件,和主配置文件中指定的文件名一样
cp -p /var/named/named.localhost /var/named/named.10.20.172
b、配置正向域名解析文件
vim /var/named/named.10.20.172
c、内容如下
$TTL 1D
@ IN SOA @ rname.invalid.(
102 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
90 PTR nfs1.vsan-nfs.local.
91 PTR nfs2.vsan-nfs.local.
92 PTR nfs3.vsan-nfs.local.
注意:
要把 “A” 记录换成 “PTR”
d、授权 named 用户
chown :named /var/named/named.10.20.172
e、检查区域文件是否正确
named-checkzone "10.20.172.in-add.arpa" "/var/named/named.10.20.172"
4、重启named服务,让配置生效
(1)所有DNS相关的配置文件进行检查
named-checkconf -z /etc/named.conf
(2)重启服务
systemctl restart named
(3)查看named服务状态
systemctl status named
5、测试
ping vsan-nfs.local
ping nfs1.vsan-nfs.local
ping nfs2.vsan-nfs.local
ping nfs3.vsan-nfs.local
ping 172.10.20.101
ping 172.10.20.90
ping 172.10.20.91
ping 172.10.20.92
---------------------------------------------------------------------------------------------------------------------------------
五、配置备用NDS服务器
yum -y install bind* # 安装bind包
systemctl start named.service # 启动服务
systemctl enable named # 设为开机启动
firewall-cmd --permanent --add-port=53/tcp # 开放TCP53端口
firewall-cmd --permanent --add-port=53/udp # 开放UDP53端口
firewall-cmd --reload # 重新加载防火墙配置,让配置生效
vim /etc/named.conf # 修改配置内容(配置与主DNS服务器配置一致)
vim /etc/named.rfc1912.zones # 编辑该文件,这里的配置和上面的配置不一致
# 正向配置
zone "wifite.cn" IN { # 正向“wifite.cn”区域
type slave; # 状态类型修改为slave
masters { 172.27.7.125;}; # 主DNS服务器的IP地址
file "slaves/slave.hadesr.com"; # 指定同步文件的存放路径
};
# 反向配置
zone "0.168.192.in-addr.arpa" IN { # 反向“192.168.0.0/24”区域
type slave; # 状态类型修改为slave
masters { 172.27.7.125;}; # 主DNS服务器的IP地址
file "slaves/192.168.0-slave"; # 指定同步文件的存放路径
};
# 把下面多余的配置文件删掉或者修改
named-checkconf /etc/named.conf # 检查配置文件是否正确
named-checkconf /etc/named.rfc1912.zones # 检查配置文件是否正确
systemctl restart named # 重新启动服务
ll /var/named/slaves # 然后这个目录下会多出两个文件
yum -y install bind* # 安装bind包
systemctl start named.service # 启动服务
systemctl enable named # 设为开机启动
firewall-cmd --permanent --add-port=53/tcp # 开放TCP53端口
firewall-cmd --permanent --add-port=53/udp # 开放UDP53端口
firewall-cmd --reload # 重新加载防火墙配置,让配置生效
vim /etc/named.conf # 修改配置内容(配置与主DNS服务器配置一致)
vim /etc/named.rfc1912.zones # 编辑该文件,这里的配置和上面的配置不一致
# 正向配置
zone "wifite.cn" IN { # 正向“wifite.cn”区域
type slave; # 状态类型修改为slave
masters { 172.27.7.125;}; # 主DNS服务器的IP地址
file "slaves/slave.hadesr.com"; # 指定同步文件的存放路径
};
# 反向配置
zone "0.168.192.in-addr.arpa" IN { # 反向“192.168.0.0/24”区域
type slave; # 状态类型修改为slave
masters { 172.27.7.125;}; # 主DNS服务器的IP地址
file "slaves/192.168.0-slave"; # 指定同步文件的存放路径
};
# 把下面多余的配置文件删掉或者修改
named-checkconf /etc/named.conf # 检查配置文件是否正确
named-checkconf /etc/named.rfc1912.zones # 检查配置文件是否正确
systemctl restart named # 重新启动服务
ll /var/named/slaves # 然后这个目录下会多出两个文件