从事 WiFi 嵌入式软件开发的同学,802.11 协定层抓包剖析是一个须要熟练掌握的一个技能,须要通过剖析 WiFi 底层 802.11 协定层的数据包来定位问题。同时从学习 802.11 协定的角度而言,最无效的学习办法就是通过抓包来学习,从抓到的数据包中,能够验证之前实践学习局部的常识,通过对数据包的了解,不仅能够加深对 802.11 协定的了解,还能进步本人在理论应用中问题剖析、解决能力。
因为要抓到 802.11 协定层的数据包须要无线网络进入混淆模式,在不同的操作系统下须要不同的软硬件配合能力实现,本文分 3 局部顺次介绍:
- Windows 下 Microsoft Network Monitor
- Windows 下 Omnipeek
- Ubuntu 下 Wireshark
在不同操作系统下实现 802.11 数据包捕捉剖析。
Microsoft Network Monitor
嵌入式开发工程师开发环境通用应用 Windows,因为 Windows 下很多业余的抓包工具都须要特定的无线网卡和驱动反对才可实现混淆模式 802.11 数据捕捉。在某些场景下,这些业余的抓包工具不肯定会随身携带。所以先介绍一个 Windows 下 Microsoft 官网提供的轻量型的抓包工具 Microsoft Network Monitor。
Microsoft Network Monitor 是 Microsoft 官网提供的一款收费网络协议数据分析工具,不仅能够抓包,而且能够基于抓包后果做一些简略的数据分析。Microsoft Network Monitor 以后最新版本为 3.4,同时反对 32 位和 64 位零碎,可在 Microsoft 官网收费下载,下载地址为:https://www.microsoft.com/en-us/download/details.aspx?id=4865。我应用的零碎是 Win1064 位零碎,电脑自带的网卡驱动不反对混淆模式,测试发现外接了 360USBWiFi 可实现混淆模式_。_
软件装置过程较简略,没有须要特地留神的中央。须要留神的是,装置实现后须要重新启动一下电脑,否则软件可能无奈正确显示以后网络列表。
以管理员身份运行 Microsoft Network Monitor 3.4,在“Select Networks”中会正确显示以后全副网卡,能够通过 Friendly Name 和 Description 找到咱们要抓包的网卡。
一、一般模式
Microsoft Network Monitor 默认是“Local Mode”,该模式下软件只能捕捉以后选中的网卡收发的数据,是无奈捕捉到没有通过该网卡的数据的。
- 选中网卡后,点击“New Capture”,在弹出的页面中选中“Start”即可开始抓包。
- 可点击“Pause”暂停以后抓包;点击“Stop”进行以后抓包,“Stop”之后再次“Start”将革除当 = 前已捕捉到的数据。
- 在“Frame Summary”框内可发现软件反对捕捉到 WiFi 治理帧、TCP、UDP 等数据包,同时软件还可显示“Process Name”、“Source”、“Destination”等网络信息。
- 剖析以上数据,咱们能够发现,以后抓到的数据都是以后网卡收发的数据,即便 802.11 治理帧,也是以后网卡发给路由器的。
二、混淆模式
咱们在 WiFi 开发过程中定位问题通常须要通过无线网卡,捕捉路由器与其余 WiFi 设施之间通信的数据,一般模式下软件并没有捕捉到。Microsoft Network Monitor 反对无线网卡进入“Monitor Mode”,该模式即为混淆模式,此时可捕捉路由器与其余 WiFi 设施之间的通信数据包。
- 点击“Capture Settings”进入设置页面,能够看到以后选中的无线网卡
- 双击须要设置“Monitor Mode”的无线网卡,点击“Scanning Options”
- 在“WiFi Scanning Options”页面中,选中“Switch to Monitor Mode”,而后持续抉择信道扫描模式,软件反对 2 种信道切换模式,固定信道和信道扫描的模式。在信道扫描模式下,每一个信道勾留一会,依照工夫片程序,一个个信道开始抓包,这里须要依据理论须要设置。
- 设置实现后,点击“Apply”,并且须要放弃该页面为开启状态不能敞开,否则无线网卡主动退出“Monitor Mode”。
- 返回主界面,再次点击“Start”开始“Monitor Mode”下捕捉
- 从“Frame Summary”能够看到捕捉到了各种 802.11 治理帧,同时捕捉到了很多“Source”和“Destination”不一样的数据包。
- 抉择须要具体分析的数据包,可在“Frame Details”和“Hex Details”中查看具体数据包数据
- 点击“File”上面抉择“Save As”,可将以后捕捉数据保留为“.cap”,可供“wireshark”、“Omnipeek”等工具剖析。
三、总结
从理论应用中发现,Microsoft Network Monitor 性能无奈与“wireshark”、“Omnipeek”等业余抓包软件相媲美,然而能满足日常根本的 802.11 数据包捕捉、802.11 协定学习。上手快,受限也较少,更多功能也须要在应用在一直挖掘。