RHEL6 BIND9.7 TIPS(DNSSECと時刻同期)

仕事でRed Hat Enterprise Linux 6 Server(以下RHEL6)の設定を検証しています。
インストール手順からRHEL5とは勝手が違うところがあり、戸惑いを隠せません。
手順を間違えばインストール後の再起動で立ち上がったシステムを前に途方に暮れることになります。
(意図して設定しないとネットワークは標準では有効にならないのです)
はっきり言えば初心者には敷居が高くなったということです。


BINDを使ったDNSキャッシュサーバで名前解決が出来なくなる事象が発生しました。
RHEL6に含まれるBINDは9.7系で標準でDNSSECに対応していますが、これが原因なのは明らかです。
rndc validation off」コマンドを実行してDNSSEC検証を無効にすると名前解決が出来るから。
ログを見てもエラーは出力されているのですが、問題点が理解出来ず、またgoogleで検索してもヒットするのは海外のサイトばかりで、情報の少なさと自分の力不足を痛感しました。

原因は第3回 キャッシュDNSサーバのDNSSEC対応(@IT)のキャッシュDNSサーバ運用時の留意点に書いてありました。

(ここから引用)
■時刻の同期
近年はNTPによる時刻同期が普及しているため、サーバの多くでは時刻が正確な状態にあるだろう。しかし、NTPクライアントの設定ミスや通信の問題により、キャッシュDNSサーバの時刻が不正確になっていることも考えられる。
DNSSECの署名には有効期間が指定されており、有効期間外の署名は無効なものとして扱われる。このため、キャッシュDNSサーバの時刻が大幅にずれていると、署名の検証に失敗し、名前解決が一切できない状態になってしまう可能性がある。キャッシュDNSサーバの時刻が合っているか、また時刻同期が正常に動いているか、確認していただきたい。
(ここまで引用)

「名前解決が一切できない状態になってしまう可能性がある」の「可能性がある」は要らなかったです。
検証していたマシンがVMWare ESXiの仮想マシンであった為、時刻が正確ではなかったのです。
仮想マシンは長時間運用すると時刻が狂いやすい環境にありますので、メンテナンスフリーでサーバ運用する場合にはNTPで時刻同期を正確にする必要があります。
RHEL6のNTPクライアントは初期設定のままで起動しますので、そのまま使うこともできますし、時刻同期をするNTPサーバの指定を変更することもできます。