DNS服務器通常在使用時,爲了緩解服務器的壓力,多使用一個主DNS服務器,多個副DNS服務器,這些DNS服務器就組成了一個DNS集羣。linux
在DNS主服務器配置好後,須要另外一臺主機來做爲副DNS服務器,需在另外一臺安裝了named服務的主機上作以下設置:vim
a、"vim /etc/named"。將第11行改成"listen-on port 53 { any; };",將第17行改成"allow-query { any; };"。以下圖所示。服務器
b、"vim /etc/named.rfc1912.zones"。在此文件中編輯以下內容,如圖所示:post
zone "we.com" IN {測試
type slave;spa
masters { 172.25.254.102; } ;.net
file "slaves/we.com.zone";blog
allow-update { none; };get
};同步
其中,"type slave",是將DNS設置爲副DNS服務器。"masters { 172.25.254.102; }"是設置哪一個是主DNS服務器。"file "slaves/we.com.zone""是設置訪問的文件,必須是在"slaves"目錄下,名字能夠自行設置。
上述配置完成後,將DNS設置爲副DNS服務器重啓服務便可,可是在主DNS的內容改變後,副DNS的內容不會改變,這樣就會形成詢問域名出現不一樣的IP。DNS的同步還須要接着作以下配置。
在主DNS服務器上輸入"vim /etc/named.rfc1913.zones",配置這個文件是由於在以前設置雙向解析,而副DNS服務器的IP屬於其餘網段,若是是網內網段則編輯其對應文件。在其中添加以下第29行內容:"also-notify {172.25.254.202;};"。完成後重啓服務便可完成同步。
在修改主DNS服務器的域名對應IP時,不只須要修改其域名和IP,還須要修改"serial"前的數字,由於在兩臺DNS服務器同步的過程當中,系統不是讀取整個文件的內容,而是讀取"serial"前的數字,若是兩臺DNS服務器的數字相同,則不一樣步,不一樣,則同步。因此每次修改都須要修改"serial"前的數字。
測試以下圖所示,在主DNS服務器中將"music.we.com"的IP改成"1.1.1.111",將"serial"前的數字從"0"改成"2017080801"。完成後重啓服務分別在兩臺主機上進行測試,能夠看出已經自動同步。