Linux
使用 BIND 實現輔助 DNS 伺服器的最佳方法
我有一台安裝在 centOS 上並基於 BIND DNS 伺服器的 DNS 伺服器。我想要做的是製作一個輔助 DNS 伺服器,它將與主伺服器複製並保存我所有的區域記錄,而且我還需要當主伺服器由於某種原因出現故障時,該伺服器將充當故障轉移,輔助伺服器將充當主人回答來自世界的所有疑問。
今天我安裝了一個新伺服器(centOS 6),還安裝了 BIND DNS 伺服器並將其配置為將我的主伺服器中的所有區域作為從屬區域,如下所示:
zone "example-domain.com" IN { type slave; masters { <master-ip-address>; }; file "slaves/example-domain.com"; };
所以畢竟我成功地從主伺服器更新了帶有所有 DN 記錄的區域文件,一切都很好。
我所做的第二步是將我所有域區域中的主區域文件更新為新情況,因此我添加了一條帶有我的從屬詳細資訊的新 NS 記錄,如下所示:
$TTL 3600 @ IN SOA XXX.com. ns1.XXX.com. ( 2013080901 ; serial, todays date + todays serial # 10800 ; refresh, seconds 7200 ; retry, seconds 10800 ; expire, seconds 86400 ) ; minimum, seconds NS ns1.XXX.com. NS dns.netvision.net.il. NS nypop.netvision.net.il. **NS ns2.XXX.com.** MX 1 mail.synerionhcm.com. @ IN A 1.1.1.1 ns2 IN A 2.2.2.2 www IN A 1.1.1. localhost A 127.0.0.1
但是我想知道的是,如果我的主伺服器由於某種原因出現故障並且輔助伺服器將無法從主伺服器複製記錄,它會刪除它們嗎?它會像主要的一樣,會回答來自世界的查詢?
謝謝
從世界的角度來看,主伺服器和從伺服器之間沒有區別。只需將它們全部列出,解析名稱伺服器將在另一台伺服器上重試,如果它沒有得到第一台伺服器的響應。
關於如果 master 宕機會發生什麼——這由 SOA 中的“EXPIRE”時間控制。
將過期時間設置為 10800(如上),您的從屬伺服器將過期其數據並在
10800s / 3600s/h = 3 hours
.