【検証】どんなログが取れる?監視・DHCP・DNS・NTPサービスのログを見てみた

みなさん、こんにちは。技術系の記事を担当しています、瀬口です。

今回は、EasyBlocks リソース監視やEasyBlocks DDN1からどのようなログが出力されるのか、実際にSyslogを収集してみましたので、ご紹介します。

EasyBlocks リソース監視やEasyBlocks DDN1を運用するうえで、

Syslogサーバーにはどんなログが送られるの…?

障害が起きたとき、どのログが手がかりになるの…?

といったご質問をいただくことがあります。

障害が起きたときに「いつ、何が起きたのか」を後から追うためには、どのようなログが、どのタイミングで出力されるのかを事前に把握しておくことが大切です。

本記事では、EasyBlocks リソース監視とEasyBlocks DDN1から出力されるログをSyslogサーバーで受信し、どのような内容のログが、どのタイミングで出力されるのかをまとめました。

 

はじめに

EasyBlocks リソース監視は、ネットワーク機器やサーバーの死活監視・リソース監視・トラフィック監視を行えるアプライアンスです。一方で、EasyBlocks DDN1は、DHCP・DNS・NTPサーバーの機能を1台にまとめたアプライアンスです。

どちらもSyslog通知機能を備えており、出力したログをSyslogサーバーへ転送できます。Syslogサーバーにログを集めておくことで、過去の監視状況や払い出し状況などのログを、後から確認できます。また、サービス起動時・停止時のログやEasyBlocksの稼働状況も同様に確認できます。

本記事では、以下の5つのログを確認しました。

  1. 監視サービスのログ(EasyBlocks リソース監視)
  2. DHCPサービスのログ(EasyBlocks DDN1)
  3. DNSサービスのログ(EasyBlocks DDN1)
  4. サービス起動・停止のログ(共通)
  5. 稼働状況のログ(共通)

検証するモデル

今回は、以下の2機種から出力されるログを確認しました。

製品名 バージョン 主な機能 確認するログ
EasyBlocks リソース監視 Ver.1.1.0 死活監視・リソース監視・トラフィック監視 監視サービス、サービス起動・停止、稼働状況のログ
EasyBlocks DDN1 Ver.1.1.3 DHCP・DNS・NTPサービス DHCP・DNSサービス、サービス起動・停止、稼働状況のログ

なお、ログの受信にはEasyBlocks Syslog(Ver.1.2.2)を使用し、受信したログはWeb UIのログ表示画面で確認しました。

検証方法

EasyBlocks リソース監視、EasyBlocks DDN1より出力されたログをEasyBlocks Syslogへ転送し、ログを確認します。

検証するログと操作内容

今回検証するログは下記のとおりです。

ログ 出力元 ログを出力させる操作
監視サービス EasyBlocks リソース監視 監視対象を停止・復旧させる
DHCPサービス EasyBlocks DDN1 クライアントPCからIPアドレスの取得・更新・解放を行う
DNSサービス EasyBlocks DDN1 クライアントPCから名前解決を行う
サービス起動・停止 EasyBlocks リソース監視
EasyBlocks DDN1
各サービスを起動・停止する
稼働状況 EasyBlocks リソース監視
EasyBlocks DDN1
なし(定期通知)

※ EasyBlocks 監視シリーズのSNMP Trapメール転送機能については、受信したSNMP Trapをそのままメール転送する機能となり、受信時にSyslogは出力されません。
※ 本記事では、システムログ転送で出力されるシステムログは確認していません。なお、サービス起動・停止と稼働状況のログは、システムログ転送がオフでも出力されます。

Syslog通知設定

Syslog通知機能を有効にすると、指定したSyslogサーバーへSyslogが送信されます。また、EasyBlocks本体の稼働状況のログと、サービスの起動・停止のログについては、Facilityを<local0〜local7>の中から指定できます。

今回は、EasyBlocks リソース監視は<local3>、EasyBlocks DDN1は<local5>としています。

Syslog通知機能

この設定が適用されるのは、稼働状況とサービスの起動・停止のログのみです。
監視サービスのログは<local4>、リースファイルの管理ログは<local0>で出力されます。
DHCP・DNSサービスのログは後述の設定で指定したFacilityにて出力されます。

