NetFlow ねっとふろー
簡単に言うとこんな感じ!
ネットワークを流れるデータの「運送記録簿」だよ!「いつ・誰から・誰に・どれだけのデータが届いたか」を自動で記録してくれる仕組みで、回線が重い原因や怪しい通信の犯人を突き止めるのに大活躍なんだ!
NetFlowとは
NetFlowとは、ネットワーク機器(主にルーターやスイッチ)を通過するIPトラフィックの情報を収集・記録する技術です。もともとCisco Systemsが開発し、現在はネットワーク監視の標準的な手法として業界全体に普及しています。
NetFlowが記録する単位は「フロー(Flow)」と呼ばれ、「同じ送信元IP・宛先IP・ポート番号・プロトコル」の組み合わせを持つパケットのまとまりを指します。パケットの中身(ペイロード)は見ず、「どこからどこへ、どれくらい通信したか」というメタデータを収集するため、プライバシーへの影響が少なく、処理負荷も軽い点が特徴です。
ネットワーク管理者にとっては「回線がなぜ重いのか」「どのアプリが帯域を食っているか」「不審な通信が発生していないか」を把握するための目と耳に相当します。特に大規模な企業ネットワークでは、NetFlowなしでのトラブルシュートは非常に困難です。
NetFlowの仕組みと構成要素
NetFlowは3つの役割を持つコンポーネントで動作します。
| コンポーネント | 役割 | 具体例 |
|---|---|---|
| エクスポーター | フロー情報を生成・送信するネットワーク機器 | CiscoルーターやL3スイッチ |
| コレクター | エクスポーターから送られたフローデータを受信・保存するサーバー | ntopng、nfdump、商用NMS |
| アナライザー | 収集したデータをグラフや表で可視化・分析するツール | Grafana、SolarWinds、Elastic |
フローに含まれる主な情報は以下のとおりです。
| フィールド | 内容 | 例 |
|---|---|---|
| 送信元IPアドレス | 通信を始めた機器のIP | 192.168.1.10 |
| 宛先IPアドレス | 通信の相手先IP | 203.0.113.5 |
| 送信元ポート | 利用したポート番号 | 54321 |
| 宛先ポート | 相手側のポート番号 | 443(HTTPS) |
| プロトコル | TCP / UDP / ICMP など | TCP |
| バイト数 | やり取りしたデータ量 | 1,452,800 bytes |
| パケット数 | やり取りしたパケット数 | 980 packets |
| 開始・終了時刻 | フローが発生した時間帯 | 14:32:01〜14:32:15 |
覚え方:「NetFlowは宅配便の送り状チェック」
宅配便の荷物の中身は開けない(ペイロードは見ない)けど、「差出人・受取人・重さ・個数・日時」の送り状データは全部記録する。それがNetFlowのイメージ!パケットキャプチャ(Wireshark等)が「荷物を全部開けて中身を確認する」なのに対し、NetFlowは「送り状だけをまとめてチェックする」軽量な手法です。
NetFlowのバージョン比較
| バージョン | 主な特徴 | 備考 |
|---|---|---|
| v1 | 最初期の実装。フィールドが少ない | 現在はほぼ使われない |
| v5 | 最も普及したバージョン。固定フォーマット | 今も多くの機器でサポート |
| v9 | テンプレートベースで柔軟な拡張が可能 | IPv6・MPLSにも対応 |
| IPFIX | v9を元にIETFが標準化した後継規格 | 業界標準(RFC 7011) |
歴史と背景
- 1996年 — Cisco Systemsがルーターのパフォーマンス向上策として内部開発。当初はルーターのキャッシュ効率化が目的だった
- 1990年代後半 — ネットワーク監視・トラフィック分析ツールとしての活用が広がり始める
- 2004年 — NetFlow v9がRFC 3954として標準化され、他ベンダーも追従しやすくなる
- 2008年 — IETFがNetFlow v9をベースにIPFIX(IP Flow Information Export)としてRFC 5101で標準化
- 2013年 — IPFIXがRFC 7011で改訂・整備され、現在の業界標準に
- 現在 — CiscoのNetFlow以外にも、Juniper「J-Flow」、Huawei「NetStream」、オープン標準のsFlowなど類似技術が多数存在
NetFlow・sFlow・パケットキャプチャの比較
ネットワーク監視には複数のアプローチがあります。用途に応じて使い分けることが重要です。
実務での典型的な使い分け
【日常監視フェーズ】
NetFlow → 「昨日の14時に帯域が急増、原因は192.168.10.5からの大量転送」
↓ 異常を発見
【詳細調査フェーズ】
パケットキャプチャ → 「実際にどんなデータが流れていたか詳細確認」
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| RFC 3954 | NetFlow v9 の標準化(2004年) |
| RFC 5101 | IPFIX プロトコル仕様(初版・2008年) |
| RFC 7011 | IPFIX プロトコル仕様(改訂版・2013年、現行標準) |
| RFC 7012 | IPFIX 情報モデル(フィールド定義) |
| RFC 5798 | sFlow の仕様(比較参考) |