Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

Wireshark をインストールして構成する

GitHub でソースを見る

Wireshark は、IEEE 802.15.4、6LoWPAN、IPv6、MLE(Mesh Link Establishment)、UDP など、スレッドスタック内のネットワーク プロトコルをデコードできるオープンソース ツールです。と CoAP

Pyspinel スニッファー ツールは、Thread NCP または RCP デバイスに接続して無作為のパケット スニファーに変換し、pcap(パケット キャプチャ)ストリームを生成して、Wireshark に直接保存またはパイプします。

Pyspinel で Wireshark を使用するには、次のステップでインストールに関する推奨事項をご覧ください。また、スレッド パケットを適切に表示し、RSSI 測定値を受信するように、Wireshark を構成する必要があります。

Wireshark をインストールする

Linux

ターミナルを開いて次のコマンドを実行して Wireshark をダウンロードしてインストールします。

sudo add-apt-repository ppa:wireshark-dev/stable
sudo apt-get update
sudo apt-get install wireshark

root 以外のユーザーとして Wireshark を実行することをおすすめします。その場合は、パッケージを再構成します。

sudo dpkg-reconfigure wireshark-common

「Supersuper 以外のユーザーがパケットをキャプチャできるようにする必要がありますか?」というダイアログが表示されたら、[はい] を選択して、wireshark ユーザーを追加し、ファイルの権限を更新します。

sudo adduser $USER wireshark
sudo chmod +x /usr/bin/dumpcap

macOS と Windows

Wireshark をダウンロードしてインストールします。オペレーティング システムのセキュリティを最適化するには、Wireshark - キャプチャ権限に関するプラットフォーム固有の情報をご覧ください。

Wireshark プロトコルを設定する

プロトコルを構成するには、Wireshark で [Preferences...] を選択し、[Protocols] セクションを展開します。

6 WPAN

プロトコルのリストから [6LoWPAN] を選択し、次の設定を確認または変更します。

  1. [RFC 4944 に準拠した派生 ID] チェックボックスをオフにします。
  2. コンテキスト 0 を、ターゲット Thread ネットワークのメッシュ ローカル プレフィックスで更新します。

OT スニファー Wireshark 6LoWPAN

Wireshark では、コンテキスト構成を使用して圧縮された IPv6 アドレスを解析し、IPv6 の送信元アドレスと宛先アドレスを正しく表示します。

ゲートウェイで設定されている他のメッシュ上のプレフィックスのアドレスを表示するには、これらのプレフィックスで他のコンテキスト ID を更新します。

特定のメッシュ内の接頭辞のコンテキスト ID を取得するには、MLE データ レスポンス メッセージで Thread Network Data TLV を確認します。例:

Context 1: fd00:7d03:7d03:7d03::/64

CoAP

プロトコルのリストから [CoAP] を選択し、[CoAP UDP ポート] を「61631」に設定します。TMF のメッセージ(アドレス要求など)が表示されるようにします。

IEEE 802.15.4

プロトコルのリストから [IEEE 802.15.4] を選択し、次の設定を確認または変更します。

  1. [802.15.4 Ethertype (in hex)] を「0x809a」に設定します。
  2. [セキュリティ スイート] を [AES-128 暗号化、32 ビット整合性保護] に設定します。
  3. [復号鍵] の横にある [編集] ボタンをクリックします。ここでは、スレッド ネットワークのマスター鍵を追加してパケットを復号します。

    1. [+] をクリックして復号鍵を追加します。
    2. [復号鍵] 列に Thread ネットワークのマスターキーを入力します。
    3. [復号鍵のインデックス] に「1」と入力します。
    4. [キーハッシュ] 列リストボックスから [スレッドハッシュ] を選択します。

      OT スニファー Wireshark IEEE 802.15.4

    5. [OK] をクリックして復号鍵を保存します。

Thread

プロトコルのリストから [Thread] を選択し、次の設定を確認または変更します。

  • [スレッド シーケンス カウンタ] に「00000000」と入力します。
  • [マスター ID のオクテット 2 つとして PAN ID を使用する] チェックボックスをオフにします。
  • [Thread sequencecounter を自動的に取得する] チェックボックスをオンにします。

[OK] ボタンをクリックして、プロトコルの変更をすべて保存します。

一部の Thread トラフィックは ZigBee プロトコルとして分析される場合があります。この 2 つのプロトコルを正しく表示するには、Wireshark で有効なプロトコルを編集します。

  1. Wireshark で [Analyze] に移動し、[Enabled Protocols] をクリックします。
  2. 次のプロトコルはオフにします。

    1. LwMesh
    2. ZigBee(英語)
    3. ZigBee Green 電源

Wireshark の RSSI を構成する

Wireshark で RSSI を表示するには:

  1. [Preferences] を選択し、[Protocols] セクションを展開して [IEEE 802.15.4] をクリックします。
  2. [FCS Format] を設定します。

    • IEEE 802.15.4 TAP が無効になっている場合: TI CC24xx メタデータ
    • IEEE 802.15.4 TAP が有効になっている場合: ITU-T CRC-16。Nordic Semiconductor nRF52840 DK のパケット スニッフィング ガイドを使用している場合は、--tap フラグをご覧ください。
  3. [OK] をクリックして保存し、[Preferences] メニューに戻ります。

  4. [設定] で、[デザイン]、[表示項目] の順に選択します。

  5. 新しいエントリを追加するには:

    • タイトル: RSSI
    • タイプ: カスタム
    • フィールド: wpan.rssi

OT スニファー Wireshark RSSI