Cisco Japan Blog
Share

Cisco IOS フル活用への道 : 第 2 回 Flexible NetFlow


2017年12月28日


※以下の記事は、Cisco.com/jp 整理に伴って、 テクノロジー解説特集記事(2011年)を転載したものです。機能的に古い記載もありますが、2017 年現在でも有効である内容が多く、さらに進化を続けています。

企業にとってネットワークの運用管理は年々多様化、複雑化しています。以前は LAN がつながり、メールが送れればよいといった疎通性だけが注目されていた企業ネットワークですが、現在では重要な業務データがイントラネットや Closed WAN、インターネット上を流れており、万が一ネットワークが停止した場合、大きな損失を招きます。停止しないネットワークを適切に設計、運用するために、実際にどのようなトラフィックが、どのくらいネットワークを流れているかを知ること、つまりトラフィックのフローを「見える化」することが重要になっています。

ルータやスイッチなどの OS である Cisco IOS には、ネットワークの「見える化」のためのさまざまな機能が搭載されています。その中から、今回は Flexible NetFlow というトラフィックの監視機能をご紹介しましょう。Flexible NetFlow は Cisco IOS に組み込まれた機能であるため、追加の機器やシステムを導入しなくても、トラフィックの内訳を監視して日常のネットワークのベースラインやトレンドを取得することができます。こうした情報は、適切なキャパシティ プラニングやネットワーク リソースの割り当ての実施、セキュリティを強化すべきポイントを判断するうえで非常に有効です。

フローの種類ごとにトラフィックの流量を測定

Flexible NetFlow による監視は、実際に流れているネットワーク トラフィックを監視、フローごとに分類し、その流量を解析するパッシブ モニタリングと呼ばれる手法です。

高速道路を例に説明しましょう。Flexible NetFlow による監視は、高速道路のある地点を定点観測し、一定期間内に通過した車を種別ごとにカウントするようなものです。一般的なモニタリングでは、通過した台数の合計を計測しますが、Flexible NetFlow では普通車が何台、トラックが何台、スポーツ カーが何台…という形で、種別ごとに台数を計測できます。

計測するフローの識別条件を自由に定義

では、ネットワークのフロー(先ほどの高速道路の例における車の種別)はどのように識別されるのでしょうか。理解しやすいように、まずは、Flexible NetFlow の前のバージョンにあたる、NetFlow バージョン 5 の仕組みから見ていくことにしましょう。

Traditional NetFlow とも呼ばれ、現在広く導入されている NetFlow バージョン 5 では、次の 7 つのキーを使用して、フローを識別します。

  • 宛先 IP アドレス
  • 送信元 IP アドレス
  • 宛先ポート番号
  • 送信元ポート番号
  • L3 プロトコル
  • Tos バイト
  • 入力インタフェース

これら 7 つのフロー キーの論理積(AND 関数)を使用して分類されます。つまり、7 つのキーがすべて一致する場合に同じフローと見なされ、フロー キーが 1 つでも異なれば別のフローとして扱われます。同じパソコンから同じ宛先にパケットを送信しても、異なるアプリケーションから異なるポート経由で発信されたトラフィックは別のフローとして識別されます。

※一部の機種(Catalyst6500やCisco7600など)では少し実装が異なりますがここでは省略します。

次に、Flexible NetFlow の仕組みを見てみましょう。Flexible NetFlow では、NetFlow バージョン 5 では 7 つに固定されていたフロー キーが拡張されており、TCP ヘッダ フィールドのフラグメントフラグ、L2 ヘッダ フィールドの VLAN 情報、送信元、宛先 Mac アドレス情報や入力 VRF、IPv6 ヘッダ情報など、さまざまなフロー キーの中から任意に選択して設定することができます。また、キーだけでなく、フローごとに計測するフィールドの指定も行えるようになりました。

Flexible NetFlow で使用可能なフロー キー、収集可能なフィールドは次のとおりです。

Flexible NetFlow で使用できるキー

Flexible NetFlow で使用できるキー

Flexible NetFlow で収集できるフィールド

これらを目的に応じて組み合わせることで、計測するフローの条件や計測するデータの設定を柔軟に行えます。セキュリティ分析(ショートパケットや送信元アドレスのランダマイズといった DOS 攻撃の簡易検知)や従量課金のためのサービス使用量の測定など、特定の用途での計測を設定することも可能です。
例として、トラフィック分析を行う場合と、セキュリティ分析を行う場合の設定例を見てみましょう。
 計測結果を出力 専用アプリケーションでの可視化も可能

Flexible NetFlow によって計測された結果のデータは、Cisco IOS によってメモリ上に一時的なキャッシュ(フローキャッシュ)として格納されます。このデータを定期または不定期に他のツールやアプリケーションに出力し、計測結果に応じた処理を設定することなども可能です。

また、専用のアプリケーションを使用して視覚的に表示することもできます。

Plixer International 社 Scrutinizer での画面イメージ

Plixer International 社 Scrutinizer での画面イメージ

識別キー、計測フィールドが固定だったバージョン 5 と異なり、Flexible NewFlow ではこれらが自由に定義できるため、計測データの出力時には結果データだけでなく、データのフォーマットの定義情報を付与する必要はあります。この出力の仕様は NetFlow バージョン 9 と呼ばれています。

ネットワークのトラフィックをフローとして計測する技術は NetFlow 以外にも存在していますが、これらを IPFIX(IP Flow Information eXport)として標準化する動きが現在進んでおり、NetFlow バージョン 9 はこの IPFIX のベースになっています。なお、NetFlow バージョン 9 の詳細については、RFC3954 [英語] を参照ください。

ルータの標準機能で企業ネットワークのモニタリングを実現

NewFlow は従来、通信事業者がインターネット バックボーンのフロー統計に使用するデファクト スタンダードの技術として使用されてきました。しかし、ネットワークへのビジネスの依存度が高まる現在、企業でもネットワーク トラフィックの監視は重要な課題となっています。

Flexible NetFlow は、ローエンドからハイエンドまで、幅広いシスコのルータに搭載されている Cisco IOS でサポートされており、機器やソフトウェアを追加で導入しなくても、すぐにモニタリングを開始できるというメリットがあります。比較的新しい技術なため、現在サポートされている機器やバージョンは限られていますが、今後サポートされるプラットフォームは拡張されてゆく予定です。

Flexible NewFlow による計測結果の活用方法として、同じく Cisco IOS の機能である EEM(Embedded Event Manager)と組み合わせることも可能です。Flexible NetFlow でネットワーク トラフィックを監視し、任意のフローが作成、変更、削除された場合に EEM のイベントとして捕捉、対応するアクションを自動的に実行する、というロジックも設定できます。こうした活用法についても、また回を改めてご紹介しましょう。

関連リンク

Tags:
コメントを書く