DHCP・DNSのログについて

DHCPサービスとDNSサービスでは、Syslog通知機能とは別に、それぞれのサービスで、ログの取得内容ごとに有効・無効を設定できます。また、Facilityも<daemon、user、local0〜local7>の中から指定できます。
今回は、DHCPサービスとDNSサービスはどちらも<daemon(初期値)>としています。

DNSサービスのログ取得設定

検証結果

監視サービスは監視対象の状態が変わったとき、DHCPサービスとDNSサービスは端末が通信するたびに、ログが出力されました。NTPサービスは、起動・停止したときのみログが出力されました。

監視サービスのログ

EasyBlocks リソース監視の監視サービスより出力されたログは以下のとおりです。

EasyBlocks リソース監視の監視サービスのログ
メッセージ 内容
① PROBLEM Service Alert:
[監視対象名]/[監視項目名] is CRITICAL
監視対象の障害発生(CRITICAL)を検知した
② RECOVERY Service Alert:
[監視対象名]/[監視項目名] is OK
監視対象の復旧を検知した

※ [監視対象名]は、監視対象を登録した際の名称です(例:NAS、Webcam)。
  [監視項目名]は、監視パターンまたはリソース監視の設定で登録した際の名称です(例:PING、HTTP)。

①障害発生のときは「PROBLEM」、②復旧のときは「RECOVERY」から始まるため、メッセージを見るだけで監視対象の障害発生・復旧のタイミングがわかります。

障害発生の状態は、CRITICAL(異常のしきい値を超えた、または応答がない)のほかに、WARNING(警告のしきい値を超えた)やUNKNOWN(監視結果を取得できない)の場合も、仕様上は出力されます。(今回の検証ではCRITICALとOKを確認しました)

また、Facility・Priority・プログラムはいずれのログも共通で、Facilityは<local4>、Priorityは<info>、プログラムは<monitor>でした。

このことから、障害発生・復旧が起きた日時や、どの監視対象のどの監視項目で発生したか確認できます。

DHCPサービスのログ

EasyBlocks DDN1のDHCPサービスより出力されたログは以下のとおりです。

EasyBlocks DDN1のDHCPサービスのログ(取得)
メッセージ 内容
① DHCP4_QUERY_LABEL クライアントからの要求を受信する(DHCPDISCOVERにあたる)
② DHCP4_LEASE_OFFER サーバーが割り当てるIPアドレスを提示する(DHCPOFFERにあたる)
③ DHCP4_QUERY_LABEL クライアントからの要求を受信する(DHCPREQUESTにあたる)
④ DHCP4_LEASE_ALLOC サーバーが割り当てを確定する(DHCPACKにあたる)
⑤ LFC_START〜LFC_TERMINATE リースファイルを定期的に整理する(リースファイルの管理ログ)
⑥ DHCP4_RELEASE クライアントがIPアドレスを解放した(DHCPRELEASEにあたる)

①〜④の流れから、「いつ、どのMACアドレスの端末に、どのIPアドレスを払い出したか」が確認できました。同じtid(トランザクションID)の行が、同じ端末とのやり取りです。なお、端末によっては、その後の更新でも同じtidが使われます。

なお、①と③は同じメッセージですが、②の提示の前の要求がDISCOVER、④の確定の前の要求がREQUESTにあたります。

⑤のリースファイルの管理ログは、端末の通信とは関係なく定期的に出力されます。普段の運用で確認することは少ないですが、「errors」が0以外のときは、確認しておくと安心です。

 

次に、クライアントがIPアドレスを解放したときと、リースを更新したときのログは以下のとおりです。

EasyBlocks DDN1のDHCPサービスのログ(更新・解放)

クライアントがIPアドレスを解放すると、⑥のログが出力されます。
その後、IPアドレスを取り直す際には、②の提示と④の確定が出力されています。

また、取り直した後は、②が出力されずに④だけが約9〜11時間ごとに出力されました。これがリースの更新にあたります。リース時間(今回は24時間)の半分前後のタイミングで、端末が自動的に更新していました。
※この画像では、①・③(要求の受信)のログを省略しています。

なお、Priorityはいずれも<info>でした。Facilityとプログラムは、①〜④と⑥が<daemon>と<kea-dhcp4>、⑤が<local0>と<DhcpLFC>です。

