キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

Nexus7000シリーズ: ELAMe の利用方法について

はじめに

N7Kではパケット解析のツールとしてELAMがサポートされていますが、
従来のELAMでは実行手順が難しいという問題がありました。
6.2(x)以降では簡易的なELAMとして "elame.tcl" がスクリプトが
実装されていますので、本記事ではこちらの利用方法を紹介します。

※ELAM自体の説明に関しては本記事の参考資料として掲載しております、
ELAM Overview のページを参照ください。



利用方法

6.2(x)以降のNX-OSでは "elame.tcl" という
スクリプトファイルが内部に実装されていますので、
こちらをsourceコマンドで読み込むことでELAMeを利用することが可能です。

n7k# source sys/elame.tcl [src address] [dst address]




出力結果の紹介

今回はN7Kを経由するICMPパケットをELAMeにてキャプチャします。

n7k# source sys/elame.tcl 192.168.0.1 192.168.10.1
elam helper, version 1.015
... source 192.168.0.1, destination 192.168.10.1

... getting current vdc ... 3

... ingress interface derived from source address
... ingress interface list is Ethernet1/17.41
... expanded ingress interface list is Ethernet1/17.41
... estimated egress interface Ethernet1/17.42
... FE instance list is 1/1/1
... setting trigger...
... elam trigger set
... starting capture...
... elam capture started
... no packet captured so far
press [enter] when packets in question are known to have been sent (ctrl-c to exit)

sourceコマンドにてelame.tclを実行すると、
N7Kが保持する経路情報から想定されるInterface情報が上記のように出力されます。

... setting trigger...
... elam trigger set
... starting capture...
... elam capture started

と推移することが確認できましたら、下記のような表示が出ますので

press [enter] when packets in question are known to have been sent (ctrl-c to exit)

Enterを押します。

press [enter] when packets in question are known to have been sent (ctrl-c to exit)
... no packet captured so far
press [enter] when packets in question are known to have been sent (ctrl-c to exit)
... no packet captured so far
press [enter] when packets in question are known to have been sent (ctrl-c to exit)
... no packet captured so far
press [enter] when packets in question are known to have been sent (ctrl-c to exit)
... no packet captured so far
press [enter] when packets in question are known to have been sent (ctrl-c to exit)

Enterを押した際に、トリガーされたパケットが確認できない場合には、
上記のように繰り替えし、同じ表示がされます。

... no packet captured so far
press [enter] when packets in question are known to have been sent (ctrl-c to exit)
... packet captured at FE: 1/1/1

... capture instance 1/1/1 (slot/type/instance)

+++ IPv4 packet: 102 bytes from MAC 8c60.4f25.0281 / IP 192.168.0.1 to MAC 001b.
54c2.b443 / IP 192.168.10.1 TTL 255
+++ protocol ICMP type 0x08 code 0x00
+++ packet received on interface Eth1/17 vlan 41 (source index 0x009d9)
... rbus: ccc 0x4 cap1 0x0 cap2 0x1 flood 0x0 dest_vlan 42 dest_index 0x009d9 l2
_fwd 0x0
+++ packet is sent to Eth1/17 on vlan 42
... destination index is NOT from L2 table lookup
... lamira OFE: rdt 0x1 dest_index 0x009d9 flood 0x0 l2fwd 0x0 ofe_drop 0x0

... done

目的のパケットがキャプチャ出来た場合には、
Enterを押した後に上記のようにパケットの情報を確認することができます。

packet received on interface Eth1/17 vlan 41
packet is sent to Eth1/17 on vlan 42

の記載より、Eth1/17のvlan41からパケットが到来し、
Eth1/17のvlan42からパケットが送信されたことが確認できます。

(今回はサブインターフェースEth1/17.41とEth1/17.42を利用しています)


注意事項

6.2(x)未満のバージョンを利用されている場合には、
ELAMeは利用することができませんので、従来からのELAMをご利用下さい。

また現在のところ、F3モジュールとN77xxシリーズのラインカードでは
ELAMeは未サポートとなりますので、ご注意下さい。
F3モジュール、N77xxシリーズでのサポート状況に関しては、
下記のEnhancementをご確認下さい。

CSCuy42559
CSCuw60869


参考資料

ELAM Overview (英語ページ)

バージョン履歴
改訂番号
1/1
最終更新:
‎09-28-2016 10:49 PM
更新者: