本帖最后由 强光手电 于 2016-8-4 14:35 编辑
蓝牙4.0 BLE的开发过程中,使用抓包器进行抓包分析无疑会极大地提高我们的开发效率,同时能帮我们快速的定位问题。对于初学者来说,抓包分析能让我们更快的理解蓝牙4.0 BLE的工作过程。
本文详细说明如何搭建EN-Dongle的抓包环境和如何使用EN-Dongle进行抓包。EN-Dongle抓包时会通过Sniffer软件调用强大的网络封包分析软件Wireshark捕获和分析BLE包。
1. 软硬件需求表一:软硬件需求
硬件需求 | | | | | | | | | | | | | | | | EN-Dongle下载和调试程序时使用,本章实际用不到 | | | | | | | Wireshark-win32-1.12.8或 Wireshark-win64-1.12.8 | | 网络封包分析软件,和Sniffer配合实现抓包和协议分析。安装时根据计算机选择对应的32位或64位版本。 |
2. 驱动及软件安装
使用EN-Dongle进行抓包和协议分析需要用到下面的1个驱动和两个软件。
1)CP2102驱动。
2)Wireshark。
3)Sniffer(绿色软件,无需安装)。
2.1 安装CP2102驱动
解压“CP210x_VCP_Windows.zip”,解压后如下图,根据具体情况选择安装32位版本或64位版本驱动。
1)Windows 32:安装“CP210xVCPInstaller_x86.exe”
2)Windows 64:安装“CP210xVCPInstaller_x64.exe”
图1:Wireshark安装文件
2.2 安装Wireshark
根据具体情况选择安装32位版本或64位版本。
● Wireshark-win32-1.12.8。
● Wireshark-win64-1.12.8。
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包 到这里,Dongle作为抓包器使用的工作环境已搭建完成。捕获广播包已经OK了,用手机连接一下BLE设备,观察Wireshark捕获窗口,整个连接过程的数据包会立即呈现在我们的眼前! |