環境: 系統 版本 CentOS Linux release 7.2.1511 (Core)
bind 版本 bind.x86_64 32:9.9.4-38
已關閉firewalld和selinux
兩臺DNS付服務器:
主機名 | dns-master | dns-slave |
---|---|---|
IP | 10.0.0.28 | 10.0.0.29 |
dns-master 上:
1,安裝bind
# yum -y install bind*.x86_64
2,啓動bind
# systemctl enable named
# systemctl start named
查看named 的端口
[root@dns-master ~]# netstat -lntup|grep 53
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 3531/named
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 2328/dnsmasq
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 3531/named
tcp6 0 0 ::1:53 :::* LISTEN 3531/named
tcp6 0 0 ::1:953 :::* LISTEN 3531/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 3531/named
udp 0 0 192.168.122.1:53 0.0.0.0:* 2328/dnsmasq
udp 0 0 0.0.0.0:5353 0.0.0.0:* 848/avahi-daemon: r
udp6 0 0 ::1:53 :::* 3531/named
如上,則bind啓動完成
3,配置 named.conf
# vim /etc/named.conf
改options中的listen-on那一行的 “127.0.0.1” 爲 “any”,allow-query 中的“localhost” 爲”any”,意思是接受其他主機的訪問和查詢,如下:
在named.conf 下面添加一個zone
zone "test.com." IN {
type master;
file "test.com.zone";
};
如下:
4,編輯test.com.zone 正向解析文件
# cd /var/named/ (這個目錄是 /etc/named.conf 文件中 options 模塊的 directory 參數中配置的 )
# cp named.localhost test.com.zone (注意:和named.localhost 的權限、所屬用戶及組 保持一致,自己看看)
# chgrp named test.com.zone
# chmod 640 test.com.zone
# vim /var/named/test.com.zone
改爲如下配置:
$TTL 1D
@ IN SOA ns.test.com. xx.test.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns.test.com.
ns A 10.0.0.28
master A 10.0.0.28
slave A 10.0.0.29
www CNAME master
web CNAME slave
上面的參數配置的詳解,可參考:點擊打開鏈接
檢查配置文件:
# named-checkconf /etc/named.conf
# named-checkzone "test.com." /var/named/test.com.zone
沒報錯就OK,報錯了,檢查是否 按照上面的步驟來操作
5,重啓named.server,測試域名解析
# systemctl restart named
測試:
# dig www.test.com @10.0.0.28 (‘@’後面指定dns 服務器的地址,就可以不用改本機的dns了)
如上,在dns 服務器 10.0.0.28 上查到 www.test.com 指向 master.test.com,然後master.test.com 指向 10.0.0.28
6,配置反向解析
編輯 /etc/named.conf 在第3步添加的 zone 下面 添加:
# cp test.com.zone 10.0.0.rev
# chgrp named 10.0.0.rev
編輯 10.0.0.rev 爲
$TTL 1D
@ IN SOA ns.test.com. xx.test.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS ns.test.com.
28 PTR ns.test.com.
28 PTR master.test.com.
29 PTR slave.test.com.
檢查:
# named-checkconf /etc/named.conf
# named-checkzone "0.0.10.in-addr.arpa" /var/named/10.0.0.rev
測試:
# dig -x 10.0.0.29 @10.0.0.28
至此,主DNS 服務器上的 正向、反向解析已配置成功。
dns-slave 上
1,安裝bind
# yum -y install bind*.x86_64
2,啓動bind
# systemctl enable named
# systemctl start named
3,配置 named.conf
# vim /etc/named.conf
改options中的listen-on那一行的 “127.0.0.1” 爲 “any”,allow-query 中的“localhost” 爲”any”
添加兩個zone
檢查配置
# named-checkconf /etc/named.conf
4,測試服務
重啓服務
# systemctl restart named
測試正向解析
測試反向解析
已完成,OK!