安装和配置 Wireshark

在 GitHub 上查看源代码

Wireshark 是一款可以对 Thread 堆栈中的网络协议进行解码的开源工具,例如 IEEE 802.15.4、6LoWPAN、IPv6、MLE(网状网建立)、UDP 和 CoAP。

Pyspinel Sniffer 工具连接到 Thread NCP 或 RCP 设备,并将其转换为混杂的数据包嗅探器,从而生成 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...(偏好设置...),然后展开 Protocols(协议)部分。

6LoWPAN

从协议列表中选择 6LoWPAN,然后验证或更改以下设置:

  1. 取消选中根据 RFC 4944 派生 ID
  2. 使用目标线程网络的网格本地前缀更新 Context 0

OT 嗅探器 Wireshark 6LoWPAN

Wireshark 使用上下文配置来解析压缩的 IPv6 地址,并正确显示 IPv6 源和目标地址。

如需显示网关上配置的其他网格前缀的地址,请使用这些前缀更新其他上下文 ID。

如需获取特定网格前缀的上下文 ID,请在任何 MLE 数据响应消息中查看线程网络数据 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. 安全套件设置为“AES-128 加密, 32 位完整性保护”。
  3. 点击解密密钥旁边的修改...按钮,您可以在其中添加线程网络主密钥以进行数据包解密。

    1. 点击 + 以添加解密密钥
    2. 解密密钥列中输入线程网络主密钥。
    3. 输入“1”作为解密密钥索引
    4. 密钥哈希列列表框中选择线程哈希

      OT 嗅探器 IEEE 802.15.4

    5. 点击 OK 以保存解密密钥。

会话

从协议列表中选择 Thread,然后验证或更改以下设置:

  • 线程序列计数器中输入“00000000”。
  • 取消选中使用 PAN ID 作为主密钥的前两个八位字节
  • 勾选自动获取线程序列计数器

点击确定按钮以保存所有协议更改。

某些线程流量可作为 ZigBee 协议进行分析。如需正确显示这两个协议,请修改 Wireshark 中已启用的协议:

  1. 在 Wireshark 中,转到 Analyze,然后点击 Enabled Protocols(已启用协议)。
  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。如果您遵循北欧半导体 nRF52840 DK 的数据包嗅探指南,请参阅 --tap 标志了解详情。
  3. 点击确定进行保存,然后返回到偏好设置菜单。

  4. 偏好设置中,依次选择外观

  5. 添加新条目:

    • 标题:RSSI
    • 类型:自定义
    • 字段:wpan.rssi

OT 嗅探器 RSSI RSSI