ローミングに関する問題で複数のチャネルを同時にキャプチャすることが必要な場合や、OmniPeek, MacBook等を手配出来ない場合、Lightweight APを Snifferモードにすることで無線キャプチャを行うことができます。
ローミングに関する調査の場合、複数チャネルのキャプチャ・データを単一ファイルで取得できるため、ローミング状況を解析しやすいというメリットがあります。
必要機材
- Lightweight AP (ローミングについて調査する場合は複数台)
- Wiresharkのインストールされた PC
手順
1. Wiresharkのインストールされた PCおよび、 Sniffer APを WLCへ到達可能な有線ネットワークに接続します。Sniffer APは物理的に調査対象機器近辺に設置します。
2. IPアドレス等の設定を行い、Lightweight APを WLCに Joinさせます。
LAP# capwap ap ip address [APの IPアドレス] [サブネットマスク]
LAP# capwap ap ip default-gateway [APのデフォルト・ゲートウェイ]
LAP# capwap ap primary-base [WLC名] [WLCの IPアドレス]
3. WIRELESS > Access Points > All APs > [AP名] > General にて AP Modeを Snifferに設定し、Applyを押下します。
AP Modeを変更する際は APが再起動する旨の警告がでますので OK を押下します。
4. APは再起動後、再び WLCに Joinします。AP Modeが Snifferであることを確認します。
なお、Lightweight AP側で以下のコマンドを実行することでも AP Modeを確認できます。
LAP#show capwap client config | include ApMode
ApMode Sniffer
5. キャプチャを行いたい周波数に応じて WIRELESS > Access Points > Radios > 802.11a/n/ac (または 802.11b/g/n) を選択します。
ページを右へ横スクロールすると、最後に青いアイコンがありますので、マウスオーバーし、Configure をクリックします。
6. Sniffer Channel Assignment欄の Sniff にチェックを入れ、キャプチャしたいチャネルと Wiresharkをインストールした PCの IPアドレスを入力して Applyを押下します。
キャプチャしたいチャネル幅は RF Channel Assignment欄の Channel Width で選択できます。
ローミングに関する調査の場合、複数台の Sniffer APで同じ PCの IPアドレスを指定します。単一キャプチャ・ファイルで複数チャネルのフレームを時刻のずれがほとんど無い状態で解析できるようになります。
Sniffer APがキャプチャした無線フレームは CAPWAP経由で WLCに転送されます。
WLCは Sniffer APから受信した無線フレームを PEEKREMOTE形式にカプセル化した上で、指定された IPアドレス(Wiresharkのインストールされた PC)へ転送します。
なお、1台の APで 2.4GHz, 5GHzの両方を同時にキャプチャすることが可能です。
一時的に Sniffer APでのキャプチャを停止したい場合は、WIRELESS > Access Points > All APs > [AP名] > General にて Admin Status を Disable に設定し、Applyを押下します。
7. Wiresharkをインストールした PCでキャプチャを開始し、問題事象を発生させます。
Sniffer APでキャプチャされた無線フレームは WLCを送信元とする UDPパケットとして Wiresharkに記録されます。
送信元 IP: WLC 送信元 UDPポート: 5555
送信先 IP: PCの IP 送信先 UDPポート: 5000
8. キャプチャデータをファイルに保存後、右クリックから Decode As を選択します。
9. Transport タブにて UDP 5555 <-> 5000 を PEEKREMOTE としてデコードするように指定し、OK を押下します。
10. AiroPeek/OmniPeek encapsulated として無線フレームの内容を確認できるようになります。
なお、古いバージョンの Wiresharkでは EAP/EAPoLが正常にデコード出来ないものがあります。
[ご参考]
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=10139
https://www.wireshark.org/lists/wireshark-bugs/201405/msg00375.html