無線 LAN におけるトラブルシューティングでは、無線空間での 802.11 フレーム キャプチャとクライアントでのパケットキャプチャを同時に取得することが必要な場合があります。
クライアントでのパケットキャプチャについて、Windows および Mac の場合は Wireshark や tcpdump などの一般的なツールが使用されますが、このドキュメントでは iOS および Android 端末でのパケットキャプチャ手段についてご紹介します。
iOS
iOS デバイス単体でパケットキャプチャを取得することはできません。Xcode をインストールした Mac で rvictl コマンドを実行し、RVI (Remote Virtual Interface) を作成することで iOS デバイスのパケットを Mac の RVI にリダイレクトさせることができますので、その状態で Wireshark や tcpdump を用いたキャプチャが可能になります。手順は以下をご参照ください。
なお、このキャプチャには L2 ヘッダは含まれません。
iPhone / iPad でパケットキャプチャを行う方法
Android
Android には VpnService を利用して通信を VPN Interface にリダイレクトさせ、暗号化/復号化処理の代わりにキャプチャを行なうことが可能なアプリが提供されています。例えば tPacketCapture であれば以下のような手順で Android 単体でのパケットキャプチャが可能です。
なお、VpnService を利用したキャプチャでは L2 ヘッダはダミーで、端末 IP は VPN Interface のものとなり Wi-Fi Interface のアドレスでない場合があります。
また、Android についてはアプリとデバイスの互換性は網羅的に確認されていませんので、挙動に問題がある場合は、互換性に問題のない別のキャプチャアプリを探す必要があります。
アプリを起動し CAPTURE をタップし、VPN 接続を許可

VPN 接続が行われ鍵アイコンが表示されるとキャプチャが開始されるので、問題事象を再現させる通信を行なう (無線空間での 802.11 キャプチャも同時に取得)

事象再現後は設定アプリにて VPN 接続を切断する (切断後は鍵アイコンが非表示)

FILE LIST メニューでキャプチャファイルを長押しし、共有メニューから他アプリにファイルを共有する

