CentOSにインストールされ、BINDDNSサーバーに基づくDNSサーバーが1つあります。私がやりたいのは、マスターサーバーと複製し、すべてのゾーンレコードを保持するセカンダリDNSサーバーを作成することです。また、マスターサーバーが何らかの理由でフォールダウンしたときに、このサーバーがフェイルオーバーとして機能する必要があります。世界からのすべての質問に答えるためのマスターとして行動します。
今日、私は新しいサーバー(centOS 6)をインストールし、BIND DNSサーバーもインストールして、マスターサーバーからすべてのゾーンをスレーブゾーンとして取得するように構成しました。
zone "example-domain.com" IN {
type slave;
masters { <master-ip-address>; };
file "slaves/example-domain.com";
};
したがって、結局のところ、すべてのDNレコードを使用して、マスターからゾーンファイルが正常に更新され、すべて正常です。
私が行った2番目のステップは、すべてのドメインゾーンのマスターゾーンファイルを新しい状況に更新することです。そのため、次のように、スレーブの詳細を含む新しい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
しかし、マスターサーバーが何らかの理由でダウンし、セカンダリサーバーがマスターからレコードを複製できなくなった場合、この状況で知りたいことが起こります。レコードは削除されますか?それはプライマリのように機能し、世界からの質問に答えますか?
ありがとう
世界の観点からは、マスターサーバーとスレーブサーバーの間に違いはありません。それらをすべてリストするだけで、解決中のネームサーバーは、最初のサーバーから応答がない場合、別のサーバーで再試行します。
マスターがダウンした場合に何が起こるかについて-それはSOAの「EXPIRE」時間によって制御されます。
有効期限を10800(上記のように)に設定すると、スレーブサーバーはデータを期限切れにし、10800s / 3600s/h = 3 hours
の後にゾーンの提供を停止します。