STAGE 06 / 6-1 ネットワーク運用

NTP・Syslog・SNMP

考えてみよう

障害が起きたとき、ルーターAのログには「10時00分に発生」、ルーターBのログには「9時58分に発生」と記録されていたら、どちらが正しい時刻で、原因調査はスムーズに進むでしょうか?

複数の機器のログを突き合わせて障害の原因を調べるとき、時刻がバラバラだと調査は難航します。まず何を揃える必要があるか、考えてみてください。

運用の3本柱:時刻・記録・監視

僕自身、現場でログを見ながら「あれ、この機器だけ時刻がずれてる……」と原因調査が振り出しに戻った経験があります。ネットワーク運用では、時刻を合わせる(NTP)出来事を記録する(Syslog)状態を監視する(SNMP)という3つの仕組みが土台になります。この章では、この3本柱を順番に見ていきます。

NTP:全機器の時計を1つに合わせる

NTP(Network Time Protocol)は、ネットワーク上の機器の時刻を正確な時刻源に同期させるプロトコルです。時刻の正確さはストラタム(stratum)という階層で表され、原子時計やGPSなど基準時刻に直結するサーバがストラタム0、そこから1ホップ離れたサーバがストラタム1、というように数字が大きいほど基準から遠いことを示します。

ルーターをNTPクライアントとして動作させ、外部のNTPサーバと時刻同期させるには、次のように設定します。

Router(config)# ntp server 192.168.1.100

同期状況を確認するコマンドは次のとおりです。

Router# show ntp status
Router# show ntp associations

すべての機器の時刻が揃っていて初めて、複数の機器のログを時系列で正しく突き合わせることができます。

Syslog:出来事を記録する仕組み

Syslogは、機器で発生したイベント(インターフェースのダウン、設定変更など)をメッセージとして記録・送信する仕組みです。ログはローカルのバッファに残すだけでなく、専用のSyslogサーバに集約して送るのが一般的です。

Router(config)# logging host 192.168.1.200
Router(config)# logging trap informational

logging host で送信先のSyslogサーバを指定し、logging trap でサーバに送るメッセージの重要度(レベル)のしきい値を指定します。

Syslogメッセージには、緊急度を示す重大度レベル(severity level)が0〜7の8段階で付けられます。

レベル名称意味覚え方の例
0Emergencyシステム使用不能急事態
1Alert直ちに対応が必要対応
2Critical致命的な状態
3Errorエラー状態
4Warning警告状態
5Notice正常だが注意すべき事象づき
6Informational参考情報らせ
7Debugデバッグ用の詳細情報かい

数字が小さいほど深刻な問題です。「緊急の0が一番怖い」「debugの7は開発者向けの細かい情報」とイメージすると覚えやすいでしょう。語呂合わせとしては「0:緊急事態!アラート!危機一髪、誤りに注意、気づいて知らせて、でばっぐ」のように、0〜7の頭文字(Emergency, Alert, Critical, Error, Warning, Notice, Informational, Debug)を意識すると定着しやすいです。

SNMP:機器の状態を外から監視する

SNMP(Simple Network Management Protocol)は、管理ステーション(NMS)がネットワーク機器のCPU使用率やインターフェースの状態といった情報を取得・監視するためのプロトコルです。

SNMPにはいくつかのバージョンがあり、CCNAでは主にSNMPv2cSNMPv3の違いが問われます。SNMPv2cはコミュニティ文字列(いわば合言葉)による認証のみで、平文でやり取りされるためセキュリティ強度が低いのに対し、SNMPv3は認証と暗号化に対応しており、より安全です。

機器側で異常を検知した際に、管理ステーション側からの問い合わせを待たずに自発的に通知する仕組みがトラップ(trap)です。「聞かれたら答える」のがSNMPの基本動作(GET)ですが、トラップは「異常があれば自分から知らせる」動作という違いがあります。

Router(config)# snmp-server community public RO
Router(config)# snmp-server host 192.168.1.200 version 2c public

確認問題

Syslogのメッセージで、あるインターフェースが物理的にダウンしたことを示す重大度レベルとして最も近いのはどれでしょう(0〜7のうち、緊急事態というより「エラー状態」に相当するレベル)?

答えを見る

インターフェースダウンは一般にレベル3(Error)として記録されることが多いです。数字が小さいほど深刻な問題を示し、0(Emergency)はシステム全体が使用不能な最も深刻な状態、7(Debug)は開発者向けの詳細情報です。試験ではこの0〜7の並び順と意味を正確に覚えておくことが重要です。

確認問題

SNMPv2cとSNMPv3を比較したとき、SNMPv3が優れている点として最も適切なのはどれでしょう?

答えを見る

答えは認証と暗号化に対応している点です。SNMPv2cはコミュニティ文字列による認証のみで、通信内容も平文でやり取りされるためセキュリティ強度が低いのに対し、SNMPv3は認証・暗号化の両方に対応しており、より安全に機器を監視できます。

試験でのポイント

CCNA試験では、NTPのストラタムの考え方(数字が小さいほど基準時刻に近い)、Syslogの重大度レベル0〜7の並び順と意味(数字が小さいほど深刻)、SNMPのバージョンごとのセキュリティレベルの違い(v2cはコミュニティ文字列のみ、v3は認証・暗号化に対応)がよく出題されます。また、SNMPの「GET(問い合わせ)」と「トラップ(自発通知)」の動作の違いを取り違えるひっかけ問題にも注意してください。時刻同期・ログ収集・監視はそれぞれ別の目的を持つ仕組みですが、「障害調査を効率化するための運用基盤」という共通の目的でつながっている、という全体像も意識しておくと、シナリオ問題に強くなります。

ゆみちゃん
ゆみ

NTPで時刻を揃えて、Syslogでログを集めて、SNMPで監視する——この3点セットが揃って、はじめて「何かあったときにすぐ調べられる」ネットワークになるんだよ。Syslogのレベル0〜7は数字が小さいほど深刻、これだけは絶対に忘れないでね。次はQoS、通信の「優先順位」の話だよ。