一、基础及正向区域配置

1、首先安装bind(以cnetos6.7为例)

[root@centfils ~]# yum install bind -y#bind主要为Linux主机提供DNS解析服务,程序包名为bind,程序名为named#主要安装的程序包为:bind,bind-libs(提供共享库),bind-utils(提供测试解析工具);

2、先备份主配置文件,然后在编辑主配置文件,配置缓存名称服务器

[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 :53udp    UNCONN     0      0          192.168.0.196:53                    *:*      users:(("named",7494,513))#监听开启,可以与外网主机通信了

3、配置主DNS名称服务器

(1)在主配置文件中定义区域

[root@centfils ~]# vim /etc/named.rfc1912.zoneszone "magedu.com" IN {        type master;        file "magedu.com.zone";};[root@centfils ~]# named-checkconf                #自动检查主配置文件是否有语法错误

(2)定义区域解析库文件

[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	mx2ns1	IN	A	192.168.0.196ns2	IN	A	192.168.0.100mx1	IN	A	192.168.0.196mx2	IN	A	192.168.0.100www	IN	A	192.168.0.196ftp	IN	CNAME	www[root@centfils named]# named-checkzone "magedu.com" /var/named/magedu.com.zone zone magedu.com/IN: loaded serial 2016091201OK#检查指定区域的区域解析库文件是否有语法错误[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、正向解析区域配置完成,测试配置

[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.196ns2.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、重读文件

[root@centfils ~]# service named reload重新载入named:                                             [确定]#重启服务在生产环境容易造成巨大损失,所以一般重载配置文件即可

二、反向区域配置

1、定义区域

[root@centfils named]# vim /etc/named.rfc1912.zones zone "0.168.192.in-addr.arpa" IN {        type master;        file "192.168.0.zone";};

2、反向区域文件配置

[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 2016091201OK#重载文件[root@centfils named]# service named reload重新载入named:                                             [确定]

3、反向解析区域配置完成,测试

[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.196ns2.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