1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

nRF BLE Sniffer + Wiresharkで、Central-Peripheral間のBLEパケットをキャプチャする

Posted at

この記事は?

地味にやり方がわからず躓いた、nRFのBLE SnifferでCentral-Peripheral間の通信をキャプチャする方法を書きます。

環境

@KentaHarada様による以下記事の手順で、XIAO-nRF52840のBLE Sniffer化、Wiresharkのセットアップが実施できます。(ありがとうございます)

私は以下環境で検証しました。

  • PC:
    • OS: Windows11 Home
    • Wireshark: v4.4.2
  • Sniffer:
    • ハード: seeed XIAO-nrf52840 ※1
    • ソフト: nRF Sniffer for Bluetooth LE v4.1.1 ※2

※1: おそらくnordic製のSnifferでも同様に実施できますが、持っていないため未検証です。
※2: 上記記事の手順に従い、uf2形式に変換して書き込みました。

手順

Advertisement Packetのキャプチャ

SnifferをPCに接続してWiresharkを起動し、キャプチャ対象のインタフェースとしてnRF Sniffer for Bluetooth LEを選択します。

image.png

すると、SnifferがキャプチャしたAdvertisement Packetが次々と表示されます。
image.png

補足:電波強度に応じたフィルタリング

このままでもキャプチャは実施できるのですが、たいていの場合キャプチャされるパケットが多くて見づらいので、フィルタをかけてやった方がいいです。

キャプチャしたパケットのうち、電波強度が一定以上のもののみ表示させるには、Wireshark上部のフィルタ入力欄に以下のように入れます。

nordic_ble.rssi >= [電波強度]

閾値の電波強度は環境に応じて設定してください。(感覚的には-35から-45くらいで設定するとうまくいきます。)

その他使用できるフィルタは下記サイトに例示されています。

Connection後のパケットのキャプチャ

初期設定のままですと、以下のように接続要求(CONNECT_IND)パケットは表示されますが、それ以降のCentral-Peripheral間の通信は表示されません。

image.png

接続要求以降のパケットをキャプチャするには、Wireshark上部のDevice Listでキャプチャ対象のデバイスを選択していることと、デバイスを選択した状態で機器同士の接続が確立されることが必要です。

nordicのBLE Snifferは、Advertisementパケットのみをキャプチャするモード(デフォルト)と、特定のデバイスのCentral-Peripheral間の通信パケットをキャプチャするモードの、2つの動作モードがあります。
適切な操作をしない場合、デフォルトのモードのまま動作するため、コネクション確立後のパケットはキャプチャされません。

参考:

このため、まずキャプチャしたいCentralとPeripheralが接続されていない状態で、Device Listのボックスから対象の機器(主にはAdvertiseしているPeripheral)を選択し、(画像だとデバイス名が文字化けしてますが・・・)
image.png

そのあとにCentral-Peripheral間の接続確立操作をしてください。
Wiresharkが接続要求(CONNECT_IND)パケットをキャプチャすると、自動的にCentral-Peripheral間の通信をキャプチャするモードに切り替わります。

image.png

CONNECT_INDのパケットをSnifferが取り逃がしてしまった場合はモードが切り替わらないので、もし正しくキャプチャされない場合はいったん接続を切断し、再接続するところからやり直してください。

参考

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?