NetFlow について
NetFlow は入力 IP パケットについてパケット フローを識別し、各パケット フローに基づいて統計情報を提供します。NetFlow のためにパケットやネットワーキング デバイスを変更する必要はありません。
NetFlow ではフローを使用して、アカウンティング、ネットワーク モニタリング、およびネットワーク プランニングに関連する統計情報を提供します。フローは送信元インターフェイス(VLAN 向け)に届く単方向のパケット ストリームで、キーの値は同じです。キーは、パケット内のフィールドを識別する値です。フローを作成するには、フロー レコードを使用して、フロー固有のキーを定義します。
Cisco NX-OS は、ネットワーク異常とセキュリティ問題の高度な検出を有効にする Flexible NetFlow 機能をサポートします。フレクシブル NetFlow 機能を使用すると、大量の定義済みフィールドの集合からキーを選択することで、そのアプリケーションに最適なフロー レコードを定義できます。
1 つのフローと見なされるパケットでは、すべてのキー値が一致している必要があります。フローは、設定したエクスポート レコード バージョンに基づいて、関係のある他のフィールドを集めることもあります。フローは NetFlow キャッシュに格納されます。
フロー用に NetFlow が収集したデータをエクスポートするには、フロー エクスポータを使用し、このデータを Cisco Stealthwatch などのリモート NetFlow コレクタにエクスポートします。Cisco NX-OS は次の状況で、NetFlow エクスポート用のユーザ データグラム プロトコル(UDP)データグラムの一部としてフローをエクスポートします。
-
フローはフロー タイムアウト値に従って定期的にエクスポートされます。設定されていない場合、デフォルトは 10 秒です。
-
ユーザがフローの強制的エクスポートを行った。
フロー レコードによってフロー用に収集するデータのサイズが決まります。フロー モニタで、フロー レコードおよびフロー エクスポータを NetFlow キャッシュ情報と結合します。
Cisco NX-OS は NetFlow 統計を集計し、インターフェイスまたはサブインターフェイス上のすべてのパケットを分析します。
デュアルレイヤ NetFlow の実装
他の Cisco Nexus プラットフォームとは異なり、Cisco Nexus 9000 シリーズ スイッチは、NetFlow 処理を次の 2 つのレイヤに分離します。
-
第 1 レイヤは、ラインレート トラフィックのパケット単位の可視性をサポートします。パケットをサンプリングして統計的に分析する必要はありません。代わりに、パケットをライン レートで処理および集約できます。
-
2 番目のレイヤは、大規模なフローの収集を可能にします。フローを失うことなく何十万ものフローを維持でき、定期的に外部コレクタにエクスポートします。
フロー レコード
フロー レコードでは、パケットを識別するために NetFlow で使用するキーとともに、NetFlow がフローについて収集する関連フィールドを定義します。キーと関連フィールドを任意の組み合わせで指定して、フローレコードを定義できます。Cisco NX-OS は、様々なキー セットをサポートしています。フローレコードでは、フロー単位で収集するカウンタのタイプも定義します。32 ビットまたは 64 ビットのパケット カウンタまたはバイト カウンタを設定できます。
キー フィールドは、match キーワードで指定されます。対象フィールドとカウンタは collect キーワードで指定されます。
Cisco NX-OS では、フロー レコードの作成時に次の match フィールドをデフォルトとして使用できます。
-
match interface input
-
match flow direction
フロー エクスポータ
フロー エクスポータでは、NetFlow エクスポート パケットに関して、ネットワーク層およびトランスポート層の詳細を指定します。フロー エクスポータで設定できる情報は次のとおりです。
-
エクスポート宛先 IP アドレス
-
送信元インターフェイス
-
UDP ポート番号(NetFlow コレクタが NetFlow パケットをリスニングするところ):デフォルト値は 9995 です。
(注) |
NetFlow エクスポート パケットでは、送信元インターフェイスに割り当てられた IP アドレスを使用します。送信元インターフェイスを設定しない場合、フロー エクスポータはエクスポートする予定のフローをドロップします。[Netflow エクスポータの送信元インターフェイスと接続先 IP は、同じ VRF を使用する必要があります。(The Netflow Exporter source interface and destination IP must use the same VRF.)] |
Cisco NX-OS は、タイムアウトが発生するたびにデータを NetFlow コレクタへエクスポートします。キャッシュをフラッシュし、フローを強制的にエクスポートするには、フラッシュ キャッシュ タイムアウトを設定できます(flow timeout コマンドを使用)。
エクスポート形式
Cisco NX-OS は、バージョン 9 のエクスポート形式をサポートします。この形式は、古いバージョン 5 のエクスポート形式よりも効率的なネットワーク使用率をサポートし、IPv6 およびレイヤ 2 フィールドをサポートします。さらに、バージョン 9 エクスポート形式は、NetFlow コレクタで完全な 32 ビット SNMP ifIndex 値をサポートします。
レイヤ 2 NetFlow キー
フレクシブル NetFlow レコード内でレイヤ 2 キーを定義できます。このレコードを使用して、レイヤ 2 インターフェイスのフローをキャプチャできます。レイヤ 2 のキーは次のとおりです。
-
送信元および宛先 MAC アドレス
-
送信元 VLAN ID
-
イーサネット フレームのイーサネット タイプ
受信方向については、次のインターフェイスに対してレイヤ 2 NetFlow を適用できます。
-
アクセス モードのスイッチ ポート
-
トランク モードのスイッチ ポート
-
レイヤ 2 のポート チャネル
(注) |
Layer 2 NetFlow を VLAN、送信インターフェイス、またはレイヤ 3 インターフェイス(VLAN インターフェイスなど)に適用できます。 |
フロー モニタ
フロー モニタは、フロー レコードおよびフロー エクスポータを参照します。フロー モニタはインターフェイスに適用します。
NetFlow 出力インターフェイス
FM-E および FM-E2 モジュールを搭載した Cisco Nexus 9300-FX/FX3 および Cisco Nexus 9500 プラットフォーム スイッチの NetFlow 出力インターフェイスには、次の機能があります。
-
show flow cache コマンドの NetFlow は
output_if_id
を表示し、出力インターフェイスを 9700-EX ライン カードを備えた Cisco Nexus 9300-FX および 9500 プラットフォーム スイッチのコレクタにエクスポートします。 -
Cisco Nexus 9300-FX/FX3 プラットフォーム スイッチの NetFlow 出力インターフェイスは、IPv4 と IPv6 の両方のトラフィック フローをサポートします。Cisco Nexus 9500 プラットフォーム スイッチの NetFlow 出力インターフェイスは、IPv4 トラフィック フローでのみサポートされ、IPv6 トラフィック フローではサポートされません。
-
show flow cache コマンドは、
output_if_id
を0x0
またこの機能は、コントロール プレーン トラフィックや ICMP 要求/応答メッセージなど、スイッチ宛てのトラフィック以外のトラフィックでもサポートされます。 -
NetFlow は、宛先インターフェイスとしてネクストホップを持つ IPv4/IPv6 着信トラフィック フローのコレクタへの出力インターフェイスのエクスポートをサポートします。
InputInt
およびOutputInt
の NetFlow エクスポート形式は、NetFlow コレクタで完全な 32 ビットSNMPifIndex
値をサポートします。 -
NetFlow 出力インターフェイスは、MPLS、VXLAN、GRE などのトンネル トラフィック フローではサポートされません。
-
NetFlow 出力インターフェイスの例の詳細については、NetFlow の表示例 を参照してください。
高可用性
Cisco NX-OS は NetFlow のステートフル リスタートをサポートします。リブート後、Cisco NX-OS は実行コンフィギュレーションを適用します。
フロー キャッシュは再起動で保持されず、再起動中にソフトウェアに送信されるパケットは処理されません。