昨日まで、2 つの IP と Plesk を備えた専用サーバーがありました。NS と NS2 は同じサーバー上で実行されており、Plesk を使用してドメイン レコードを追加しています。すべてがうまく機能しました。
昨日、別のサーバーを購入する必要があったので、PleskなしでDNSサーバーとしても使用することにしました。bind9をインストールしました(https://help.ubuntu.com/community/BIND9ServerHowto#セカンダリマスターサーバーの構成) を作成し、named.local.conf に次の行を追加しました。
zone "my-domain" {
type slave;
file "/var/cache/bind/db.my-domain.com";
masters { MY_SERVER_IP; };
};
他の設定は変更しませんでした。上記の Web サイトで、conf ファイル内の他の変更を確認しましたが、正直に言ってそれが何なのかわからず、追加しませんでした。
zone "1.168.192.in-addr.arpa" {
type slave;
file "/var/cache/bind/db.192";
masters { @ip_master; };
};
(A) サーバー: Plesk の [ツールと設定] -> [DNS テンプレート設定] >> [転送制限テンプレート] で、(B) サーバーの IP を許可リストに追加しました。
バインドを再起動すると、すべて正常に見えます((B)syslog:
zone my-domain.com/IN: Transfer started.
transfer of 'my-domain.com/IN' from MY-SERVER-IP#53: connected using 192.96.206.50#49370
zone my-domain.com/IN: transferred serial 1425047310
transfer of 'my-domain.com/IN' from MY-SERVER-IP#53: Transfer completed: 1 messages, 14 records, 417 bytes, 0.094 secs (4436 bytes/sec)
zone my-domain.com/IN: sending notifies (serial 1425047310)
私のドメインではサーバーを更新しました:
- ns.a-server.com (サーバー A - Plesk)
- ns2.a-server.com (サーバー A - Plesk)
- ns3.b-server.com (サーバー B)
結果は@ns3.b-server.com my-domain.com
良さそうです。
サーバー上の他のアプリケーションの設定がまだ終わっていなかったので、一晩オフにすることに決めました。朝、my-domain.com に ping しようとして驚きました。
ping: cannot resolve my-domain.com: Unknown host
私の知る限り、クライアントはマスター DNS サーバーからサーバーの IP を取得しようとしますが、到達できない場合はスレーブ サーバーを試します。この状況では、スレーブ サーバーをオフにしました。では、問題/構成ミスはどこにあるのでしょうか?
ns2.a-server.com を削除する必要がありますか、それとも問題ありませんか?
答え1
をどこで実行するのかは明確ではありませんping
。しかし、
クライアントはマスターDNSサーバーからサーバーのIPを取得しようとします
明らかに間違っています。DNS クライアントは /etc/resolv.conf のサーバーにのみ接続します。サーバーは、次のいずれかの方法で応答することを選択します。
- ドメインの場合
master
、自身のゾーンファイル(自身のローカルディスクのみ)に基づいて応答します。応答は権威あるものとなり、処理は終了します。 - ドメインの場合
slave
、自身のゾーンファイル(自身のローカルディスクのみ)に基づいて応答します。応答は権威あるものとなり、処理は終了します。 - どちらでもない場合は、リクエストを に渡し、
forwarders
処理を終了します。 - 設定されて
master
いない場合、サーバーはインターネット上の DNS に問い合わせて独自に要求を解決しようとします (再帰クエリ - abccom. の場合、さまざまな NS レコードで指定されたさまざまなサーバーに問い合わせて、「.」、「com.」、「c.com.」、「bccom.」、「abccom.」の順に解決しようとします)。回答はサーバーによってキャッシュされ、権限がないため、処理が終了します。slave
forwarders
あなたの場合、 がslave
独自のゾーン ファイルをタイムアウトし、何らかの理由で から新しいファイルを取得できない可能性がありますmaster
。これは考えられる原因の 1 つにすぎません。