一、基础及正向区域配置
1、首先安装bind(以cnetos6.7为例)
1
2
3
4
|
[root@centfils ~]
# yum install bind -y
#bind主要为Linux主机提供DNS解析服务,程序包名为bind,程序名为named
#主要安装的程序包为:bind,bind-libs(提供共享库),bind-utils(提供测试解析工具);
|
2、先备份主配置文件,然后在编辑主配置文件,配置缓存名称服务器
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
[root@centfils ~]
# cp /etc/named.conf{,.bak}
[root@centfils ~]
# vim /etc/named.conf
#修改全局配置中的监听地址,加上本机可与外网通信的地址(192.168.0.196)
#加上环回地址为可让本机自我解析,并注释掉允许哪些主机可以解析
options {
listen-on port 53 { 192.168.0.196; 127.0.0.1; };
#监听地址
listen-on-v6 port 53 { ::1; };
#ipv6监听地址
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; };
#或者将localhost改为any
recursion
yes
;
#是否允许递归,yes为是
#以下的dnssec建议关闭,直接删除或者注释掉
[root@centfils ~]
# service named restart
停止 named: [确定]
启动 named: [确定]
#修改完配置文件后重启named服务
[root@centfils ~]
# ss -tunlp | grep :53
udp UNCONN 0 0 192.168.0.196:53 *:*
users
:((
"named"
,7494,513))
#监听开启,可以与外网主机通信了
|
3、配置主DNS名称服务器
(1)在主配置文件中定义区域
1
2
3
4
5
6
|
[root@centfils ~]
# vim /etc/named.rfc1912.zones
zone
"magedu.com"
IN {
type
master;
file
"magedu.com.zone"
;
};
[root@centfils ~]
# named-checkconf #自动检查主配置文件是否有语法错误
|
(2)定义区域解析库文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
[root@centfils ~]
# cd /var/named
[root@centfils named]
# vim magedu.com.zone
$TTL 86400
$ORIGIN magedu.com.
@ IN SOA ns1.magedu.com. admin.magedu.com (
2016091201 ;序列号
1H ;刷新时间
5M ;重试时间
7D ;过期时间
1D ;否定答案的TTL值
)
IN NS ns1.magedu.com.
IN NS ns2.magedu.com.
IN MX 10 mx1
IN MX 20 mx2
ns1 IN A 192.168.0.196
ns2 IN A 192.168.0.100
mx1 IN A 192.168.0.196
mx2 IN A 192.168.0.100
www IN A 192.168.0.196
ftp
IN CNAME www
[root@centfils named]
# named-checkzone "magedu.com" /var/named/magedu.com.zone
zone magedu.com
/IN
: loaded serial 2016091201
OK
#检查指定区域的区域解析库文件是否有语法错误
[root@centfils named]
# chown :named magedu.com.zone #修改文件属组
[root@centfils named]
# chmod 640 magedu.com.zone #修改文件权限,其他人无权访问
[root@centfils named]
# service named restart #重启服务
停止 named: [确定]
启动 named: [确定]
|
4、正向解析区域配置完成,测试配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
[root@centfils ~]
# dig -t A www.magedu.com @192.168.0.196 # @为本地解析
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6 <<>> -t A www.magedu.com @192.168.0.196
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR,
id
: 61816
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2
;; QUESTION SECTION:
;www.magedu.com. IN A
;; ANSWER SECTION:
www.magedu.com. 86400 IN A 192.168.0.196
;; AUTHORITY SECTION:
magedu.com. 86400 IN NS ns2.magedu.com.
magedu.com. 86400 IN NS ns1.magedu.com.
;; ADDITIONAL SECTION:
ns1.magedu.com. 86400 IN A 192.168.0.196
ns2.magedu.com. 86400 IN A 192.168.0.100
;; Query
time
: 10 msec
;; SERVER: 192.168.0.196
#53(192.168.0.196)
;; WHEN: Mon Sep 12 17:21:32 2016
;; MSG SIZE rcvd: 116
|
5、重读文件
1
2
3
4
|
[root@centfils ~]
# service named reload
重新载入named: [确定]
#重启服务在生产环境容易造成巨大损失,所以一般重载配置文件即可
|
二、反向区域配置
1、定义区域
1
2
3
4
5
|
[root@centfils named]
# vim /etc/named.rfc1912.zones
zone
"0.168.192.in-addr.arpa"
IN {
type
master;
file
"192.168.0.zone"
;
};
|
2、反向区域文件配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
[root@centfils named]
# vim 192.168.0.zone
$TTL 86400
$ORIGIN 0.168.192.
in
-addr.arpa.
@ IN SOA ns1.magedu.com. admin.magedu.com (
2016091201
1H
5M
7D
1D )
IN NS ns1.magedu.com.
IN NS ns2.magedu.com.
196 IN PTR ns1.magedu.com.
196 IN PTR www.magedu.com.
196 IN PTR mx1.magedu.com.
100 IN PTR mx2.magedu.com.
100 IN PTR ns2.magedu.com.
#注意:不需要MX和A,以及AAAA记录,以PTR记录为主
[root@centfils named]
# chown :named 192.168.0.zone
[root@centfils named]
# chmod 640 192.168.0.zone
#检查反向区域的语法
[root@centfils named]
# named-checkzone "0.168.192.in-addr.arpa" 192.168.0.zone
zone 0.168.192.
in
-addr.arpa
/IN
: loaded serial 2016091201
OK
#重载文件
[root@centfils named]
# service named reload
重新载入named: [确定]
|
3、反向解析区域配置完成,测试
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
[root@centfils named]
# dig -x 192.168.0.196 @192.168.0.196
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6 <<>> -x 192.168.0.196 @192.168.0.196
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR,
id
: 14252
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 2, ADDITIONAL: 2
;; QUESTION SECTION:
;196.0.168.192.
in
-addr.arpa. IN PTR
;; ANSWER SECTION:
196.0.168.192.
in
-addr.arpa. 86400 IN PTR mx1.magedu.com.
196.0.168.192.
in
-addr.arpa. 86400 IN PTR ns1.magedu.com.
196.0.168.192.
in
-addr.arpa. 86400 IN PTR www.magedu.com.
;; AUTHORITY SECTION:
0.168.192.
in
-addr.arpa. 86400 IN NS ns1.magedu.com.
0.168.192.
in
-addr.arpa. 86400 IN NS ns2.magedu.com.
;; ADDITIONAL SECTION:
ns1.magedu.com. 86400 IN A 192.168.0.196
ns2.magedu.com. 86400 IN A 192.168.0.100
;; Query
time
: 2 msec
;; SERVER: 192.168.0.196
#53(192.168.0.196)
;; WHEN: Mon Sep 12 18:52:45 2016
;; MSG SIZE rcvd: 172
|
本文转自 元婴期 51CTO博客,原文链接:http://blog.51cto.com/jiayimeng/1852025