[资料分享] Zigbee抓包分析——介绍

Jacktang   2019-10-17 21:12 楼主

由于我们的网络是Zigbee,所以不得不学会抓包。
会抓包,这个很重要。做我们这行不会抓包,就等同于电子工程师不会示波器、程序员不会GDB。

#正题

抓包器介绍

我司用的抓包软件是Ubiqua,是花了重金买的。主界面如下: 

添加抓包器

首先,插上我们的抓包器,博主为 NXP 的 JN5168,用 FTDI 串口转USB 的 Dangle。
点击菜单栏:Device -> Add Device ... ,弹出设备添加框:
选 “NXP”,然后选重 "NXP FTDI Device",再点 “Add Device”,如下:

设置信道


然后点击设备上的开关按钮即可。

正常情况下,主界面就会出现大量的数据显示:

其中如下显示的,表示未解密包:

需要遇到 Transport Key 包方可解密。最简单的方法就是入一个设备进网络。

常用工具

在抓包器中一有些常用的工具:

  1. 保存当前数据
  2. 滚动显示
  3. 单包分解窗显示最新包
  4. 清空所有
  5. 当前过滤器
  6. 启用与关闭过滤器
  7. 新建过滤器
  8. 编辑当前过滤器
  9. 删除过滤器

过滤器

过滤器是必要的,不然人眼受不了。

新建过滤器

点击(7)所示的按钮,弹出如下框:

如果是Zigbee新手,用起来都比较麻烦。还有另一种简单的方法。
比如博主要抓 PANID=5FCC的包,即同一个网络的数据包。 先选中一个数据包样本。然后:

Zigbee包结构

ZCL包

如下为ZCL包,开关的属性报告:

Zigbee的协议很多与我们以太网络很像:

  • MAC
  • NWK
  • APS
  • ZCL

不详讲,只想提一下几点:

  • PANID 在 MAC 层里
  • MAC层与NWK层都有Source Address 与 Destination Address,MAC层的是当前包的源地址与目标地址,而NWK的是指真正的源地址到目标地址。类似以太网的IP层与MAC层的关系
  • Frame Information中有包的信息,包括信号强度
  • Cluster id 是在 APS 层

##常见的数据包介绍 如下数据包:

  • Management Permit Joining Request 开启与关闭组网
  • Beacon Request 请求信标
  • Beacon 信标
  • Acknowledgement (MAC) 点对点确认包
  • Acknowledgement (NWK) 目标到源确认包
  • Association Request 请求关联
  • Association Response 关联回复
  • Transport Key 传输密钥
  • Device Announce 设备通告
  • Active Endpoints Request 请求端点个数
  • Active Endpoints Response 回复端点个数
  • Simple Descriptor Request 请求端点简单描述
  • Simple Descriptor Response 回复端点简单描述
  • Data Request 终端结点向父结点获取数据
  • Bind Request 请求绑定
  • Bind Response 回复绑定
  • Configure Reporting 配置属性报告
  • Configure Reporting Response 配置属性报告回复
  • Read Attributes 读属性
  • Read Attributes Response 读属性回复
  • Write Attributes 写属性
  • Write Attributes Response 写属性回复
  • Report Attributes 属性报告

结语

本文就到介绍到这里,以后再一一介绍设备入网与控制的流程分析。

回复评论 (1)

学习,多谢

点赞  2019-10-18 09:47
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复