権威DNSサーバーはどのように監視すればよいですか?:DNS Tips
権威DNSサーバーに対する監視は、一般的なWebサーバーなどと同様「死活監視」「リソース監視」「ログ監視」を行うとよい。
権威DNSサーバーは、一般的なWebサーバーなどと同様「死活監視」「リソース監視」「ログ監視」を行うとよい。例えば、死活監視では、監視用ホストなどから定期的にPing応答確認やDNSの応答確認を行い、リソース監視では、CPU使用率、メモリ使用率、ディスク使用率、送受信トラフィック量、送受信パケット量の短期的、長期的な取得を行うといった具合である。一方、ログ監視では、一般的なOSが出力するログに加えて、DNSサーバーソフトウェアが出力するログを取得するとよい。
DNSサーバーソフトウェアによっては、DNSの問い合わせ(クエリ)内容を全てログ出力する機能があり、そのような機能を使って出力したログを定期的に分析することができる。しかしながら、大規模なサーバー構成や大量の問い合わせを受ける権威DNSサーバーの場合は膨大なログとなり、分析が難しいケースも出てくるだろう。
そのような場合には、統計ツールを活用できる。例えば、DNS関連のさまざまなツールを開発している米国のThe Measurement Factoryが公開している「DSC(DNS Statistics Collector)」は、DNSに特化した統計ツールの定番として広く使われている。
DSCを使用することで、リソースレコード別の問い合わせ数、問い合わせ内容の傾向などを素早く確認することができる。同様のツールとして、DNSを専門領域として研究開発を行うSinodun Internet Technologies Ltd.が開発している「hedgehog」などもある。
hedgehogはICANNの運用するLルートサーバーで使われており、Lルートサーバーの統計Webサイトを見ると、どのようなツールであるかがつかめると思う。
また、複数台の権威DNSサーバーを稼働させている場合には、ゾーン情報を更新した際に、全てのセカンダリサーバーのゾーン情報も適切に更新されていることを確認することが重要である。簡単な方法としては、プライマリサーバー、セカンダリサーバーのゾーン情報のSOAシリアルを定期的に比較することで、適切にゾーンが更新されているか確認できる。
ここでは、digコマンドを使って“.jp”の権威DNSサーバーであるa.dns.jpとb.dns.jpで.jpゾーンのSOAシリアルが一致しているかを確認する例を示す。
$ dig +short +norec @a.dns.jp jp -t SOA
z.dns.jp. root.dns.jp. 1413990904 3600 900 1814400 900
→ SOA Serial値は 1413990904
$ dig +short +norec @b.dns.jp jp -t SOA
z.dns.jp. root.dns.jp. 1413990904 3600 900 1814400 900
→ SOA Serial値は 1413990904
どちらとも同一の値であるため、a.dns.jpとb.dns.jpでゾーン情報が一致していることが分かる。
Copyright © ITmedia, Inc. All Rights Reserved.