本記事は2017年12月4日に公開した記事をアップデートしたものです
システム管理者が頭を悩ます最も一般的な課題の1つは、「だれが帯域幅を消費しているのか?」ということです。
ネットワークが遅く、ユーザーが不平を言い、インターネット接続負荷が100%になるという問題がしばしば発生します。 すべての帯域幅を、だれが、どのように利用しているのかを把握する必要があります。 この記事では、さまざまな状況で利用可能なさまざまな方法と、SNMP、RMON、フロー、パケットスニファーを使用して原因を追跡する方法について説明します。
使用可能なソリューションは、使用しているハードウェアと、そのハードウェアに対する管理アクセス権によって大きく異なります。
どのタイプのハードウェアを使用しているか?
エンタープライズ向けのハードウェアは、SOHOまたはコンシューマー向けのハードウェアよりも多くの可能性を提供します。たとえば、ポートミラーリングは、コンシューマー向けの機器ではほとんどサポートされていません。
どのハードウェアベンダーを使用しているか?
NetFlowなどの最も有用なプロトコルの一部は、すべてのベンダーでサポートされていません。したがって、フローを使って帯域幅を監視する機能は、フロープロトコルをサポートするベンダーやモデルに限定されます。
どのような管理アクセス権を持っているか?
SNMPを有効にしたり、トラフィックを追加ポートにミラーリングするには、ルーターまたはスイッチの管理アクセス権が必要です。企業環境では、ネットワーク管理者は自社の機器に完全にアクセスできますが、プロバイダー機器へのアクセスは限られます。家庭環境では、ほとんどのユーザーはISPルーターへの管理アクセス権を持ちません。機器への管理アクセス権がない場合は、監視オプションが限定されるため、ISPからの報告に依存することになります。
いくつの空きポートがあるか?
ポートミラーリング(スニファー用)では、スイッチに未使用のポートが必要です。すでにすべてのポートを使用している場合、最初に何かを切断しなければ、スニファーにトラフィックをミラーリングすることはできません。
それでは、詳細なステップを見てみましょう。
ルーター、スイッチ、ファイアウォールの統計情報
ハードウェアがサポートしている場合、最初に参照するものの1つはデバイス自体です。 多くのデバイスには、ユーザーインターフェイスの一部として詳細なトラフィック統計が含まれます。 運が良ければ、デバイスはトラフィックが最も多いポートと、トラフィックの原因となっているIPアドレスまたはプロトコルを報告します。
これには、統計情報を参照できるルーターへの十分な管理アクセス権があり、ルーターが統計情報を提供する必要があります。 管理アクセス権がない場合は、ISPにレポートを生成するように依頼することができます。
SNMPによる監視
次の方法は、SNMP(簡易ネットワーク管理プロトコル)です。各ポートで送受信されるトラフィック量を測定するための標準SNMPメトリックがあります。これらのトラフィックの詳細は、すべての主要ハードウェアベンダーおよびオペレーティングシステムでサポートされている「IF_MIB」(Interfaces MIB)に含まれています。
SNMPを使用するには、まずルーター/スイッチでSNMPを有効にする必要があります。これを行う手順はベンダーによって異なるので、ベンダーのドキュメントを確認してください。デバイスをサポートするSNMPのバージョン(v1、v2、v3)とSNMPのパスワードに似た読み取り専用のコミュニティ名の2つの重要な要素を確認してください。
デバイスがSNMPに応答することをテストするために、Paessler社の無料のSNMP Testerを使用することができます。
スイッチがSNMPに応答すると、SNMPを使用してデバイスを照会するための監視ツールが必要になります。フリーウェアから大企業向けのプラットフォームまで、広範な価格レベルで利用可能なSNMPベースの監視ツールがあります。たとえば、PRTG Network MonitorはSNMP監視を含む包括的なネットワーク監視ツールで、SOHO環境でのフリー版または企業環境の商用ライセンス版として実行できます。
SNMPを使用した帯域幅監視では、各ポートのトラフィック量を時間とともに把握できます。特定のポートにトラフィックが急増している場合、そのポートに接続されているデバイスが大量のトラフィックを生成していることがわかります。
例として、PRTGのSNMPトラフィックセンサーのスクリーンショットを示します。トラフィックの入出力量、ユニキャスト対ブロードキャストなどのトラフィックの種類に関する詳細情報を表示します。
ブロードキャスト数などの追加情報は、ネットワークの問題をデバッグする際に非常に役立ちます。 たとえば、大量のブロードキャストは、スパニングツリーの問題を示す可能性があります。 スパニングツリーが常に再計算されている場合、ネットワークの問題が繰り返し発生します。 ネットワークを消費している場合、実際にはプロトコルの問題が根底にある可能性があるので、これらの追加カウンターを無視しないでください。
RMONによる監視
これは少し時代遅れですが、RMON(Remote Monitoring)はSNMPの便利な拡張機能です。 ベンダーがサポートしている場合、RMONはトラフィックの種類に関する追加情報を提供します。 もともと名前の通りリモートサイトを監視するために開発されたものですが、LANおよびWAN機器も監視できます。 RMONはSNMPの拡張機能なので、SNMPを有効にする必要があり、デバイスはRMON MIBファイルをサポートする必要があります。
上記のSNMPトラフィック統計に加えて、RMONにはドロップ数、コリジョン、CRCエラー、オーバーサイズパケットなどが含まれます。 これは、少なくとも直接的に、帯域幅を消費しているユーザーを特定することはできません。 しかし、ここでの問題(たとえば、CRCエラーが多い)は、ネットワークに問題があることを示しているため、追跡しようとしている原因は、ユーザーではなくネットワークにある可能性があります。
それでは、帯域幅消費の原因を探す作業に戻りましょう…
ここまで説明した手法で、ポートからトラフィックがどのくらい流れているかをSNMPで認識し、どのポートにトラフィックが多いかを確認できます。 運が良ければ、ポートに接続されているデバイスは1つだけかもしれません。次に、どのデバイスがトラフィックの問題を引き起こしているかを確認します。
しかし、そのポートの背後には通常複数のデバイスが存在する可能性があり、これらすべてのデバイスからのトラフィックの合計がわかっても、どのデバイスが原因であるかはわかりません。 これを見るには、トラフィックの内容をさらに深く把握する必要があります。フローを使用してトラフィックの内容を把握する必要があります。
フロープロトコルによる監視
フロープロトコルとは、スイッチを流れるトラフィックを追跡し、使用される送信元/宛先IPアドレス、送信元/宛先MACアドレス、サービスクラス、IPプロトコルなどの情報を記録するためのデータを分析するプロトコルのファミリーです。
フロープロトコルには次のものがあります。
- NetFlow (Cisco独自)
- sFlow (フローの業界標準である「サンプリングフロー」、複数のハードウェアベンダーがサポート)
- J-Flow (Juniperフロー)
- IPFIX (IETFで標準化されたフロー)
- Flexible NetFlow (Cisco独自)
- NetFlow Lite (Cisco独自)
「フロー」は、2つのデバイス間の会話に似ています。フロー対応ルーターは、各パケットを追跡し、各フローのフローレコードを作成します。フローは、送信元IP、宛先IP、送信元ポート、宛先ポート、IPプロトコルによって識別されます。たとえば、10.10.10.10:80と10.200.200.200:51072の間を流れるすべてのパケットは、2台のマシン間の1つのフローを構成します。
フロー対応ルーターは、フロー情報をフローコレクターデバイスに送信できます。フローコレクターは、複数のデバイスからのフローに関する情報を受け取り、フローに関するレポートを作成できます。
たとえば、PRTGには、NetFlow v5、NetFlow v9、sFlow、J-Flow、IPFIXのフローコレクターが含まれます。次に、フローから「トップリスト」を作成します。
- トップトーカー: ネットワークで最もトラフィックを生成しているサーバーまたはPC
- トップコネクション: ネットワークで最も帯域幅を使用している接続
- トッププロトコル: ネットワークで最も帯域幅を使用しているTCPおよびUDPプロトコル
- カスタムトップリスト
ここではフロー監視の真のパワーを見ることができます。トップリストは、だれが何を最大限に使用しているかを正確に示します。 原因を見つかりました!
原因を突き止めることができましたが、この記事には、まだ、続きがあります。
残念ながら、多くのデバイス、特にローエンドの機器はフローをサポートしていません。 または、デバイスがサポートしている可能性がありますが、フロー監視を有効にするためのデバイスへの管理アクセス権がありません。 その場合、どうすればいいでしょう?
パケットスニファー
この時点で、残っている唯一のオプションはトラフィックスニファーです。これは、ノートPCなどの追加デバイスを使用して、パケットをスニファーして結果を分析することを意味します。
トラフィックを傍受する最善の方法は、使用していないポートに参照可能なすべてのトラフィックを「ミラーリング」または「スパニング」するようにルーターを設定することです。そして、スニファーデバイス(たとえば、ノートPC)をそのミラー/スパンポートに接続します。ただし、ミラーリング/スパニングを開始するようにルーターに管理アクセス権を設定する必要があります。
「ミラーリング」と「スパニング」の違いは何ですか?: 違いはありません。Ciscoはミラーリング機能を「スパン(Switched Port ANALYZER)」と呼んでいるため、この2つの用語には互換性があります。
トラフィックをミラーリングするようにルーターを設定できたら、ノートPCをそのポートに接続し、スニファーソフトウェアを使用してトラフィックを分析することができます。ルーターをミラーリングするように設定できない場合は、(ネットワークの観点から)ターゲットルーターの近くで、アクセスできる他のデバイスを探して、代わりに傍受します。結果は完璧ではありませんが、ネットワークで何が起こっているかを示すには十分かもしれません。
これには、なんらかのスニファーソフトウェアが必要です。 NetFlowのようなトップリストを表示するには、PRTGの 「パケットスニファー」センサーを使ってトラフィックを分析し、NetFlowから取得したものと同様のトップリストを生成することができます。
トップリスト以上のものが必要な場合、Wiresharkはトラフィックスニファーのゴールデンスタンダードです。 使い方を習得するのはあまり簡単なことではありませんが、一度習得すれば、非常に強力です。 Wiresharkは、帯域幅の量を追跡する複数の方法を提供します。 エンドポイント、IPを選択して列を並べ替え、トップトーカーを特定します。
タップとパケットブローカーによる監視
上記のいずれも利用できなければ、最後の方法はパケットブローカーと組み合わせてタップを使用する方法です。 タップは、ネットワークにインラインでインストールされる物理デバイスです。 インラインであるため、すべてのトラフィックを参照し、トラフィックのコピーを中央監視デバイスに送信します。 パケットブローカーと呼ばれる監視デバイスは、すべてのタップからトラフィックを収集し、分析のためにネットワーク監視ツールに転送します。
タップとパケットブローカーは、SMBが検討するには通常高価すぎます。 しかし、コンサルティング企業は、タップ/ブローカーに基づくネットワーク分析をサービスとして提供することがよくあります。 したがって、実際に問題を追跡する必要があり、上記の手順が利用できない場合は、一時的にネットワークでタップを使用できる業者に依頼することができます。 タップをインストールするには、ネットワークに一時的な中断が伴うため、頻繁にやりたいことではありません。
まとめ
現在、ネットワークの帯域幅の不足を追跡するために使用することができる最も簡単なものから最も困難なものまで、すべての手順を見てきました。
PRTG Network Monitorは、100センサーまで無料で使用でき、30日間は無制限に評価できます。ぜひ、PRTGのネットワークトラフィック監視機能をお試しください。
PRTG Network Monitorが提供するトラフィック監視機能は以下のリンクを参照してください。