<ph type="x-smartling-placeholder"></ph> GitHub のソースを表示
Wireshark は、Thread でネットワーク プロトコルをデコードできるオープンソース ツールです。 (IEEE 802.15.4、6LoWPAN、IPv6、MLE(Mesh Link Establishment)、UDP、 CoAP です
Pyspinel スニファー ツールは Thread NCP または RCP デバイスに接続して、デバイスを パケット スニファーに変換され、パケット キャプチャ(pcap)ストリームを 直接 Wireshark に保存またはパイプ処理できます。
Wireshark を Pyspinel で使用する場合は、 確認しましょう。Thread パケットを適切に表示するように Wireshark を設定する必要もあります。 RSSI 測定値を受信します
Wireshark をインストールする
Linux
ターミナルを開き、次のコマンドを実行して Wireshark をダウンロードしてインストールします。
sudo add-apt-repository ppa:wireshark-dev/stable
sudo apt-get update
sudo apt-get install wireshark
Wireshark は、root
以外のユーザーとして実行することをおすすめします。そのためには、パッケージを再構成します。
sudo dpkg-reconfigure wireshark-common
「When non-superusers be cannot capture packets?(スーパーユーザー以外のユーザーがパケットをキャプチャできるようにする必要がありますか)」というダイアログが表示されたら、
[Yes] を選択してから、wireshark
ユーザーを追加してファイルの権限を更新します。
sudo adduser $USER wireshark
sudo chmod +x /usr/bin/dumpcap
macOS と Windows
Wireshark をダウンロードしてインストールします。オペレーティング システムや Wireshark - キャプチャ権限に関するプラットフォーム固有の情報をご覧ください。
Wireshark プロトコルを設定する
プロトコルを設定するには、Wireshark で [Preferences...] を選択し、 プロトコル セクション。
6LoWPAN
プロトコルのリストから [6LoWPAN] を選択し、以下を確認または変更します。 設定:
- [Derive ID on RFC 4944] チェックボックスをオフにします。
- Context 0 をターゲット スレッドのメッシュ ローカル接頭辞で更新します。 接続します
Wireshark はコンテキスト設定を使用して、圧縮された IPv6 アドレスと IPv6 の送信元アドレスと宛先アドレスが正しく表示される。
ゲートウェイで構成されている他のメッシュ上のプレフィックスのアドレスを表示するには、次のようにします。 それらの接頭辞で他のコンテキスト ID を更新する。
特定のメッシュ上の接頭辞のコンテキスト ID を取得するには、[Thread Network Data] を表示します。 MLE データ レスポンス メッセージの TLV。例:
Context 1: fd00:7d03:7d03:7d03::/64
CoAP
プロトコルのリストから [CoAP] を選択し、[CoAP UDP ポート] を設定します。 61631 に変更します。これにより、TMF メッセージ(アドレスの要求など)が確実に表示されるようになります。
IEEE 802.15.4
プロトコルのリストから [IEEE 802.15.4] を選択し、 次の設定を行います。
- [802.15.4 Ethertype (in hex)] を「0x809a」に設定します。
- [Security Suite] を [AES-128 Encryption, 32-bit Integrity] に設定します。 保護」といいます。
[Decryption Keys] の横にある [Edit...] ボタンをクリックします。 パケット復号用の Thread ネットワークのマスターキーを追加
- [+] をクリックして復号鍵を追加します。
- Thread ネットワークのマスターキーを [復号キー] 列に入力します。
- 「1」と入力します復号鍵インデックスとして指定します。
[キー ハッシュ] 列リストボックスから [スレッド ハッシュ] を選択します。
[OK] をクリックして復号鍵を保存します。
スレッド
プロトコルのリストから [Thread] を選択し、以下を確認または変更します。 設定:
- 「00000000」と入力しますスレッド シーケンス カウンタの値です。
- [Use PAN ID as first two octets of master key] チェックボックスをオフにします。
- [スレッド シーケンス カウンタを自動的に取得する] をオンにします。
[OK] ボタンをクリックして、プロトコルの変更を保存します。
Thread トラフィックの一部は、ZigBee プロトコルとして分析される場合があります。適切な 次の 2 つのプロトコルを表示するには、Wireshark で有効なプロトコルを編集します。
- Wireshark で [Analyze] に移動し、[Enabled Protocols] をクリックします。
次のプロトコルのチェックボックスをオフにします。
- LwMesh
- ZigBee
- ZigBee Green Power
Wireshark RSSI を設定する
Wireshark で RSSI を表示するには:
- [設定] を選択し、[プロトコル] セクションを開いて [ IEEE 802.15.4。
[FCS 形式] を設定します。
- IEEE 802.15.4 TAP が無効になっている場合: TI CC24xx メタデータ。
- IEEE 802.15.4 TAP が有効になっている場合: ITU-T CRC-16フォロー中の場合
Nordic Semiconductor nRF52840 のパケット スニッフィング ガイド
デンマーク。詳しくは、
--tap
フラグをご覧ください。
[OK] をクリックして保存し、[設定] メニューに戻ります。
[設定] で [デザイン]、[列] の順に選択します。
新しいエントリを追加します。
- タイトル: RSSI
- タイプ: カスタム
- フィールド: wpan.rssi