搭建基礎(chǔ)環(huán)境:Centos7.2
1、安裝最新的bind軟件
#yum install bind* -y

2、修改配置
安裝完之后 配置文件將位于 /etc/named.conf
配置文件中第一段中最重要的為第一段,詳明資源記錄的目錄。
其中 /var/named/ 區(qū)域數(shù)據(jù)文件
配置文件中還需要定義其他區(qū)域的類型及數(shù)據(jù)文件。

其中named.ca為根數(shù)據(jù)文件
named.localhost定義了本機的回環(huán)數(shù)據(jù)文件(正向解析)
named.loopback定義了本機的回環(huán)數(shù)據(jù)文件(反向解析)
3、記錄類型
A記錄:地址記錄,用來指定域名的IPv4地址(如:8.8.8.8),如果需要將域名指向一個IP地址,就需要添加A記錄。
CNAME: 如果需要將域名指向另一個域名,再由另一個域名提供ip地址,就需要添加CNAME記錄。
TXT:在這里可以填寫任何東西,長度限制255。絕大多數(shù)的TXT記錄是用來做SPF記錄(反垃圾郵件)。
NS:域名服務(wù)器記錄,如果需要把子域名交給其他DNS服務(wù)商解析,就需要添加NS記錄。
AAAA:用來指定主機名(或域名)對應(yīng)的IPv6地址(例如:ff06:0:0:0:0:0:0:c3)記錄。
MX:如果需要設(shè)置郵箱,讓郵箱能收到郵件,就需要添加MX記錄。
SRV:記錄了哪臺計算機提供了哪個服務(wù)。格式為:服務(wù)的名字、點、協(xié)議的類型,例如:_xmpp-server._tcp。
4、區(qū)域類型
主區(qū)域:master
從區(qū)域:slave
根區(qū)域:hint
轉(zhuǎn)發(fā)區(qū)域:forward
啟動服務(wù)前查看配置文件及數(shù)據(jù)文件是否有誤
命令:
#named-checkconf 檢測named.conf 語法格式,不能檢查邏輯錯誤
#namad-checkzone " " 目標路徑 檢測/var/named/中對應(yīng)的文件是否存在語法錯誤
5、啟動服務(wù)
systemctl start named

DNS: 監(jiān)聽的協(xié)議及端口:
53/udp
53/tcp
953/tcp, rndc
可以使用dig、nslookup 命令進行DNS解析測試。
#dig -t A oa.mabeyx.com @192.168.12.118 -t指定類型、指定解析域名、指定DNS服務(wù)器
#nslookup server 192.168.12.118
6、配置文件(主DNS服務(wù)器:named.conf)
acl innet {????????????????????????????????????????????????????????? #定義網(wǎng)段組
192.168.129.0/24;
};
options {
directory "/var/named";
recursion yes;?????????????????????????????????????????????????? #允許任意查詢進行遞歸
allow-recursion { 192.168.12.0/24; };???????? #定給某個網(wǎng)段遞歸
querylog no;???????????????????????????????????????????????????? #開啟用戶使用記錄日志功能,不建議開啟
};
zone "." IN { ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #說明13臺根服務(wù)器的地址
type hint;
file "named.ca";
};
zone "mabeyx.com" IN {
type master;???????????????????????????????????????????????????? #說明該類型為主從服務(wù)器
file "mabeyx.com.zone";?????????????????????????????? #說明數(shù)據(jù)文件存放于/var/named/mabeyx.com.zone
allow-transfer { 192.168.12.119; };????????????? #允許單個主機來查詢所有數(shù)據(jù)記錄
};
7、配置文件(從DNS服務(wù)器:named.conf)
zone "mabeyx.com" IN {
type slave;
file "slaves/mabeyx.com.zone";
masters { 192.168.12.118; };????????????????????? #說明主服務(wù)器是哪個主機
allow-transfer { none; }; ? ? ? ? ? ? ? ? ? ? ? ? ?? #允許單個主機來查詢所有數(shù)據(jù)記錄
8、智能DNS服務(wù)器:(CDN的部分實現(xiàn)機制)
view telecom {????????????????????????????????? #視圖功能
match-clients { any; };??????????????????? #當訪問的IP段為any內(nèi)是使用telecom.mabeyx.com.zone進行解析
zone "mabeyx.com" IN {
type master;
file "telecom.mabeyx.com.zone";
};
};
view unicom {
match-clients { innet; };????????????????? #當訪問的IP段為innet內(nèi)是使用unicom.mabeyx.com.zone進行解析
zone "mabeyx.com" IN {
type master;
file "unicom.mabeyx.com.zone";
};
};
備注:zone文件需要保持權(quán)限為640,且named為屬主或?qū)俳M
9、其他說明
配置文件:
recursion yes; 詳明允許被遞歸。 遞歸將消耗大量資源
allow-recursion { 192.168.12.0/24; } 聲明只允許該網(wǎng)段請求的允許使用遞歸。
----------------------------------------------------------------------------------------------------------------------------
zone文件一般格式:
$TTL 43200
@??????????????? IN???????????????? SOA?????????????????? mabeyx.com.?????????????????????? admin.mabeyx.com. (
???????????????????????????????????????????????????????????????????? 2017052701???????????????????????? #版本號,每次更改配置后都需要更換
???????????????????????????????????????????????????????????????????? 1H????????????????????????????????????????? #更新頻率(Refresh)。即slave向master要求數(shù)據(jù)更新的頻率
???????????????????????????????????????????????????????????????????? 5M???????????????????????????????????????? #失敗重新嘗試時間(Retry)導致slave無法對master達成聯(lián)機
???????????????????????????????????????????????????????????????????? 2D????????????????????????????????????????? #失效時間(Expire)。
???????????????????????????????????????????????????????????????????? 6H )
??????????????? ? ? IN?? ? ? ? ? ? ? ? ? NS??????????????????? ns1
??????????????????? IN?????????????????? MX ? 10?????????? mail
ns1????????????? IN?????????????????? A????????????????????? 192.168.12.118
oa ? ? ? ? ? ? ? IN?????????????????? A?????????????????????? 192.168.12.232
mail?????????? IN?????????????????? A?????????????????????? 192.168.12.177
*???????????????? IN??????????????????? A????????????????????? 192.168.12.120
qq????????????? IN??????????????????? A????????????????????? 192.168.12.122
10、心得
? ? 目前大多數(shù)情況下是沒必要去自建DNS服務(wù)器,搭建DNS簡單但維護有些麻煩,自建DNS服務(wù)器無非是想讓域名快速指向期望的IP地址,而不想在公網(wǎng)上饒一圈,一般來說這種情況并不多,使用本地的hosts文件劫持即可滿足了,當需要劫持數(shù)達到一定量級,且有專人去維護時再考慮自建DNS。