エラーメッセージの対処

いままでずっと/var/log/messageに出ていたエラーメッセージ

hostname dhcpd: if hostname.network IN A rrset doesn’t exist
add hostname.network 300 IN A 192.168.1.2: timed out.

を出なくしようと、いろいろやってみることに。

環境は、FreeBSD7Releaseでやってます。

まず、bind(named)の設定変更をしてみた。

1.bindがDynamic DNSを受け付けなければならない。

これは結構すぐだと思ったのですが

BINDでDynamicDNS環境構築

allow-updateを/etc/namedb/named.confに加える。

だけで終わるはずだったのですが、なぜかうまくいかない。

エラーは、dns_rdata_fromtext: ./master/192.168.1.rev:2: near eol:
unexpected end of input

まあ書き込めないとのことなのでmasterディレクトリをchownしてbindにして、再起動。

で再起動した後に見るとさっきchownしたのが元に戻ってました。

で、/etc/namedbの下には、他にいくつかディレクトリがあって

いかにもっていう「dynamic」って言うディレクトリがしかもオーナーがbindってことで

ここのzoneファイルとrevファイルを置かないといけないようで、ここに配置することで

無事DNSのDynamic DNSの受け付け設定成功。

おそらくセキュリティあげるために変更になっているのだと思います。

2.でもこれだけでは、さっきのエラーは直らなくて、次の問題は

dhclientが/etc/resolve.confを書き換えてしまうため、
dhcpdが追加をISP側のnameserverに

問い合わせに行ってるようで、当然拒否とかつながらないわなってわけでした。

で/etc/dhclient.confにdhclientがdhcpサーバからもらう情報を選ぶというのがあって

resolv.conf が勝手に書き換わる:リファレンス – ZDNet Japan

をやってみたのですが、相変わらず書き換わってしまいました。

たぶん設定で絶対に全部送るって設定になってるのかな?どっちにしろこれでは

不都合なので、またいろいろ調べると

dhclient.confで上書きする設定をすることができるとのことなので

雨と樹海とFreeBSDとresolv.confを勝手に書き換えちゃ嫌

supersedeというコマンドで上書きをしてもらえるので、
これでdhclientによる/etc/resolve.conf

書き換えの被害は終了。

やっと初期のエラーはなくなりましたが、

zone ‘network’ allows updates by IP address, which is
insecure

ってエラー?が出るようになりました。探してみると

@IT:Dynamic DNSとnsupdateコマンド(3/3)

IPアドレスでDNSupdateを受け付けるのは危険だよってことらしいですが、

起動時だけなのでいいかな。