はじめに
今回は構築したネットワークでパケットキャプチャを行ってみます。
尚、前回CML2
のアップグレードを行ったため、今回から2.2.1での作業となります。
CML2でのパケットキャプチャ
以前のバージョンではDashboard
上でしかパケットキャプチャの結果を見れなかったり不便なイメージがありましたが、2.1でPCAP
形式のファイルをダウンロードできるようになり、大分使いやすくなりました。
ネットワークを設計・調査するうえで必須となる機能なので、使いこなせるようしっかり覚えていきます。
パケットキャプチャの実行方法
実行方法は簡単で、Dashboard
からパケットキャプチャを行いたい経路のリンクをクリックして、PACKET CAPTURE
タブから実行することで以下のようにパケットキャプチャの情報を確認することができます。
PACKET CAPTURE
タブには以下のようなボタンが並んでおり、左からパケットキャプチャ実行/停止、表示のクリア、パケットキャプチャのダウンロード、キャプチャ設定となっております。
キャプチャ設定
上図の歯車ボタンをクリックすることでパケットキャプチャ実行時に適用するフィルタの設定や取得するパケット数、時間などを設定できます。
Max Packets
パケットキャプチャ実行時に指定した数のパケットまでキャプチャを取得します。
デフォルトでは50パケットまで取得するようになっており、50パケット取得したら自動的にパケットキャプチャが停止するようになっているため、しばらくキャプチャを取り続けたい場合は調整するようにしましょう。
また、Max Packets
か次のMax Time
のどちらかは設定を行う必要があるようなのでどちらかは設定するようにします。
Max Time
パケットキャプチャ実行時に指定した秒数までキャプチャを取得します。
デフォルトでは無制限となっておりますが、Max Time
を設定した場合は、Max Packets
を無制限にすることも可能です。
BPF Templates、BPF
パケットキャプチャを取得する場合、単純に全パケットを取得すると、目的のパケットが埋もれてしまい、確認しづらくなるため、特定の条件でフィルタリングを行って目的のパケットを見つけ出します。
フィルタリングの方法も、パケットキャプチャ自体はすべて取得し、後からWireShark
等でキャプチャファイルを見る際にフィルタリングを行う方法と、パケットキャプチャを実行する際にフィルタリングを行い、条件に合致するパケットのみ取得する方法がありますが、BEF Templates、BEFの設定は後者の条件に合致するパケットのみ取得するフィルタを作成する方法となります。
BPF
はBerkeley Packet Filter
というフィルタリング形式で、指定の書式で記載することで特定のプロトコルや特定の送信元のみのパケットを取得したりできるようになります。
BPF
の書式が分かる人であれば、BPF
欄に直接書式を記載しても良いですが、書式が分からない場合は、いくつかの例がBPF Templates
として登録されているため、BPF Templates
から選んで使うことも可能です。
BPF Templates
はCML2.2.1では以下が登録されています。
BPF Templates | BPF |
---|---|
DHCP | udp port 68 or port 67 |
Spanning Tree | stp |
ip (src) | src host <ip> |
ip (dst) | dst host <ip> |
ethernet (src) | ether src host <mac> |
ethernet (dst) | ether dst host <mac> |
vlan | vlan |
<>の部分は任意のアドレスやIDを入力する必要があるので、指定したい値を入力する必要があります。
もっと細かく指定したい場合はBPF
の書式を別途調べてみて下さい。
おわりに
ネットワークの調査を行ったり、想定通りの動きをするか確認するためにはパケットキャプチャは必須の作業となります。
想定通りの動きになっておらず、障害が発生した事例はいくつもあるので、パケットキャプチャでパケットの動きを把握できるようにしましょう。