このことから、どの端末に、いつ、どのIPアドレスを払い出し、いつ解放・更新されたかを確認できます。

DNSサービスのログ

EasyBlocks DDN1のDNSサービスより出力されたログは以下のとおりです。

EasyBlocks DDN1のDNSサービスのログ
メッセージ 内容
① client … query: [ドメイン名] IN A + ([DDN1のIPアドレス]) 名前解決の問い合わせを受信した(クエリーログ)
② zone [ゾーン名]/IN: loaded serial [シリアル番号] ゾーンを読み込んだ
③ all zones loaded / running すべてのゾーンの読み込みが終わり、DNSサービスが起動した

①はクエリーログ取得を有効にした場合に出力され、問い合わせたクライアントのIPアドレス、問い合わせたドメイン名、問い合わせの種類(AはIPv4、AAAAはIPv6、PTRはIPアドレスから名前を調べる逆引き)がわかります。ただし、回答したIPアドレスや名前解決の成否は、今回の設定ではログに出力されませんでした。

②では、読み込んだゾーンの名前とシリアル番号がわかります。シリアル番号はゾーンを更新すると増えるため、設定変更の後に番号が変わっていれば、反映されたことを確認できます。

なお、Facilityは<daemon>、プログラムは<named>で共通でした。Priorityは、①・②が<info>、③が<notice>です。

このことから、どの端末がどのドメインを問い合わせたか、またゾーンが読み込まれたかを確認できます。

サービスの起動・停止のログ

EasyBlocks リソース監視、DDN1より出力されたサービの起動・停止に関するログは以下のとおりです。

サービスの起動・停止のログ
メッセージ 内容
① [サービス名]サービスを有効にしました / 無効にしました Web UIでサービスを有効・無効にした
② [サービス名]サービスを起動しました。 / 停止しました。 サービスが起動・停止した
③ [サービス名]サービスをリロードしました。 サービスの設定を再読み込み(リロード)した

※ [サービス名]には、DHCP、DNS、NTP、監視などのサービス名が入ります。

サービスを有効にすると「有効にしました」に続いて「起動しました。」が、無効にすると「無効にしました」に続いて「停止しました。」が出力されました。日本語のメッセージで出力されるため、どのサービスをいつ操作したかがすぐにわかります。

また、DNSサービスは「設定のリロード」が可能なため、③サービス設定の再読み込みのログも出力されます。

なお、Priorityは<info>、プログラムは<easyblocks>で共通でした。FacilityはSyslog通知機能で指定した値になり、今回はリソース監視が<local3>、DDN1が<local5>でした。

このことから、いつ、どのサービスを有効・無効にし、起動・停止したかを確認できます。

稼働状況のログ

EasyBlocks リソース監視、DDN1より出力された稼働状況のログは以下のとおりです。

EasyBlocksの稼働状況のログ
メッセージ 内容
Running notice: [uptime] [時刻] up [稼働時間], [ユーザー数] user, load average: [1分], [5分], [15分] EasyBlocks本体の稼働状況を通知した

EasyBlocks本体の稼働状況のログは、異常の有無にかかわらず15分ごと(毎時00分・15分・30分・45分)に出力されます。メッセージからは、起動してからの稼働時間、ログインしているユーザー数、直近1分・5分・15分のCPU負荷の平均(load average)がわかります。

なお、Priorityは<info>、プログラムは<easyblocks>で共通でした。Facilityは、サービスの起動・停止のログと同じく、Syslog通知機能で指定した値になります。

稼働状況のログが途切れた場合は、機器の停止や通信の断絶などが考えられるため、機器の稼働状況を確認する目安になります。

検証からわかる注意点

  • 監視サービスのログはPriorityがすべて<info>: 障害発生時と復旧時のログはどちらも<info>で出力されるため、Priorityでは障害発生のログだけを絞り込めません。

  • Facilityはログによって決まり方が異なる:設定で指定した値になるログのほかに、監視サービスのログ<local4>やリースファイルの管理ログ<local0>で出力されるため、Facilityで絞り込むと見落とすおそれがあります。

  • DHCPの取得と更新は同じメッセージ: 取得と更新はどちらも「DHCP4_LEASE_ALLOC」で出力されるため、直前に提示(DHCP4_LEASE_OFFER)があるかどうかで見分けます。

  • DNSのクエリーログは取得を有効にした場合のみ出力:名前解決の結果(回答したIPアドレスや成否)は、今回の設定ではログに出力されませんでした。

  • NTPは起動・停止のログのみ: 今回の検証では、どの端末が時刻同期したかは、ログから確認できませんでした。

