Zigbee抓包分析——介紹

#背景 博主從事的是智能家居領域的網關研發工做。
因爲咱們的網絡是Zigbee,因此博主不得不學會抓包。
會抓包,這個很重要。作咱們這行不會抓包,就等同於電子工程師不會示波器、程序員不會GDB。程序員

#正題網絡

抓包器介紹

我司用的抓包軟件是Ubiqua,是花了重金買的。主界面以下: 抓包器主界面工具

添加抓包器

首先,插上咱們的抓包器,博主爲 NXP 的 JN5168,用 FTDI 串口轉USB 的 Dangle。
點擊菜單欄:Device -> Add Device ... ,彈出設備添加框:
選 「NXP」,而後選重 "NXP FTDI Device",再點 「Add Device」,以下:
輸入圖片說明orm

設置信道

設備信道
而後點擊設備上的開關按鈕便可。
開啓圖片

正常狀況下,主界面就會出現大量的數據顯示:
數據包
其中以下顯示的,表示未解密包:
未解密包
須要遇到 Transport Key 包方可解密。最簡單的方法就是入一個設備進網絡。ip

經常使用工具

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

  1. 保存當前數據
  2. 滾動顯示
  3. 單包分解窗顯示最新包
  4. 清空全部
  5. 當前過濾器
  6. 啓用與關閉過濾器
  7. 新建過濾器
  8. 編輯當前過濾器
  9. 刪除過濾器

過濾器

過濾器是必要的,否則人眼受不了。it

新建過濾器

點擊(7)所示的按鈕,彈出以下框:
新建過濾
若是是Zigbee新手,用起來都比較麻煩。還有另外一種簡單的方法。
好比博主要抓 PANID=5FCC的包,即同一個網絡的數據包。 先選中一個數據包樣本。而後:
添加過濾io

Zigbee包結構

ZCL包

以下爲ZCL包,開關的屬性報告:
ZCL包
Zigbee的協議不少與咱們以太網絡很像:form

  • 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 屬性報告

結語

本文就到介紹到這裏,博主之後再一一介紹設備入網與控制的流程分析。

相關文章
相關標籤/搜索