Categories
SugiBlog ホームページ制作・システム開発

セカンダリDNSサーバーの設定

自前でセカンダリDNSサーバーを構築する際の設定例をご紹介します。

まずプライマリDNSサーバーの設定。
/etc/named.confでセカンダリを用意したいドメインのゾーン設定を修正します。

zone "example.jp" in {
    type master;
    file "example.jp";           //ゾーン設定ファイルを指定
    allow-transfer { 0.0.0.0; }; //セカンダリDNSサーバーのIPアドレス
};

allow-trasferでセカンダリDNSサーバーからのゾーン転送を許可する。※セキュリティ上必須

次にセカンダリDNSサーバーの設定をします。
/etc/named.conf

zone "example.jp" in {
    type slave;               //セカンダリなのでタイプをスレーブに指定
    file "slaves/example.jp"; //ゾーン設定ファイルを指定(省略可)
    masters { 0.0.0.0 };      //プライマリDNSサーバーのIPアドレス
};

それぞれnamedを再起動し設定完了。
ちなみに、ゾーン転送はTCP53ポートを使用するらしいのですが、UDPを解放しないとできなかった。

最後にちゃんと転送されているかログを確認。/var/log/messages
プライマリのログ

client セカンダリIP#ポート: transfer of 'example.jp/IN': AXFR-style IXFR started

セカンダリのログ

zone example.jp/IN: transferred serial プライマリに設定されているシリアル transfer of 'example.jp/IN' from プライマリIP#53: end of transfer

以上のようなログが記録されていればOK。

ゾーン転送が失敗するときの例
通信不能

transfer of 'example.jp/IN' from プライマリIP#53: failed while receiving responses: REFUSED

allow-transferで許可されていない

received notify for zone 'example.jp': not authoritative

ポートが閉じている(いずれか)

zone example.jp/IN: refresh: failure trying master プライマリIP#53: time out
zone example.jp/IN: refresh: failure trying master プライマリIP#53: operation canceled
zone example.jp/IN: refresh: retry limit for master プライマリIP#53 exceeded

設定が成功すると、プライマリの情報を書き換えた際、セカンダリで自動的に設定を読み込むので、
セカンダリのログをtail -fで表示し、プライマリの情報を書き換えてみてください。

2,088 views

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*