你的位置:首页 > 操作系统

[操作系统]蓝牙4.0BLE抓包(一)


 版权声明:本文为博主原创文章,未经博主允许不得转载。    

      蓝牙4.0 BLE的开发过程中,使用抓包器进行抓包分析无疑会极大地提高我们的开发效率,同时能帮我们快速的定位问题。对于初学者来说,抓包分析能让我们更快的理解蓝牙4.0 BLE的工作过程。

本文详细说明如何搭建EN-Dongle的抓包环境和如何使用EN-Dongle进行抓包。EN-Dongle抓包时会通过Sniffer软件调用强大的网络封包分析软件Wireshark捕获和分析BLE包。

1. 需要的工具

                      表一:硬件需求

序号

设备

数量数量

1

计算机

1台

2

EN-Dongle

1个

3

J-LINK仿真器

1套

4

MINI USB数据线

1根

                    表二:软件需求

序号

名称

1

ble-sniffer_win_1.0.1

2

Wireshark-win32-1.12.8或

Wireshark-win64-1.12.8


2. 驱动及软件安装

    使用EN-Dongle进行抓包和协议分析需要用到下面的1个驱动和两个软件。

  • CP2102驱动。
  • Wireshark。
  • Sniffer(绿色软件,无需安装)。

2.1 安装CP2102驱动

    解压“CP210x_VCP_Windows.zip”,解压后如下图,根据具体情况选择安装32位版本或64位版本驱动。 

  • Windows 32:安装“CP210xVCPInstaller_x86.exe”
  • Windows 64:安装“CP210xVCPInstaller_x64.exe”

 

     图1:Wireshark安装文件

2.2 安装Wireshark 

    根据具体情况选择安装32位版本或64位版本。

  • Wireshark-win32-2.0.0。
  • Wireshark-win64-2.0.0。

    1) 双击Wireshark安装程序,弹出安装窗口,点击“Next”。

  

                                       图2:安装Wireshark

   2) 点击“I Agree”。

                                       图3:安装Wireshark

 3) 点击“Next”。

                                        图4:安装Wireshark

 4) 选择安装在默认路径后点击“Next”。

                                    图5:安装Wireshark

5) 勾选“Install WinPcap 4.1.3”,点击“Next”。

                                    图6:安装WinPcap

6) 点击“I Agree”。

                                 图7:安装WinPcap

7) 点击“Finish”完成安装。

                                        图8:完成安装

2.3 安装Sniffer

    Sniffer是绿色软件,无需安装,解压后双击“ble-sniffer_win_1.0.1_1111_Sniffer.exe”即可运行。

                      图9:Sniffer软件

3. 使用EN-Dongle抓包

1) 将EN-Dongle连接到计算机的USB接口上,并让EN-Dongle处于Central和Peripherel的信号覆盖范围内,如下图所示。

 

                                                         图10:EN-Dongle抓包示意图

2) 双击“ble-sniffer_win_1.0.1_1111_Sniffer.exe”,启动Sniffer。Sniffer启动后会自动检查串口及周围的 BLE 器件,如下图所示。

                                                       图11:Sniffer软件界面

     上图中信息栏显示了Sniffer读取的串口是:COM25。设备列表中显示Sniffer已经抓取到两个BLE设备,编号分别是“0”和“1”。

 

3) 输入编号,选择BLE 器件,如下图所示。

                                                              图12:输入编号选择Device

4) 输入“w”启动Wireshark,开始抓包。

                                                           图13:启动Wireshark

5) Wireshark启动后,我们就可以看到捕获的BLE包了,如下图所示。

    Wireshark是一个很牛的网络封包分析软件,支持众多协议,做过网络通信相关开发的朋友对Wireshark都不会陌生,即使没用过也应该听说过。Wireshark可以帮助我们将一个个原始的BLE数据包按照BLE的协议进行解析,并以我们能看得懂的形式展现。

                                                       图14:Wireshark捕获的BLE包

    选中一个BLE包(这里捕获的是广播包),展开树形目录,即可看到Wireshark对这个广播包的分析。

                                                              图15:Wireshark解析BLE包

      到这里,捕获广播包已经OK了,用手机连接一下BLE设备,观察Wireshark捕获窗口,整个连接过程会立即呈现在我们的眼前!