一番有名なパケットキャプチャソフトです。
tsharkっていうWiresharkのCLI版もあるそうでLinuxでも動作するかもしれません。
ネットワーク機器のパケットキャプチャをするにはミラーリングポートを
使用したり、パケットキャプチャ用にリピータハブ(1つのホストから
受信したデータをそのまま他の端末すべてに送信するハブ、バカハブ)
を使用します。リピータハブは念の為に持っていても良いかもしれません。
Yahoo!オークションでは500円以下で買えます。
Wiresharkはいけりり★ネットワークサービスさんが
一番詳しいと思います。Wireshark2の日本語担当の方です。
Microsoftのサービスに関するパケットを見るには向いているかと思います。
Androidでパケットキャプチャファイルを取得し、その後Windowsの
ワイヤシャークで閲覧できます。
・tcpdump
-wで取得した.capファイルはwiresharkで開くことが可能です。
例
tcpdump -n -s 0 -w abcdef.cap
ポートを限定する場合
例
tcpdump -X port ポート番号
-n IPアドレス、ポート番号をそのまま表示する
-X ASCIIでの表示
など
port ポート番号
ip proto プロトコル名(tcp、udp、icmpなど)
src 送信元
dst 送信先
host IPアドレス(ホスト名)
net ネットワークアドレス
採取後、wiresharkで閲覧できるので便利です。
※高負荷の稼働環境で全パケットをキャプチャすると危険です。
参照サイト
Cisco1812Jで実施しました。
Router#monitor capture buffer BUFFER_NAME
●まず、バッファ名を名付けます。オプションとしてバッファサイズ(デフォルト1M)、
パケットの最大サイズ(デフォルト68B)などを付与可能です。
Router#monitor capture point ip cef CAPTURE_POINT_NAME all both
●キャプチャポイント名を名付けます。
以下を指定可能です。
ip・ipv6
cef・process-switched
both(in,out両方)・from-us(ローカル発信)・in・out
※上記例では、全インターフェース、cefでのパケットを取得する。
バッファサイズが1Mであれば数秒でキャプチャが止まります(=1Mに達します)。
※process-switchedのパケットを取得する場合
Router#monitor capture point ip process-switched CAPTURE_POINT_NAME both
※CEFについて http://www.geocities.jp/ccnpbcmsn949/cef/
パケット転送方法の相違についてはCCNP switchの黒本でも説明文が有りました。
Router#monitor capture point associate CAPTURE_POINT_NAME BUFFER_NAME
●バッファとキャプチャポイントを関連付けます。
Router#monitor capture point start CAPTURE_POINT_NAME
●複数のキャプチャポイントを作成していた場合、キャプチャ名に「all」を
指定すると全てのキャプチャが開始されると思われます、多分。
Router#show monitor capture buffer BUFFER_NAME parameters
●キャプチャしている状態の確認。
「Status : Active」の場合は稼働中。「Status : Inactive」の場合は停止中。
※指定バッファサイズになると自動停止する。
Router#monitor capture point stop CAPTURE_POINT_NAME
●手動停止する。
Router#monitor capture buffer BUFFER_NAME export tftp://172.16.0.2/abcdef.cap
●採取したキャプチャファイルをTFTPでPCに任意の名前で転送、保管します。
FTP転送でも可能です。
簡単なtftpサーバーは以下からダウンロード可能です。
Router# monitor capture buffer BUFFER_NAME clear
●キャプチャバッファをクリアします。
Router# monitor capture point disassociate CAPTURE_POINT_NAME
●関連付けを外します。
Router# no monitor capture point ip process-switched CAPTURE_POINT_NAME both
●キャプチャポイントを削除します。
Router# no monitor capture buffer BUFFER_NAME
●バッファを削除します。
実際のコマンド投入ログを貼りつけます。
コマンドヘルプも実施しました。
Router#monitor capture buffer BUFFER_NAME size ?
<256-102400> Buffer size in Kbytes : 102400K or less (default is 1024K)
Router#monitor capture buffer BUFFER_NAME size 1024 ?
circular Circular Buffer
linear Linear Buffer(Default)
max-size Maximum size of element in the buffer (in bytes)
cr
Router#monitor capture buffer BUFFER_NAME size 1024 max-size ?
<68-9500> Element size in bytes : 9500 bytes or less (default is 68 bytes)
Router#monitor capture buffer BUFFER_NAME
Router#monitor capture point ?
associate Associate capture point with capture buffer
disassociate Dis-associate capture point from capture buffer
ip IPv4
ipv6 IPv6
start Enable Capture Point
stop Disable Capture Point
Router#monitor capture point ip ?
cef IPv4 CEF
process-switched Process switched packets
Router#monitor capture point ip process-switched CAPTURE_POINT_NAME ?
both Inbound and outbound and packets
from-us Packets originating locally
in Inbound packets
out Outbound packets
Router#monitor capture point ip cef CAPTURE_POINT_NAME ?
Async Async interface
Auto-Template Auto-Template interface
BRI ISDN Basic Rate Interface
BVI Bridge-Group Virtual Interface
CDMA-Ix CDMA Ix interface
CTunnel CTunnel interface
Dialer Dialer interface
FastEthernet FastEthernet IEEE 802.3
Group-Async Async Group interface
LISP Locator/ID Separation Protocol Virtual Interface
Lex Lex interface
LongReachEthernet Long-Reach Ethernet interface
Loopback Loopback interface
Multilink Multilink-group interface
Null Null interface
Tunnel Tunnel interface
Vif PGM Multicast Host interface
Virtual-Access Virtual Access interface
Virtual-Dot11Radio Virtual dot11 interface
Virtual-PPP Virtual PPP interface
Virtual-Template Virtual Template interface
Virtual-TokenRing Virtual TokenRing
Vlan Vlan IEEE 802.1q
all All interfaces
drop Drop on any interface
punt Punt on any interface
vmi Virtual Multipoint Interface
Router#monitor capture point ip process-switched CAPTURE_POINT_NAME both
Router#monitor capture point associate CAPTURE_POINT_NAME BUFFER_NAME
Router#monitor capture point start CAPTURE_POINT_NAME
Router#show monitor capture buffer BUFFER_NAME parameters
Router#monitor capture point stop CAPTURE_POINT_NAME
Router#monitor capture buffer BUFFER_NAME export tftp://172.16.0.2/abcdef.cap
Router# monitor capture buffer BUFFER_NAME clear
Router# monitor capture point disassociate CAPTURE_POINT_NAME
Router# no monitor capture point ip process-switched CAPTURE_POINT_NAME both
Router# no monitor capture buffer BUFFER_NAME
asa(config)#access-list aclname extended permit ip host 192.168.0.2 192.168.1.0 255.255.255.0
asa(config)#access-list aclname extended permit ip 192.168.1.0 255.255.255.0 host 192.168.0.2
アクセスリストで、キャプチャする通信を定義
asa#capture capturename access-list aclname interface inside
インターフェースにアクセスリストを適用
以下の投入方法でinside,outsideなど複数のインターフェースの
キャプチャを可能。
asa(config)#capture capturename access-list aclname
asa(config)#capture capturename interface outside
asa(config)#capture capturename interface inside
※その後の show captureすると以下のログ表示でキャプチャしている
インターフェースを確認可能。
capture capturename type raw-data access-list aclname interface outside interface inside
asa#show capture
キャプチャした容量の確認
asa#show capture capturename
キャプチャしたパケットの確認
asa#clear capture capturename
現在までのキャプチャを破棄する必要が有れば投入する
asa#no capture capturename
キャプチャ動作の停止