DNS主从服务器配置实战解析及案例

标签:
dns主从配置dns主从配置案例 |
DNS主服务器:192.168.88.131
从服务器:192.168.88.130
总结:
主从复制(注意点):
一、从服务器配置(192.168.88.130)
从服务器只需定义区域,而无需提供解析库文件;
主从启动后,解析库文件会自动传送并放置于/var/named/slaves/目录中
[root@www ~]# ps aux | grep named
named
root
root
[root@www ~]# ll -d /var/named/
drwxr-x---. 5 root named 4096 11月 17 22:16 /var/named/
[root@www ~]# ll /var/named/
总用量 28
drwxrwx---. 2 named named 4096 11月 18 01:13 data
drwxrwx---. 2 named named 4096 11月 18 01:13 dynamic
-rw-r-----. 1 root
-rw-r-----. 1 root
-rw-r-----. 1 root
-rw-r-----. 1 root
drwxrwx---. 2 named named 4096 7月
[root@www named]# vim /etc/named.conf
//
options {
//
//
//
//
};
logging {
};
zone "." IN {
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
[root@www
slaves]#
…….
zone "localhost" IN {
};
zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
};
zone "1.0.0.127.in-addr.arpa" IN {
};
zone "0.in-addr.arpa" IN {
};
//定义正解从区域
zone "field.com" IN {
};
//定义反解从区域
zone "88.168.192.in-addr.arpa" IN {
[root@www slaves]# named-checkconf
//查看主配置文件是否有语法错误
[root@www named]# cd /var/named/slaves/
[root@www slaves]# service named restart
停止 named:.[确定]
启动
named:[确定]
二、主服务器上配置(192.168.88.131):
注意:主服务器的区域解析库文件中必须有一条NS记录是指向从服务器;
[root@www named]# ls
192.168.88.zone
chroot
[root@www named]# vim /etc/named.rfc1912.zones
};
zone "localhost" IN {
};
zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
};
zone "1.0.0.127.in-addr.arpa" IN {
};
zone "0.in-addr.arpa" IN {
};
zone "field.com" IN {
};
zone "88.168.192.in-addr.arpa" IN {
};
(1)、定义正解区域解析库文件:
主服务器的区域解析库文件中必须有一条NS记录是指向从服务器
[root@www named]# vim field.com.zone
$TTL 86400
$ORIGIN field.com.
@
//序列号必须手动加1
ns1
ns2
//从服务器正解必须要有一个NS记录
mx1
mx2
www
ftp
field.com.
*
[root@www named]# named-checkzone "field.com" /var/named/field.com.zone
zone field.com/IN: loaded serial 2017111701
OK
[root@www named]# cat 192.168.88.zone
//反解暂时不变
$TTL 86400
$ORIGIN 88.168.192.in-addr.arpa.
@
131
131
131
130
~
"192.168.88.zone" 14L, 302C 已写入
[root@www named]# rndc reload
server reload successful
[root@www named]# ls
192.168.88.zone
chroot
Nov 18 01:47:20 www named[8468]: using default UDP/IPv4 port range: [1024, 65535]
Nov 18 01:47:20 www named[8468]: using default UDP/IPv6 port range: [1024, 65535]
Nov 18 01:47:20 www named[8468]: sizing zone task pool based on 8 zones
Nov 18 01:47:20 www named[8468]: Warning: 'empty-zones-enable/disable-empty-zone' not set: disabling RFC 1918 empty zones
Nov 18 01:47:20 www named[8468]: reloading configuration succeeded
Nov 18 01:47:20 www named[8468]: reloading zones succeeded
Nov 18 01:47:20 www named[8468]: zone field.com/IN: loaded serial 2017111702
Nov 18 01:47:20 www named[8468]: zone field.com/IN: sending notifies (serial 2017111702)
Nov 18 01:47:20 www named[8468]: client 192.168.88.130#51283: transfer of 'field.com/IN': AXFR-style IXFR started
Nov 18 01:47:20 www named[8468]: client 192.168.88.130#51283: transfer of 'field.com/IN': AXFR-style IXFR ended
//查看日志文件是否transfer 完成
[root@www named]# ls
192.168.88.zone
chroot
从服务器上查看是否同步完成:(192.168.88.130)
[root@www named]# service named restart
停止 named:.[确定]
启动 named:[确定]
[root@www named]# tail /var/log/messages
Nov 18 01:31:19 www named[9652]: zone 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa/IN: loaded serial 0
Nov 18 01:31:19 www named[9652]: zone field.com/IN: loaded serial 2017111701
Nov 18 01:31:19 www named[9652]: zone localhost.localdomain/IN: loaded serial 0
Nov 18 01:31:19 www named[9652]: zone localhost/IN: loaded serial 0
Nov 18 01:31:19 www named[9652]: managed-keys-zone ./IN: loaded serial 2
Nov 18 01:31:19 www named[9652]: running
Nov 18 01:31:19 www named[9652]: zone field.com/IN: sending notifies (serial 2017111701)
Nov 18 01:35:51 www named[9652]: client 192.168.88.131#42502: received notify for zone '88.168.192.in-addr.arpa': not authoritative
Nov 18 01:35:52 www named[9652]: client 192.168.88.131#13228: received notify for zone 'field.com'
Nov 18 01:35:52 www named[9652]: zone field.com/IN: notify from 192.168.88.131#13228: zone is up to date
[root@www named]# cd /var/named/slaves/
[root@www slaves]# ls
field.com.zone
[root@www slaves]# cat field.com.zone
$ORIGIN .
$TTL 86400
field.com
$ORIGIN field.com.
*
ftp
mx1
mx2
ns1
ns2
www
~
(2)、定义反解区域解析库文件:
[root@www named]# vim 192.168.88.zone
$TTL 86400
$ORIGIN 88.168.192.in-addr.arpa.
@
//序列号必须手动加1
131
130
//从服务器NS记录
131
131
130
133
[root@www named]# named-checkzone "88.168.192.in-addr.arpa" 192.168.88.zone
zone 88.168.192.in-addr.arpa/IN: loaded serial 2017111702
OK
//查看定义的区域解析库文件语法是否有错
[root@www named]# rndc reload
server reload successful
[root@www named]# tail /var/log/messages
[root@www named]#
从服务器上查看是否同步完成:(192.168.88.130)
server reload successful
[root@www slaves]# tail /var/log/messages
Nov 18 01:57:45 www named[9932]: using default UDP/IPv6 port range: [1024, 65535]
Nov 18 01:57:45 www named[9932]: sizing zone task pool based on 8 zones
Nov 18 01:57:45 www named[9932]: Warning: 'empty-zones-enable/disable-empty-zone' not set: disabling RFC 1918 empty zones
Nov 18 01:57:45 www named[9932]: reloading configuration succeeded
Nov 18 01:57:45 www named[9932]: reloading zones succeeded
Nov 18 01:57:45 www named[9932]: zone 88.168.192.in-addr.arpa/IN: Transfer started.
Nov 18 01:57:45 www named[9932]: transfer of '88.168.192.in-addr.arpa/IN' from 192.168.88.131#53: connected using 192.168.88.130#54269
Nov 18 01:57:45 www named[9932]: zone 88.168.192.in-addr.arpa/IN: transferred serial 2017111701
Nov 18 01:57:45 www named[9932]: transfer of '88.168.192.in-addr.arpa/IN' from 192.168.88.131#53: Transfer completed: 1 messages, 8 records, 240 bytes, 0.001 secs (240000 bytes/sec)
Nov 18 01:57:45 www named[9932]: zone 88.168.192.in-addr.arpa/IN: sending notifies (serial 2017111701)
[root@www slaves]# ls
192.168.88.zone
[root@www slaves]# cat 192.168.88.zone
$ORIGIN .
$TTL 86400
88.168.192.in-addr.arpa IN SOA
$ORIGIN 88.168.192.in-addr.arpa.
130
131
~
[root@www slaves]# cat field.com.zone
$ORIGIN .
$TTL
86400
field.com
$ORIGIN field.com.
*
ftp
mx1
mx2
ns1
ns2
www
~
附录:完整案例:
从服务器配置(192.168.88.130):
[root@www named]# vim /etc/named.conf
//
options {
//
//
//
//
};
logging {
};
zone "." IN {
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
[root@www
slaves]#
};
zone "localhost" IN {
};
zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
};
zone "1.0.0.127.in-addr.arpa" IN {
};
zone "0.in-addr.arpa" IN {
};
zone "field.com" IN {
};
zone "88.168.192.in-addr.arpa" IN {
[root@www slaves]# named-checkconf
[root@www slaves]# rndc reload
server reload successful
[root@test ~]# service iptables stop
主服务器配置(192.168.88.131):
[root@www ~]# cd /var/named
[root@www
named]# vim
$TTL 86400
$ORIGIN 88.168.192.in-addr.arpa.
@
131
130
129
131
131
130
131
130
133
[root@www named]# vim field.com.zone
$TTL 86400
$ORIGIN field.com.
@
ns1
ns2
mx1
mx2
web2
test
web1
imap
www
pop3
ftp
field.com.
"field.com.zone" 24L, 525C 已写入
[root@www named]# named-checkzone "field.com" /var/named/field.com.zone
zone field.com/IN: loaded serial 2017111706
OK
[root@www named]# named-checkzone "88.168.192.in-addr.arpa" 192.168.88.zone
zone 88.168.192.in-addr.arpa/IN: loaded serial 2017111705
OK
[root@www named]# service named reload
重新载入named: [确定]
[root@www named]# tail /var/log/messages
Nov 20 11:17:03 www named[3242]: reloading configuration succeeded
Nov 20 11:17:03 www named[3242]: reloading zones succeeded
Nov 20 11:17:03 www named[3242]: zone 88.168.192.in-addr.arpa/IN: loaded serial 2017111705
Nov 20 11:17:03 www named[3242]: zone 88.168.192.in-addr.arpa/IN: sending notifies (serial 2017111705)
Nov 20 11:17:03 www named[3242]: zone field.com/IN: loaded serial 2017111706
Nov 20 11:17:03 www named[3242]: zone field.com/IN: sending notifies (serial 2017111706)
Nov 20 11:17:03 www named[3242]: client 192.168.88.130#53331: transfer of '88.168.192.in-addr.arpa/IN': AXFR-style IXFR started
Nov 20 11:17:03 www named[3242]: client 192.168.88.130#53331: transfer of '88.168.192.in-addr.arpa/IN': AXFR-style IXFR ended
Nov 20 11:17:03 www named[3242]: client 192.168.88.130#33030: transfer of 'field.com/IN': AXFR-style IXFR started
Nov 20 11:17:03 www named[3242]: client 192.168.88.130#33030: transfer of 'field.com/IN': AXFR-style IXFR ended
[root@www named]#
[root@www named]# clear
从服务查看是否同步完成(可能会有所延迟,必要时可结合ntp):
[root@test ~]# cd /var/named/slaves/
[root@test slaves]# ls
192.168.88.zone
[root@test slaves]# tail /var/log/messages
Nov 18 12:11:20 test named[3732]: zone field.com/IN: transferred serial 2017111703
Nov 18 12:11:20 test named[3732]: transfer of 'field.com/IN' from 192.168.88.131#53: Transfer completed: 1 messages, 16 records, 367 bytes, 0.043 secs (8534 bytes/sec)
Nov 18 12:11:20 test named[3732]: zone field.com/IN: sending notifies (serial 2017111703)
Nov 18 12:26:00 test named[3732]: client 192.168.88.131#13038: received notify for zone '88.168.192.in-addr.arpa'
Nov 18 12:26:00 test named[3732]: master 192.168.88.131#53 (source 0.0.0.0#0) deleted from unreachable cache
Nov 18 12:26:00 test named[3732]: zone 88.168.192.in-addr.arpa/IN: Transfer started.
Nov 18 12:26:00 test named[3732]: transfer of '88.168.192.in-addr.arpa/IN' from 192.168.88.131#53: connected using 192.168.88.130#41751
Nov 18 12:26:00 test named[3732]: zone 88.168.192.in-addr.arpa/IN: transferred serial 2017111703
Nov 18 12:26:00 test named[3732]: transfer of '88.168.192.in-addr.arpa/IN' from 192.168.88.131#53: Transfer completed: 1 messages, 11 records, 296 bytes, 0.160 secs (1850 bytes/sec)
Nov 18 12:26:00 test named[3732]: zone 88.168.192.in-addr.arpa/IN: sending notifies (serial 2017111703)
[root@test slaves]# cat 192.168.88.zone
$ORIGIN .
$TTL 86400
88.168.192.in-addr.arpa IN SOA
$ORIGIN 88.168.192.in-addr.arpa.
130
131
133
[root@test slaves]# cat field.com.zone
$ORIGIN .
$TTL 86400
field.com
$ORIGIN field.com.
*
ftp
mx1
mx2
ns1
ns2
pop3
test
www
[root@test slaves]#
测试dns服务器可行性:
(1)、Linux上解析百度谷歌
[root@www named]# dig -t www.baidu.com
;; Warning, ignoring invalid type www.baidu.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.4 <<>> -t www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20255
;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;.
;; ANSWER SECTION:
.
.
.
.
.
.
.
.
.
.
.
.
.
;; Query time: 14 msec
;; SERVER: 192.168.88.2#53(192.168.88.2)
;; WHEN: Sat Nov 18 14:05:57 2017
;; MSG
SIZE
[root@www named]# dig -x 8.8.8.8
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.4 <<>> -x 8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46771
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;8.8.8.8.in-addr.arpa.
;; ANSWER SECTION:
8.8.8.8.in-addr.arpa.
;; Query time: 10 msec
;; SERVER: 192.168.88.2#53(192.168.88.2)
;; WHEN: Sat Nov 18 17:21:57 2017
;; MSG
SIZE
(2)、从服务器作为客户机DNS服务器提供DNS解析功能:
http://s7/mw690/003nyNnBzy7fX0eiuvYc6&690
访问新浪主页,测试是否可以解析:http://s4/mw690/003nyNnBzy7fX0eEUfx83&690
注:本次所有测试均在虚拟机上执行且验证确实可行,如有纰漏,欢迎指正。
--------------FieldYang/佐击20171120-----------------