はじめに
このドキュメントでは、Ethanalyzer について説明します。これは、Wireshark に基づいてパケットを制御するための Cisco NX-OS の組み込みパケット キャプチャ ツールです。
背景説明
Wiresharkは、多くの業界や教育機関で広く使用されているオープンソースのネットワークプロトコルアナライザです。パケット キャプチャ ライブラリである libpcap によってキャプチャされたパケットをデコードします。Cisco NX-OSはLinuxカーネル上で動作し、パケットキャプチャをサポートするためにlibpcapライブラリを使用します。
Ethanalyzer では以下のことが可能です。
- スーパバイザが送受信するパケットをキャプチャします。
- キャプチャするパケットの数を設定します。
- キャプチャするパケットの長さを設定します。
- プロトコルの概要または詳細な情報と共にパケットを表示します。
- キャプチャされたパケット データを開き、保存します。
- キャプチャされたパケットを多くの条件でフィルタ処理します。
- 表示されるパケットを多くの条件でフィルタ処理します。
- 制御パケットの内部 7000 ヘッダーをデコードします。
Ethanalyzer には次の機能はありません。
- ネットワークで問題が発生したときに警告する。ただし、Ethanalyzerは問題の原因の特定に役立ちます。
- ハードウェアで転送されるデータ プレーン トラフィックをキャプチャする。
- インターフェイス固有のキャプチャをサポートする。
出力オプション
次に示すのは、ethanalyzer local interface inband コマンドからの出力の概要です。?オプションを使用すると、ヘルプが表示されます。
プロトコルの詳細情報を表示するには、detailオプションを使用します。^Cを使用すると、必要に応じてキャプチャの途中でスイッチプロンプトを中断して戻すことができます。
フィルタ オプション
capture-filter
capture-filterオプションを使用して、キャプチャ中に表示またはディスクに保存するパケットを選択します。キャプチャ フィルタは、フィルタ処理中に高率のキャプチャを維持します。パケットの完全な分析は行われていないので、フィルタ フィールドはあらかじめ決められており、限定されています。
display-filter
キャプチャファイル(tmpファイル)のビューを変更するには、display-filterオプションを使用します。表示フィルタは完全に分離されたパケットを使用するので、ネットワーク トレースファイルを分析するときは、非常に複雑で高度なフィルタリングを行うことができます。ただし、tmpファイルは最初にすべてのパケットをキャプチャしてから必要なパケットだけを表示するため、すぐにいっぱいになる可能性があります。
この例では、limit-captured-framesが5に設定されています。capture-filterオプションを使用すると、Ethanalyzerはフィルタホスト10.10.10.2に一致する5つのパケットを表示します。display-filterオプションを使用すると、Ethanalyzerは最初に5つのパケットをキャプチャし、フィルタip.addr==10.10.10.2に一致するパケットのみを表示します。
書き込みオプション
write
writeオプションを使用すると、後で分析できるように、Cisco Nexus 7000シリーズスイッチのストレージデバイスの1つ(ブートフラッシュやログフラッシュなど)にキャプチャデータを書き込むことができます。キャプチャ ファイルのサイズは、10 MB に制限されます。
writeオプションを指定したEthanalyzerコマンドの例は、ethanalyzer local interface inband write bootflash: capture_file_nameです。capture-filterとfirst-captureの出力ファイル名を使用した書き込みオプションの例を次に示します。
キャプチャ データがファイルに保存されるとき、デフォルトでは、キャプチャされたパケットはターミナル ウィンドウに表示されません。表示オプションを使用すると、キャプチャデータをファイルに保存する間、Cisco NX-OSはパケットを表示します。
capture-ring-buffer
capture-ring-bufferオプションを使用すると、指定した秒数、指定したファイル数、または指定したファイルサイズの後に複数のファイルが作成されます。これらのオプションの定義は、次のスクリーン ショットを参照してください。
読み取りオプション
readオプションを使用すると、デバイス自体に保存されているファイルを読み取ることができます。
また、ファイルをサーバまたは PC に転送し、Wireshark、あるいは cap または pcap ファイルを読み取ることができる他のアプリケーションで読み取ることもできます。
詳細オプションでの decode-internal
decode-internalオプションは、Nexus 7000がパケットを転送する方法に関する内部情報を報告します。この情報は、CPU を通過するパケットのフローを理解し、トラブルシューティングするのに役立ちます。
NX-OS インデックスを 16 進数に変換した後、show system internal pixm info ltl x コマンドを使用してローカル ターゲット ロジック(LTL)インデックスを物理インターフェイスまたは論理インターフェイスにマップします。
capture-filter の値の例
1 つの IP ホストとの間でやり取りされるトラフィックのキャプチャ
host 10.1.1.1
IP アドレスの範囲との間でやり取りされるトラフィックのキャプチャ
net 172.16.7.0/24
net 172.16.7.0 mask 255.255.255.0
IP アドレスの範囲からのトラフィックのキャプチャ
src net 172.16.7.0/24
src net 172.16.7.0 mask 255.255.255.0
IP アドレスの範囲へのトラフィックのキャプチャ
dst net 172.16.7.0/24
dst net 172.16.7.0 mask 255.255.255.0
特定のプロトコルのトラフィックのみのキャプチャ - DNS トラフィックのみのキャプチャ
DNS はドメイン ネーム システム プロトコルです。
port 53
特定のプロトコルのトラフィックのみのキャプチャ - DHCP トラフィックのみのキャプチャ
DHCP は Dynamic Host Configuration Protocol です。
port 67 or port 68
特定のプロトコル以外のトラフィックのキャプチャ - HTTP または SMTP のトラフィックの除外
SMTP は Simple Mail Transfer Protocol です。
host 172.16.7.3 and not port 80 and not port 25
特定のプロトコル以外のトラフィックのキャプチャ - ARP および DNS のトラフィックの除外
ARP は Address Resolution Protocol です。
port not 53 and not arp
IP トラフィックのみのキャプチャ - ARP や STP などの下層プロトコルの除外
STP はスパニング ツリー プロトコルです。
ip
ユニキャスト トラフィックのみのキャプチャ - ブロードキャストとマルチキャストの通知の除外
not broadcast and not multicast
レイヤ 4 ポートの範囲内のトラフィックのキャプチャ
tcp portrange 1501-1549
イーサネット タイプに基づくトラフィックのキャプチャ - EAPOL トラフィックのキャプチャ
EAPOL は Extensible Authentication Protocol over LAN です。
ether proto 0x888e
IPv6 のキャプチャの回避策
ether proto 0x86dd
IP プロトコル タイプに基づくトラフィックのキャプチャ
ip proto 89
MAC アドレスに基づくイーサネット フレームの拒否 - LLDP マルチキャスト グループに属するトラフィックの除外
LLDP は Link Layer Discovery Protocol です。
not ether dst 01:80:c2:00:00:0e
UDLD、VTP、CDP のトラフィックのキャプチャ
UDLD は 単方向リンク検出、VTP は VLAN Trunking Protocol、CDP は Cisco Discovery Protocol です。
ether host 01:00:0c:cc:cc:cc
MAC アドレスとの間でやり取りされるトラフィックのキャプチャ
ether host 00:01:02:03:04:05
注:
and = &&
or = ||
Not = !
MACアドレス形式:xx:xx:xx:xx:xx:xx
一般的なコントロール プレーン プロトコル
- UDLD:宛先メディアアクセスコントローラ(DMAC)= 01-00-0C-CC-CC-CCおよびイーサネットタイプ= 0x0111
- LACP:DMAC = 01:80:C2:00:00:02およびイーサネットタイプ= 0x8809。LACP は Link Aggregation Control Protocol を意味します。
- STP:DMAC = 01:80:C2:00:00:00およびイーサネットタイプ= 0x4242 – または – DMAC = 01:00:0C:CC:CC:CDおよびイーサネットタイプ= 0x010B
- CDP:DMAC = 01-00-0C-CC-CC-CCおよびイーサネットタイプ= 0x2000
- LLDP:DMAC = 01:80:C2:00:00:0Eまたは01:80:C2:00:00:03または01:80:C2:00:00:00およびイーサネットタイプ= 0x88CC
- DOT1X:DMAC = 01:80:C2:00:00:03およびイーサネットタイプ= 0x888E。DOT1X は IEEE 802.1x を意味します。
- IPv6:イーサネットタイプ= 0x86DD
- UDP と TCP のポート番号のリスト
既知の問題
Cisco Bug ID CSCue48854:Ethanalyzerのcapture-filterでSUP2のCPUからのトラフィックがキャプチャされない。
Cisco Bug ID CSCtx79409:decode-internalでキャプチャフィルタを使用できません。
Cisco Bug ID CSCvi02546:SUP3で生成されたパケットにFCSが含まれている可能性があります。これは正常な動作です。
関連情報