前回はBIND9のインストールとchroot環境の準備をしました。
今回は、BINDの中核ファイルである「named.conf」の設定を学んでいきます。
まずは「/var/named/chroot/etc/named.conf」を開いて、以下内容の記述をコメントアウトします。
コメントアウトするには行頭に"//"を挿入します。
listen-on port 53 { 127.0.0.1; }; listen-on-v6 port 53 { ::1; }; allow-query { localhost; };
上記は、外部からの接続を受け付けさせない設定のため無効にします。
そして、以下を追加します。
recursion no;
上記は、リゾルバDNSの役割を無効にし、ゾーンのレコード情報のみを提供するためのものです。
再起問い合わせはDNSサーバのメモリを大幅に消費するため、特に必要がない場合は無効にしておきます。
ただし、再起問い合わせを無効にすると自ホストからの再起問い合わせも無効にするため、BINDの設定及び起動が無事完了したら、「/etc/resolv.conf」のnameserverを外部のリゾルバDNSサーバにして、名前解決ができるようにします。
ここではテスト環境のため、フルサービスリゾルバとしてローカルホスト(自分自身)を指定しています。
# Generated by NetworkManager nameserver 127.0.0.1
以下でzoneを追加します。
zone "dns-book.com" IN { type master; file "dns-book.com.zone"; allow-update { none; }; allow-transfer { 192.168.0.1; }; also-notify { 192.168.0.1; }; };
上記内容の説明は以下となります。
- 1行目:ゾーン名を記述
- 2行目:マスターサーバを記述
- 3行目:ゾーンファイル名を記述
- 4行目:動的更新を許可するホストを記述(通常はnone)
- 5行目:ゾーン転送を許可するホストを記述(通常はスレーブサーバ)
- 6行目:NOTIFYメッセージを有効化
上記6行目のNOTIFYメッセージとは、マスターサーバで設定の変更があった際に、マスターサーバからスレーブサーバにNOTIFYメッセージを送信します。
これを受け取ったスレーブサーバがゾーン転送要求をし、これによりゾーン情報の同期がスムーズに行うことができます。
最後にnamed.confが正しく記述できているか構文チェックを行います。
> /usr/sbin/named-checkconf /etc/named.conf
特に何も返ってこなければ、正しく記述されています。
以上がnamed.confの設定になります。
次回ではzoneファイルの設定について学んでいきます。