TOP設計・移行・活用> IPアドレスを持たないポートのトラフィック監視
Big Brother
Big Brotherによるネットワーク監視

第9回:トラフィック監視(後編)
著者:イー・モバイル  矢萩 茂樹   2006/6/27
前のページ  1  2  3
IPアドレスを持たないポートのトラフィック監視

   今回説明したMRTGのトラフィック監視はメインルータのポート監視を例に説明しています。ルータはレイヤ3のIPパケットの転送を行う装置のため、必ずIPアドレスが振られており、各セグメントの出口になるのでbb-hostsには登録されています。

   ここでネットワーク機器のすべてのポートにIPアドレスが振られるのかというと実はそうではありません。例えばレイヤ3以下の装置であるスイッチやブリッジのポートがそれに該当します。

   これらのポートはIPアドレスで監視はできず、SNMPトラップなどでの「link up/down」イベントで状態変化を監視することになります。トラフィックという観点ではスイッチのEthernetポートも重要な監視ポイントです。この部分をbbmrtg.plで監視するには少々工夫が必要です。

   まず前提条件として、bbmrtg.plはMRTG設定ファイルに埋め込んだ「bb*host[]:」タグの監視対象がbb-hostsに登録されていなければ監視できません。そこでスイッチのポートでトラフィック監視するために、画面表示させるためのダミーのホスト名を割り振ることで解決します。

   dmz-sw0にてポートトラフィック監視する場合のbb-hostsをリスト7に、dmz-sw0のMRTG設定をリスト8に示します(ちなみにリスト8ではスイッチでの計測を想定して測定ターゲットの指定はインターフェース名称をキーに計測するような指定「ex: "#Fa0"」となっています)。

   各ポートの名称はホスト名称+ポート名という形でエントリーを作ります。各エントリー自体にはIPは設定されていませんが、bb-hostsでは対象のIPアドレスが必須となるので、ここはサーバのループバックアドレスを仮に設定します。この上でIP死活監視をしないという「noping」設定をオプションに埋め込みます。

   これでトラフィック監視のためのエントリーが作成されます。あとはホスト名とインターフェース名をあわせた監視項目名を個別に割り振って、リスト8のようにMRTG設定ファイルの中の「bb*host []:」を同じ名前にあわせればいいことになります。

リスト7:bb-hostsの抜粋
172.17.201.30   dmz-sw0
127.0.0.1     dmz-sw0_Fa0   # noping 
127.0.0.1     dmz-sw0_Fa1   # noping
127.0.0.1     dmz-sw0_Fa2   # noping
127.0.0.1     dmz-sw0_Fa3   # noping
127.0.0.1     dmz-sw0_Fa4   # noping
127.0.0.1     dmz-sw0_Fa5   # noping
127.0.0.1     dmz-sw0_Fa6   # noping
127.0.0.1     dmz-sw0_Fa7   # noping

リスト8:mrtg-dmz-sw0.cfgの一部抜粋
#### mrtg-dmz-sw0.cfg : MRTG config for dmz-sw0 : 172.17.201.30
WorkDir: /usr/local/mrtg/data/dmz-sw0

### Interface 1 >> Descr: 'Fa0'
Target[dmz-sw0_Fa0-bps]: #Fa0:ComReadOnly@172.17.201.30:
MaxBytes[dmz-sw0_Fa0-bps]: 12500000
Title[dmz-sw0_Fa0-bps]: dmz-sw0 BPS for Fa0
PageTop[dmz-sw0_Fa0-bps]: <H1>dmz-sw0 BPS for Fa0</H1>
Options[dmz-sw0_Fa0-bps]: growright, bits
YLegend[dmz-sw0_Fa0-bps]: Bits/Sec
bb*host[dmz-sw0_Fa0-bps]: dmz-sw0_Fa0
bb*svc[dmz-sw0_Fa0-bps]: mrtg
bb*yellow[dmz-sw0_Fa0-bps]: 60%
bb*red[dmz-sw0_Fa0-bps]: 80%
bb*unit[dmz-sw0_Fa0-bps]: bytes/sec

