安裝並設定 Wireshark

在 GitHub 中查看來源

Wireshark 是一項開放原始碼工具,可解碼 Thread 堆疊中的網路通訊協定,例如 IEEE 802.15.4、6LoWPAN、IPv6、MLE (網格連結建立)、UDP、 和 CoAP

Pyspinel sniffer 工具會連結至 Thread NCP 或 RCP 裝置,並轉換成 Promicic Sniffer,產生 pcap (封包擷取) 串流,以便直接儲存或導回 Wireshark。

如要將 Wireshark 與 Pyspinel 搭配使用,請參閱下一個步驟中的安裝建議。此外,您也需要設定 Wireshark 才能正確顯示執行緒封包並取得 RSSI 測量結果。

安裝 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

看到對話方塊:「詢問非超級使用者能夠擷取封包嗎?」,請選取 [是],然後新增 wireshark 使用者並更新檔案權限:

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

macOS 和 Windows

下載並安裝 Wireshark。如要最佳化作業系統的安全性,請參閱 Wireshark - 特定平台的擷取權限專用資訊

設定 Wireshark 通訊協定

如要設定通訊協定,請在 Wireshark 中選取 [Preferences...] (偏好設定...),然後展開「通訊協定」部分。

6WWPAN

從通訊協定清單中選取 [6LoWPAN],然後驗證或變更下列設定:

  1. 取消勾選 [RFC 4944]
  2. 使用目標網路的網格本機前置字串更新 Context 0

OT Sniffer Wireshark 6LoWPAN

Wireshark 使用情境設定剖析剖析的 IPv6 位址,並正確顯示 IPv6 來源和目的地位址。

如要針對閘道上設定的其他網格項目前置字串顯示位址,請更新這些前置字串。

如要取得特定網格網格前置字串的 Context ID,請查看任何 MLE 資料回應訊息中的 Thread Network Data TLV。例如:

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

哥倫比亞航空

從通訊協定清單中選取 [CoAP],然後將 CoAP UDP 通訊埠設為 61631。如此即可確保顯示 TMF 訊息 (例如地址推銷)。

IEEE 802.15.4

從通訊協定清單中選取 [IEEE 802.15.4],然後驗證或變更下列設定:

  1. 802.15.4 Ethertype (十六進位) 設為「0x809a」。
  2. 將「Security Suite」設為「AES-128 Encryption,32 位元完整性防護」。
  3. 按一下「解密金鑰」旁的 [編輯...] 按鈕,然後在這個頁面上新增用於進行封包解密的執行緒網路主金鑰。

    1. 按一下 [+] 即可新增「解密金鑰」
    2. 在「解密金鑰」欄中輸入執行緒網路主金鑰。
    3. 輸入「1」做為解密金鑰索引
    4. 從「金鑰雜湊」資料欄清單選單中選取 [執行緒雜湊]

      OT Sniffer Wireshark IEEE 802.15.4

    5. 按一下 [OK] 即可儲存解密金鑰。

留言串

從通訊協定清單中選取 [Thread],然後驗證或變更下列設定:

  • 在「執行緒序列計數器」中輸入「00000000」。
  • 取消勾選 [使用永久帳號 ID 做為主鍵的前兩個八位元組]
  • 勾選 [自動取得會話串序列計數器]

按一下 [OK] 按鈕以儲存通訊協定變更。

部分執行緒流量可能會分析為 ZigBee 通訊協定。如要正確顯示這兩個通訊協定,請在 Wireshark 中編輯已啟用的通訊協定:

  1. 在 Wireshark 中前往 [分析],然後按一下 [已啟用的通訊協定]
  2. 取消勾選下列通訊協定:

    1. LwMesh
    2. ZigBee
    3. ZigBee 綠色電源

設定 Wireshark RSSI

如何在 Wireshark 中顯示 RSSI:

  1. 選取 [偏好設定...] 展開 [通訊協定] 部分,然後按一下 [IEEE 802.15.4]
  2. 設定「FCS 格式」

    • 如果 IEEE 802.15.4 TAP 已停用:TI CC24xx 中繼資料
    • 如果已啟用 IEEE 802.15.4 TAP:ITU-T CRC-16。如要按照 Nordic Semiconductor nRF52840 DK 的封包觸發指南操作,請參閱 --tap 旗標以瞭解詳情。
  3. 按一下 [OK] 即可儲存並返回 [偏好設定] 選單。

  4. 在「偏好設定」中,依序選取 [外觀] 和 [欄]

  5. 新增項目:

    • 標題:RSSI
    • 類型:自訂
    • 欄位:wpan.rssi

OT Sniffer Wireshark RSSI