FreeBSD 5.3R で、ベースシステムに初めて bind 9 が導入(bind 9.3.0) され、
FreeBSD 5.4R で、最新の bind (bind 9.3.1) になっています。
このとき、bind 9.3.0 で動作していた named.conf をそのまま使おうとしても、用をなしません。
bind 9.3.0 で使っていた named.conf をそのまま用いて bind 9.3.1 で起動すると、こんなエラーになります:
Jun 8 00:26:33 ns named[269]: could not listen on UDP socket: permission denied
Jun 8 00:26:33 ns named[269]: creating IPv4 interface rl0 failed; interface ignored
もちろん、nslookup や dig などでDNSリクエストしても無応答です。
これは、named.conf にこのような記述を設定することで、回避できます:
※赤文字の部分を追加
--- ここから
options {
directory "/etc/namedb";
pid-file "/var/run/named/pid";
dump-file "/var/dump/named_dump.db";
statistics-file "/var/stats/named.stats";
listen-on { 172.16.1.16 ; 127.0.0.1 ; } ;
};
--- ここまで
DNSリクエストを受け付けたい全てのIPアドレスをセミコロンで区切って指定します。
127.0.0.1 はIPv4 のループバックなので、必ず指定します。
これに気が付くのに、情報不足もあって2~3日かかりました...orz