ログを確認する場合のフィルタリング例

EasyBlocks Syslogのログ表示画面のフィルタ機能を使用することで、受信したログのなかから必要なログを絞り込むことができます。今回確認したログをもとに、用途ごとのフィルタリング例をまとめました。

用途 ホスト プログラム メッセージ
障害発生のログだけを確認する リソース監視 monitor PROBLEM
特定の監視対象のログを確認する リソース監視 monitor [監視対象名]
特定の端末へのIPアドレスの払い出しを確認する DDN1 kea-dhcp4 [MACアドレス]
特定のドメインを問い合わせた端末を確認する DDN1 named query: [ドメイン名]
サービスの起動・停止を確認する 確認したい機器 easyblocks サービスを

設定のポイント

  • 監視サービスのログは障害発生でもPriorityが<info>のため、Priorityではなくプログラムとメッセージで絞り込む

  • 障害発生のログは「PROBLEM」で絞り込むと、CRITICALに加えて、WARNINGやUNKNOWNの障害発生ログもまとめて確認できる

  • Facilityは設定によって変わるため、プログラムで絞り込むのが確実

  • サービスの起動・停止や稼働状況のログは複数の機器から出力されるため、ホストもあわせて指定する

  • 障害が起きた日時がわかっている場合は、対象の期間を絞って検索する

フィルタの条件によって検索時間がどのくらい変わるかは、「【検証】ログ検索には何秒かかる?フィルタリングの検索時間を測ってみた」で記事で紹介していますので、あわせてご覧ください。

まとめ

今回は、EasyBlocks リソース監視とEasyBlocks DDN1から出力されるログについてご紹介しました。

  • 監視サービスのログ:障害発生(PROBLEM)と復旧(RECOVERY)のタイミングと、どの監視対象のどの監視項目で発生したかがわかる

  • DHCPサービスのログ:どの端末に、いつ、どのIPアドレスを払い出したかがわかる

  • DNSサービスのログ:クエリーログ取得を有効にすると、どの端末がどのドメインを問い合わせたかがわかる。ゾーンの読み込みも確認できる

  • サービス起動・停止のログ:いつ、どのサービスを有効・無効にし、起動・停止したかが日本語のメッセージでわかる

  • 稼働状況のログ:15分ごとに出力され、機器が稼働しているかを確認できる

監視のメール通知で障害発生に気づいたら、Syslogサーバーに集めた各ログを時系列で確認することで、原因の切り分けに役立ちます。たとえば、同じ時間帯に複数の監視対象がまとめてCRITICALになっている場合は、個々の機器ではなく、スイッチやルーターなど経路上の障害の可能性を考える手がかりになります。

また、障害の直前にサービスの停止や設定のリロードが行われていないかを、サービス起動・停止のログから確認することもできます。DHCPサービスのログをSyslogサーバーに保存しておけば、「ある時刻にこのIPアドレスを使っていたのはどの端末か」を後から調べる手がかりになります。

EasyBlocks リソース監視やEasyBlocks DDN1の運用、ログの活用方法についてご不明な点がございましたら、お気軽にお問い合わせください。

▼ 今回ご紹介した製品はコチラ ▼

EasyBlocks シリーズ | ぷらっとホーム株式会社
ぷらっとホーム EasyBlocksシリーズは、企業で必要なネットワークでの各サーバー機能を専用サーバーとして独立させ、使いやすくしたアプライアンスです。
EasyBlocksについてもっと知りたい方へ
製品選定・導入のご相談はお気軽にどうぞ

EasyBlocksシリーズは、Syslog・DHCP・DNS・リソース監視を専用アプライアンスで手軽に導入できる製品です。製品選定・見積もり・技術的なご質問など、担当者が個別にご対応します。

タイトルとURLをコピーしました