一、相关包与环境
bind-libs.x86_64 #提供库文件
bind-utils.x86_64 #提供工具包
bind.x86_64 #提供主程序包
实验环境:
192.168.147.129 父域DNS服务器
192.168.147.128 子域测试服务器
子域实现方法:
1、在父域的DNS解析库中把子域当成A记录加进去
这种方法只适合小环境使用
[root@centos7 named]# vim magedu.com.zone
$TTL 1D
magedu.com. IN SOA ns.magedu.com. nsadmin.magedu.com. (
3 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS ns.magedu.com.
NS ns2.magedu.com.
www CNAME websrv
ns2 A 192.168.147.131
websrv A 192.168.147.128
websrv A 192.168.147.129
ns A 192.168.147.129
@ MX 10 mailsrv1
@ MX 20 mailsrv2
mailsrv1 A 192.168.147.129
mailsrv2 A 192.168.147.131
www.hz A 192.168.147.128 //www.hz.magedu.com子域当成是父域的A记录
2、在主DNS服务器上添加子域,由同一台主机维护(实际上主域与子域是相互独立的,只是名字有关联,不适合大规模环境)
编辑/etc/named.rfc1912.zones
[root@centos7 named]# vim /etc/named.rfc1912.zones
zone "magedu.com" IN {
type master;
file "magedu.com.zone";
//allow-update { 192.168.147/24; };
};
zone "hz.magedu.com" IN { //本机独立子域
type master;
file "hz.magedu.com.zone";
allow-update { none; };
allow-transfer { 192.168.147.131; };
};
生成子域的解析库文件
[root@centos7 named]# vim hz.magedu.com.zone
$TTL 1D
hz.magedu.com. IN SOA ns.hz.magedu.com. nsadmin.hz.magedu.com. (
4 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS ns.hz.magedu.com.
NS ns2.hz.magedu.com.
www CNAME websrv
ns2 A 192.168.147.131
websrv A 192.168.147.128
websrv A 192.168.147.129
ns A 192.168.147.129
使用dig命令测试
[root@centos7 ~]# dig www.hz.magedu.com @192.168.147.129
; <<>> DiG 9.9.4-RedHat-9.9.4-50.el7 <<>> www.hz.magedu.com @192.168.147.129
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57750
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 2, ADDITIONAL: 3
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.hz.magedu.com. IN A
;; ANSWER SECTION:
www.hz.magedu.com. 86400 IN CNAME websrv.hz.magedu.com.
websrv.hz.magedu.com. 86400 IN A 192.168.147.128
websrv.hz.magedu.com. 86400 IN A 192.168.147.129
;; AUTHORITY SECTION:
hz.magedu.com. 86400 IN NS ns.hz.magedu.com.
hz.magedu.com. 86400 IN NS ns2.hz.magedu.com.
;; ADDITIONAL SECTION:
ns.hz.magedu.com. 86400 IN A 192.168.147.129
ns2.hz.magedu.com. 86400 IN A 192.168.147.131
;; Query time: 1 msec
;; SERVER: 192.168.147.129#53(192.168.147.129)
;; WHEN: Fri Jun 28 10:35:36 CST 2019
;; MSG SIZE rcvd: 166
3、子域单独一台主机管理,和父域分开,在父域中添加一条特殊的NS记录用于说明管理子域的主机IP地址,同时父域的关闭dnssec功能。
编辑主域bind主配置文件,主域主机192.168.147.129
[root@centos7 named]# vim /etc/named.conf
options {
listen-on port 53 { localhost; };
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 { localhost;any; };
//allow-transfer {192.168.147.131; };
recursion yes;
dnssec-enable no; //关闭dnssec功能
dnssec-validation no;//关闭dnssec功能
......
在父域中加上hz NS ns3.hz.magedu.com.这条NS记录,并把它解析成A记录
[root@centos7 named]# vim magedu.com.zone
$TTL 1D
magedu.com. IN SOA ns.magedu.com. nsadmin.magedu.com. (
3 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS ns.magedu.com.
NS ns2.magedu.com.
hz NS ns3.hz.magedu.com. //加上这条NS记录
www CNAME websrv
ns3.hz A 192.168.147.128 //把子域的DNS服务器解析成IP地址
ns2 A 192.168.147.131
websrv A 192.168.147.128
websrv A 192.168.147.129
ns A 192.168.147.129
@ MX 10 mailsrv1
@ MX 20 mailsrv2
mailsrv1 A 192.168.147.129
mailsrv2 A 192.168.147.131
编辑子域的DNS服务器,子域主机为192.168.147.128
[root@centos6 ~]# vim /etc/named.conf
options {
//listen-on port 53 { 127.0.0.1; };
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 { localhost; };
recursion yes;
allow-transfer { none; };
dnssec-enable yes;
dnssec-validation yes;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
编辑/etc/named.rfc1912.zones,添加"hz.magedu.com"域
[root@centos6 ~]# vim /etc/named.rfc1912.zones
zone "hz.magedu.com" IN {
type master;
file "hz.magedu.com.zone";
};
在/var/named/目录下生成hz.magedu.com.zone文件
[root@centos6 ~]# cat /var/named/hz.magedu.com.zone
$TTL 1D
hz.magedu.com. IN SOA ns.hz.magedu.com. nsadmin.hz.magedu.com. (
3 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS ns.hz.magedu.com.
www CNAME websrv
websrv A 192.168.147.128
websrv A 192.168.147.129
ns A 192.168.147.128
完成后重启或重新加载服务即可
测试
[root@centos7 ~]# dig www.hz.magedu.com @192.168.147.129
; <<>> DiG 9.9.4-RedHat-9.9.4-50.el7 <<>> www.hz.magedu.com @192.168.147.129
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59465
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.hz.magedu.com. IN A
;; ANSWER SECTION:
www.hz.magedu.com. 86229 IN CNAME websrv.hz.magedu.com.
websrv.hz.magedu.com. 86229 IN A 192.168.147.129
websrv.hz.magedu.com. 86229 IN A 192.168.147.128
;; AUTHORITY SECTION:
hz.magedu.com. 86229 IN NS ns.hz.magedu.com.
;; ADDITIONAL SECTION:
ns.hz.magedu.com. 86229 IN A 192.168.147.128
;; Query time: 1 msec
;; SERVER: 192.168.147.129#53(192.168.147.129)
;; WHEN: Fri Jun 28 13:13:39 CST 2019
;; MSG SIZE rcvd: 132
由此我们三种搭建DNS子域的方法都实现了。