关于fi dd ler 手机抓包 网卡地址地址_实测对比Wireshark利用nRF52832抓包和Packet Sniffer抓包体验...

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

市面上有几款常见的抓包工具,本文详细对比了Wireshark和TI CC2540 Sniffer软件Packet Sniffer对蓝牙模块抓包的测试体验。

经过测试Wireshark对比Packet Sniffer的使用体验,主要有三点:

1. Wireshark优化的软件布局和简化的抓包流程。

2. Wireshark解析彻底的抓包数据结构,便于分析。

3. Wireshark对抓包数据提前解析数据包类型,方便查找到对应的数据包。

在测试中,我们选用了信驰达科技基于nRF52832的RF-DG-32A硬件抓包工具,其价格、性能、稳定性上要好于TI的CC2540 USB Dongle硬件,各位电子工程师们可以尝试一下这款RF-DG-32A。

e6ede02d64cc319135003a1ca920f18d.png

-当然本文重点是软件方面的实测对比,具体的测试分析过程请看下面。

首先我们需要在测试前做好软硬件准备。

硬件部分我们需要准备信驰达科技的基于nRF52832的RF-DG-32A硬件抓包工具以及测试的模块:RF-BM-ND04模块和RSBRS02ABR模块。

5767ef6a67370677bb1bf7bafa041a54.pnga2a377dcb30936b3ab556ad6ef3189c4.png

软件部分我们需要准备Android手机端软件:nRF-connect,这个软件在应用商店可以很容易找到下载。在PC我们需要下载安装Wireshark软件,它的下载地址如下:https://www.wireshark.org/download.html

52f80e0374843681744053c271cb689e.png

以上软硬件准备完毕后,我们就可以开始进行RF-DG-32A的抓包测试。

一、首先我们使用RF-BM-ND04模块进行测试。

具体步骤为:

1. RF-DG-32A插上电脑的USB接口,然后打开“我的电脑”—“管理”—“设备管理器”—“端口”,查看设备的 COM 端口号。

1410678cc04eb918f3f7cb5639a35534.png

2.Wireshark软件,选择对应的COM号,双击COM号进入。

35aa56eceaa496945accba7d34f6fe06.png

3.将RF-BM-ND04模块上电,打开手机上对应的软件 nrf connect,查看设备的MAC 地址,软件里可以看到RF-BM-ND04设备地址是FA:8D:0D:27:50:C6。

449f3bac93db63650d32938b2de38fa9.png

4.在Wireshark软件中点击“Device”选择框,在下拉选项框中选择MAC地址为FA:8D:0D:27:50:C6的设备。

403debde7ec4e30ee51eba001fd5a83d.png4da0f13b86c096e886694d994b79067b.png

5.手机端软件nRF connect点击“CONNECT”连接到蓝牙模块。

8423f4f70556f574e623b8d644b4aa14.pngb2a76ec7c5bc971263c443004865f0d9.png

6.在手机端软件nRF connect中选择“Nordic UART Service”,在“TX”中发送数据 “rf-star”到模块。

4b6458de581e92030d12e4f55e70bf7c.pngc57394e49e130e216a9af92e14e9c8af.png

7.Wireshark软件在模块没有发送数据前,数据包显示是广播包LE LL 格式。Wireshark抓包正确的数据包格式为ATT,我们只需要找到ATT格式数据包,并双击ATT即可查看数据 。

17137fbc165050c19063af4443038f55.pnged3d68ee1e17b011a3d9ef63245cbc05.png

8.数据包界面如下图所示,解析出接收到的数据为rf-star,收发一致。说明已经成功抓到该数据

12973d5fa96b455300e9cd0819a118a6.png

我们更换发送的数据,重复上述发送数据步骤进行测试:

1.重复上述操作,手机发送的数据修改为:https://www.szrfstar.com/。Wireshark抓包结果为:

42b4346f1c3c76008738a296242cad08.png

2.手机多次向模块发送同一个数据包:“rf-star”,抓包显示的数据如下:

fa5230641c4e31511dc4ef11b8b96291.png5868d16a2d628dd28fae0f8f3556c723.png

提示:在使用Wireshark时,可以注意几个使用技巧,需要查看数据时可以先点击停止捕获按钮(红色),再观察数据。需要重新抓取则需要点击重新开始当前捕获按钮(绿色) ,点击后需要把设备断开连接,Wireshark会自动重新开始抓包 ,再重新连接上设备即可正常工作。 如果连接后发现Wireshark数据停止 则重新断开设备连接并重新连接即可正常工作

9b62c6f123b647ac0ecdcb9d49f47cd5.png

二、接下来我们使用RF-DG-32A对RSBRS02ABR模块进行测试抓包。

具体步骤为:

1. RF-DG-32A插上电脑的USB接口,然后打开“我的电脑”—“管理”—“设备管理器”—“端口”,查看设备的 COM 端口号。

b6009ab364bf901007391f2aabdf7ac6.png

2.Wireshark软件,选择对应的COM号,双击COM号进入。

c424fef654d55e24d045e646b339841f.png