Target[dmz-sw0_Fa0-pps]: ifInUcastPkts#Fa0&ifOutUcastPkts#Fa0:ComReadOnly@172.17.201.30:
MaxBytes[dmz-sw0_Fa0-pps]: 180000
Title[dmz-sw0_Fa0-pps]: dmz-sw0 PPS for Fa0
PageTop[dmz-sw0_Fa0-pps]: <H1>dmz-sw0 PPS for Fa0</H1>
Options[dmz-sw0_Fa0-pps]: growright
YLegend[dmz-sw0_Fa0-pps]: Packets/Sec
ShortLegend[dmz-sw0_Fa0-pps]: p/s
bb*host[dmz-sw0_Fa0-pps]: dmz-sw0_Fa0
bb*svc[dmz-sw0_Fa0-pps]: mrtg-pps
bb*yellow[dmz-sw0_Fa0-pps]: 60%
bb*red[dmz-sw0_Fa0-pps]: 80%
bb*unit[dmz-sw0_Fa0-pps]: packets/sec
(以降省略)

リスト9:bbmrtg-dmz-sw0.plの変更部分
32行目: my $MRTGCFG = '/usr/local/mrtg/cfg/mrtg-dmz-sw0.cfg';
42行目: my $HTMLDIR = 'mrtg/dmz-sw0';
45行目: my $IMGDIR = 'mrtg/dmz-sw0';

   設定が完了すると図5のようにスイッチのポートでもトラフィック監視できるようになります。

スイッチポートのトラフィック監視
図5:スイッチポートのトラフィック監視
(画像をクリックすると別ウィンドウに拡大図を表示します)

bbmrtg.plの設定タグについて(オプションタグ)

   MRTGは2系列のデータを収集し、データベース処理の後にグラフ化を行います。通常ではトラフィックデータを取り扱うので、Incoming/Outgoingの2系列となります。これは第1系列方向指定の「LegendI[]:」と第2系列方向指定の「LegendO[]:」というMRTGのタグで設定されており、以下の値がデフォルトとなっています。

'LegendI[fw-dmz-bps]: In'
'LegendO[fw-dmz-bps]: Out'

   bbmrtg.plもこの値に準じた表示を行うのですが、ルータなどのCPU使用率を測定する場合には第1系列を1分間の平均値、第2系列を5分間の平均値で保存する場合もあります。この場合には以下のように設定することで系列の名称表示を変更することができます。

データ種別設定タグ(オプション項目)
bb*in[測定項目]: "第1系列データ種別"
bb*out[測定項目]: "第2系列データ種別"

設定例
bb*unit[fw-dmz-cpu]: "CPU utilization"
bb*in[fw-dmz-cpu]: "in 1min"
bb*out[fw-dmz-cpu]: "in 5min"

   このタグはオプション項目ですので、必要に応じて設定してください。

今回の設定ファイル

   今回の連載で設定した内容を反映したMRTG設定やbb-hostsファイルをダウンロードできるようにしています。皆さんもこれらの例を参考にぜひ実際に試してみてください。

Text  list_file.zip  (ZIPファイル/2.59KB)

前のページ  1  2  3


イー・モバイル株式会社 矢萩 茂樹
著者プロフィール
イー・モバイル株式会社  矢萩 茂樹
2000年、個人で使えるメガレベルのサービスの可能性を目のあたりにしてADSL事業の立ち上げに参加。ADSLによるブロードバンドIPネットワークの設計・企画に従事。その関連業務で気軽に使えるネットワーク監視手法が必要となり、派生的結果としてオープンソースベースのツールをInternetWeekなどで紹介するに至る。現在、空気媒体のブロードバンド実現に向けて奮闘中。


INDEX
第9回:トラフィック監視(後編)
  はじめに
  複数の対象についての監視
IPアドレスを持たないポートのトラフィック監視