主DNS:www.rj.com 192.168.1.22/24
从DNS:ftp.rj.com 192.168.1.33/24
主DNS配置
- 安装DNS软件包:
#yum install bind bind-utils -y
2. 配置相关配置文件
- /etc/named.conf(为DNS主配置文件,不包含DNS区域数据)
- /etc/named.rfc1912.zones(包含DNS正反向解析区域内容格式)
- /var/named/(目录为DNS数据库文件存放目录,正反向区域解析文件都放在这里)
- /etc/rc.d/init.d/named(为DNS服务的服务脚本
3.添加或修改主配置文件:#vi /etc/named.conf
…
options {
listen-on port 53 { any; }; 监听所有端口
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; }; 允许所有主机访问
allow-transfer { 192.168.1.33; }; 区域传送,只允许从服务器学习的IP 地址,多个IP用分号隔开
notify yes; 开启通知,主服务器更新时通知从服务器
recursion yes; 开启递归查询
…
};
…
添加区域如下:
- 正向区域
zone "dj.com" IN {
type master; 表明为主DNS
file "rj.com.zone"; 保存A记录的文件名(网址和IP 地址映射记录)
allow-update { none; };
};
- 反向区域
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.zone"; 指针记录的文件名
allow-update { none; };
};
include "/etc/named.rfc1912.zones";配置正反向区域可以参照这个路径下的文件
include "/etc/named.root.key";
- 创建正向解析文件和反向解析文件
#cd /var/named
拷贝模板:
#cp -p named.localhost rj.com.zone
#cp -p named.loopback 192.168.1.zone
- 配置A记录和PTR记录
配置/var/named下的rj.com.zone和192.168.1.zone文件
A记录
#vi /var/named/rj.com.zone
$TTL 1D
@ IN SOA rj.com root (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS www.rj.com.
@ IN NS ftp.rj.com. (添加从服务器的NS解析记录)
www IN A 192.168.1.22
ftp IN A 192.168.1.33 (添加从服务器的A记录)
PTR记录
#vi /var/named/rj.com.zone
$TTL 1D
@ IN SOA rj.com root (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS ftp.rj.com. (添加从服务器的NS解析记录)
33 IN PTR ftp.rj.com. (添加从服务器的PTR记录)
注意:
- 进行语法检查:
[root@CentOS7 ~]# named-checkconf
- 重启服务: systemctl restart named.service
- 指定DNS服务器的IP地址:
#vi /etc/resolv.conf
修改内容:
search rj.com
nameserver 192.168.1.22
nslookup
- 测试 host
dig
从DNS配置
- 编辑从服务器的/etc/named.conf文件:#vi /etc/named.conf
…
options {
listen-on port 53 { any; };
allow-query { any; };
recursion yes;
dnssec-enable no;
dnssec-validation no;
…
};
…
添加区域如下:
- 正向区域
zone "dj.com" IN {
type slave; ##表明本机是从服务器
file "slaves/rj.com.zone"; ##将同步后的文件放置在哪里,这里是相对路径,实际路径为/var/named/slaves/rj.com.zone
masters {192.168.1.22; }; ##指定主服务器的ip地址
};
- 反向区域
zone "1.168.192.in-addr.arpa" IN {
type slave; ##表明本机是从服务器
file "slaves/192.168.1.zone";
##将同步后的文件放置在哪里,这里是相对路径,实际路径为/var/named/slaves/192.168.1.zone
masters { 192.168.1.22; }; ##指定主服务器的ip地址
};
include "/etc/named.rfc1912.zones";配置正反向区域可以参照这个路径下的文件
include "/etc/named.root.key";
- 进行语法检查:
[root@CentOS7 ~]# named-checkconf
- 重新启动服务:
[root@CentOS7 ~]# systemctl restart named.service
- 指定DNS服务器的IP地址:
#vi /etc/resolv.conf
修改内容:
search rj.com
nameserver 192.168.1.22 ##指定的DNS为主DNS的IP
- 测试:
[root@centos7 ~]# ls /var/named/slaves/
rj.com.zone 192.168.1.zone
子域DNS
父域DNS:ns1.rj.com 192.168.1.33
子域DNS:ns1.ops.rj.com 192.168.1.22
设置父域DNS服务器
- 编写文件/etc/named.conf,添加区域:
#vi /etc/named.conf
…
添加区域如下:
- 正向区域
zone "dj.com" IN {
type master; 表明为主DNS
file "rj.com.zone"; 保存A记录的文件名(网址和IP 地址映射记录)
allow-update { none; };
};
- 反向区域
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.zone"; 指针记录的文件名
allow-update { none; };
- 子域区域:添加指向子域的转发器
将查询子域的请求转发给子域DNS
zone "ops.rj.com" IN {
type forward;
forward only;
forwarders { 192.168.1.22; };
};
- 子域授权(序列号手动+1)
#vi /var/named/rj.com.zone
$TTL 1D
@ IN SOA rj.com root (
0 ; serial 序列号手动+1
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS ns1.rj.com.
ns1 IN A 192.168.1.33
ops IN NS ns1.ops 添加子域的NS记录
ns1.ops IN A 192.168.1.22 添加子域的A记录
- 检查配置文件语法:#named-checkconf
- 配置完成后重载配置文件:#rnfc reload
设置子域DNS服务器
- 编写主配置文件,添加区域
#vi /etc/named.conf
…
recursion yes;
notify yes;
zone “ops.rj.com” IN {
type master;
file “ops.rj.com.zone”;
};
…
- 编写区域文件,添加A记录
#vi /var/named/ops.rj.com.zone
$TTL 1D
@ IN SOA ops.rj.com root (
0 ; serial 序列号手动+1
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS ns1
ns1 IN A 192.168.1.22
www IN A 192.168.1.33
- 检查配置文件语法:#named-checkconf
- 配置完成后重载配置文件:#rnfc reload
注意
若将查询子域的请求转发给子域DNS服务器,首选DNS写父域的;若将查询父域的请求转发给父域DNS服务器,则需要在子域DNS服务器中配置父域的转发器,首选DNS写子域的。