3.将RSBRS02ABR模块上电,打开手机上对应的软件 nRF connect,查看设备 的MAC 地址,在本例中可以看到RSBRS02ABR设备地址是BA:03:28:1A:74:90。

7229825f1ececfa1b216046dd8a09452.png

4.在Wireshark软件中点击“Device”选择框,在下拉选项框中选择MAC地址为BA:03:28:1A:74:90的设备。

d8c1ee173da57c5a5d622d6d083a740d.png

5.手机端软件nRF connect点击“CONNECT”连接到蓝牙模块

b67961db98c48686c3ca80b0edf41d43.png550acd1b19fbc98204565535b2a50a4b.png

6.在手机端软件nRF connect中ffe5-ffe9下拉菜单中发送数据 “rf-star” 到模块。Wireshark软件在模块没有发送数据前,数据包显示是广播包LE LL 格式。Wireshark抓包正确的数据包格式为ATT,我们只需要找到ATT格式数据包,并双击ATT即可查看数据 。

400e8e4e01ddd0de3247fcdb5a60800e.pngff28204df58926beff6c59c30272bb26.png

7.数据包界面如下图所示,解析出接收到的数据为rf-star,收发一致。说明已经成功抓到该数据

2fd97b049e83f418402f0fe8debfba37.png

我们更换数据,重复上述发送数据进行测试:

1.重复上述操作,手机发送的数据修改为:https://www.szrfstar.com/。Wireshark抓包结果为:

5870c7c31f64d47d919f35ac5f6ffdcc.png

2.手机多次向模块发送同一个数据包:“rf-star”,抓包显示的数据如下:

08710e463d803c2610988b3988db0d46.png5d03c3c0003a83852588ffefde619ea3.png

三、使用RF-DG-32A硬件对Wireshark抓包测试后,我们再使用TI CC2540 Sniffer抓包工具Packet Sniffer进行测试。

硬件准备CC2540官方USB Dongle硬件以及RF-BM-ND04模块。

79c344b323343d4d09fbd67021e5f198.png

软件准备Android手机端:nRF-connect。

PC端:Packet Sniffer,下载地址为:http://www.ti.com.cn/tool/cn/PACKET-SNIFFER?keyMatch=PACKET%20SNIFFER&tisearch=Search-CN-everything

5411ef9aeae1d851c1c451d0b21d1b78.png

1. 安装好所需软件之后,打开Packet Sniffer,界面选择Bluetooth Low Energy ,点击下方start。

875848b72c8f40a6e2ad0d694541d8c9.png

2.点击star后界面如下所示,设备会自动识别官方USB Dongle设备

98dd05f6cb0ca3019cfbaf620eba2b86.png

3.我们点击下方 Radio Configuration 栏,选择广播信道(37、38、39),点击上方的三角形开始按钮搜索附近设备的广播信息

e49b53469b90e47f3c8ecad2d7555c1c.png487d9ca14d8b0e3e9b89ce05d710016b.png

4.打开手机APP nrf-connect,查看需要监听设备的地址信息为:BA:03:28:1A:74:90。

fee7ed34b5f593444e35f3a95ae83e21.png

5.点击软件下方Display filter栏,在 Field Name 中选择 ADV_IND Adva。

6.在Filter conditon 中输AA1=0x+ BA03281A7490 地址。点击first ,AA1=会自动增加,后面直接加上MAC地址BA03281A7490,点击 Add 添加该设备。再点击 Apply filter,即可抓到指定MAC地址的包。

732e5aeea697df155ae86cf59a751f02.png

通过上面Wireshark和的对比测试,我们可以看出,Wireshark的抓包体验好于TI公司的Packet Sniffer。

其一:Wireshark在进入抓包前,选择相应的COM口再进入抓包,Packet Sniffer则是通过底部区域选择对应的设备,底部区域占幅较大的设计使得抓包过程数据展示效果和Wireshark相比差很多。Packet Sniffer软件风格和布局过于陈旧,相比Wireshark在软件优化上做的更好。

其二:在Wireshark抓包展示的数据中,可以实时点击数据查看数据结构,双击即可查看底层协议的具体解析。而Packet Sniffer仅仅只能展示拆分的数据结构,展示部分结构的具体数值。相比之下,Wireshark可以完整地展示接收到的数据包的每一个结构的具体数值,堪称完美解析。

其三:Packet Sniffer需要逐条查看哪一条信息是接收到的数据,需要一定分析的方法才能找到正确的数据。而Wireshark提前解析好了每一条数据,可以清楚的知道哪一条是LE LL,哪一条是ATT,需要找到发送的数据包可以直接通过标记ATT的数据找到,非常方便高效,而且数据可以根据时间、协议排序,根据实际的数据查找要求,高效地、清楚地找到。毕竟Wireshark自被开源以来,经过至少数千名开发者的开发优化,使用体验得到很好的优化,免费好用的特性会吸引更多人的去尝试。

综合以上测评体验,如果选择蓝牙抓包软件进行BLE模块测试的话,推荐使用Wireshark。抓包硬件方面,信驰达推出的RF-DG-32A比TI 原厂的CC2540 USB Dongle使用体验更好,大家有兴趣可以尝试一下。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部