マスターサーバーの IP を一か所で管理する (CentOS 4.5): Linux の使い方


スレーブサーバーを設定する

CentOS 4.5 では DNS サーバーとして BIND が採用されています。

スレーブサーバー(セカンダリー DNS)を構築する場合において、以前に セカンダリ DNS サーバーを構築する のところでマスターサーバーの IP アドレスを "masters" を使って冒頭に定義しておく方法を記していましたけれど、この方法で CentOS 4.5 の BIND 9.2.4 を設定しようとしてみたところ、"unknown option 'masters'" と言われて設定できませんでした。

かといって各ゾーンごとに "masters" を指定していては、IP アドレスが変更となった場合などに、管理が大変になり、また設定ミスにもつながってしまいます。

そこで、今回は "include" を使用して、マスターサーバーの IP を一か所で管理する方法について、記してみたいと思います。

 

まず、"/var/named/conf" ディレクトリーを作成して、その中に "masters.conf" ファイルを次のような内容で作成します。

masters

{

192.168.0.3;

};

このようにして、あらかじめ "masters" の記載だけを別のファイルに持たせておきます。

あとはゾーン設定の中で、次のようにして "masters.conf" ファイルをインクルードしてあげます。

zone "domain.xxx.xx.jp"

{

type    slave;

file    "slaves/domain.xxx.xx.jp";

 

include    "/var/named/conf/masters.conf";

};

こうすることで、もしマスターサーバーの IP アドレスが変更となっても、各ゾーンの "masters" をひとつずつ修正しなくても、"masters.conf" ファイル内の IP アドレスを変更することで対応できるようになります。

 

なお、CentOS 5.5 の BIND 9.3.6 では "masters" をゾーン定義の外で指定して、マスターサーバーの IP アドレスを一か所で管理できるようでした。

その辺りについては、セカンダリ DNS サーバーを構築する の中でお話ししていますので、必要に応じてそちらも参考にしてみてください。