BLE5抓包环境搭建——基于nRF52832

为了能快速搭建BLE5的抓包环境,写下此文章,希望能给蓝牙开发者带来一些帮助。以下是具体的步骤。文章末尾付需要的软件链接。

一、安装WireShark2.4.6

BLE的抓包是基于WireShark的,别的版本没有验证过,2.4.6版本是经过验证可用的。WinPcap是必须安装的。卸载原来的WireShark时,WinPcap不要删除,这样在安装2.4.6版本时就不用再安装WinPcap了。软件安装没啥好说的,一直点下一步就可以了。

安装wireshark

二、安装Python2.7

这里必须安装Python2.7版本,实测Python3不行,电脑上已经有Python2.7的话就不用再安装了,但是需要保证python的安装目录在环境变量里,可以在控制台输入“python –version”来查看是否安装好了。

查看python2.7是否安装正确

 三、安装pyserial V3.4

如果电脑能上网,可以在控制台输入以下命令:“python -m pip install pyserial”,这样就会自动联网下载pyserial。如果不能上网,可以按照以下步骤进行离线安装。

离线安装:解压pyserial-3.4.tar.gz,在控制台进入pyserial-3.4文件夹目录,依次执行命令:“python setup.py build”、“python setup.py install ”即可完成安装。如下图所示。

离线安装pyserial

四、设置WireShark

打开Wireshark,点击Help->Folder,然后再点击Extcap path的目录,打开Wireshark的extcap目录,或者直接通过Wireshark安装目录打开也行,如下图所示。

打开wireshark的extcap文件夹

将nrfsniffer200beta312oct20181c2a221下的extcap文件夹中的内容复制到wireshark的extcap文件夹中。 

复制extcap文件夹内容

将nrfsniffer200beta312oct20181c2a221下的Profile_nRF_Sniffer_v2_001文件夹复制到wireshark的profiles文件夹下。 

复制Profile_nRF_Sniffer_v2_001文件夹

五、开始抓包 

到这里,环境已经搭建好了。接下来关闭Wireshark,插上nrf52832 Sniffer,这里需要安装CP210x驱动,因为这个sniffer实际上是通过USB转TTL芯片CP210x与wireshark通信的,插入sniffer后可以在设备管理器中查看是否驱动是否正常。确保驱动无误后打开Wireshark,点击下图中的nRF Sniffer即可开始抓包,如果没有出现“nRF sniffer COMx”,则可能是串口驱动没有安装正确,或者pyserial没有安装正确。

插入sniffer,打开wireshark

最后,切换协议到之前设置的BLE协议:在Wireshark中点击Edit->Configuration Profiles…,出来以下选项,选择Profile_nRF_Sniffer_V2_001,点击OK完成设置。

选择解析协议

Sniffer默认抓取的是所有的广播包,可以在下图中Device中选择感兴趣的从机MAC地址,这样Sniffer就会只抓取该设备的数据包了。 有时候主机连上从机后,抓包工具就抓不到包了,这可能是抓包工具没有抓到跳频map,导致跟丢(只是猜测)。这时候主机断开重连一次可能就能抓到了。

sniffer抓取周围BLE设备的广播包

六、本文涉及的软件工具

链接:https://pan.baidu.com/s/1-P-jAOLgrkN6dihlCCVHEQ    提取码:8rgy 

发布了1 篇原创文章 · 获赞 0 · 访问量 16

猜你喜欢

转载自blog.csdn.net/qq_27575841/article/details/104055886
今日推荐