从事WiFi嵌入式软件开发的同学,802.11协议层抓包分析是一个需要熟练掌握的一个技能,需要通过分析WiFi底层802.11协议层的数据包来定位问题。同时从学习802.11协议的角度而言,最有效的学习方法就是通过抓包来学习,从抓到的数据包中,可以验证之前理论学习部分的知识,通过对数据包的理解,不仅可以加深对802.11协议的理解,还能提高自己在实际使用中问题分析、解决能力。

由于要抓到802.11协议层的数据包需要无线网络进入混杂模式,在不同的操作系统下需要不同的软硬件配合才能实现,本文分3部分依次介绍:

  1. Windows下Microsoft Network Monitor
  2. Windows下Omnipeek
  3. 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。我使用的系统是Win10_64位系统,电脑自带的网卡驱动不支持混杂模式,测试发现外接了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协议学习。上手快,受限也较少,更多功能也需要在使用在不断发掘。

802.11抓包软件对比之Microsoft Network Monitor的更多相关文章

  1. PCAP文件格式分析(做抓包软件之必备)

    转载源:http://blog.csdn.net/anzijin/article/details/2008333 http://www.ebnd.cn/2009/09/07/file-format-a ...

  2. C#版的抓包软件

    C#版的抓包软件   [创建时间:2015-09-10 22:37:04] NetAnalyzer下载地址 不好意思啊,NetAnalyzer停更有点长了,今天继续填坑^&^ NetAnaly ...

  3. 第三百三十节,web爬虫讲解2—urllib库爬虫—实战爬取搜狗微信公众号—抓包软件安装Fiddler4讲解

    第三百三十节,web爬虫讲解2—urllib库爬虫—实战爬取搜狗微信公众号—抓包软件安装Fiddler4讲解 封装模块 #!/usr/bin/env python # -*- coding: utf- ...

  4. 分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace(转)

    源:分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace Bus Hound官方下载地址:http://perisoft.net/bushound/Bus Hound ...

  5. 九 web爬虫讲解2—urllib库爬虫—实战爬取搜狗微信公众号—抓包软件安装Fiddler4讲解

    封装模块 #!/usr/bin/env python # -*- coding: utf-8 -*- import urllib from urllib import request import j ...

  6. CatchPacket网络抓包软件

    CatchPacket网络抓包软件  qq  22945088431.技术特点:基于WinPcap库,c# winform2.实现获取机器所有网卡,可任意选择监听3.可以捕获常见网络协议arp dns ...

  7. 抓包软件PowerSniff开发计划

    目前抓包的工具不顺手: (1)smartsniff, minisniffer不支持插件 (2)wireshark,omnipeek插件过于复杂,还有不是要装驱动就是admin权限 打算重写一个,第一个 ...

  8. 手机抓包软件Charles安装使用实例 (流媒体播放测试可去下载的时刻检测)

    手机抓包软件Charles安装使用实例   浏览:5258 发布日期:2015/07/17 分类:技术分享 关键字: 手机抓包软件 Charles 大胡子的博客Charles安装使用实例 Charle ...

  9. 如何在Windows系统上用抓包软件Wireshark截获iPhone等网络通讯数据

    http://www.jb51.net/os/windows/189090.html 今天给大家介绍一种如何在Windows操作系统上使用著名的抓包工具软件Wireshark来截获iPhone.iPa ...

随机推荐

  1. ES概要

    ES分布式搜索,依赖了Lucene来提供搜索引擎功能,每个数据节点都是一个Lucene实例,通过将索引进行分片,写入和查询时候操作或查询对应分片,来达到水平扩展的能力 节点 Master node:负 ...

  2. oracle 存储过程深入学习与应用

    对于存储过程已经有过一周的学习时间了,但是之学到一些皮毛,争取根据基础,熟练后能进行深入. --1.存储过程创建存储过程的语法: CREATE [ OR REPLACE ] PROCEDURE pro ...

  3. Java中的常见数学运算

    1.舍掉小数取整:Math.floor(3.5)=3 2.四舍五入取整:Math.rint(3.5)=4 3.进位取整:Math.ceil(3.1)=4 4.取绝对值:Math.abs(-3.5)=3 ...

  4. 文件流转blob并播放

    axios 这里是请求了个mp3做例子: this.$axios({ methods:"GET", url:"/api/music/soures/双笙.mp3" ...

  5. shp文件转dwg并创建文本标注

    不得不说,ArcGIS 和 CAD 之间的兼容性非常差,shapefile文件和dwg文件之间互相转换会丢失各种属性,但是很多时候他们之间的转换对我们来说是刚需.通常我们都是通过第三方软件(如FME) ...

  6. 服务网格istio概念应知应会

    一.背景 最近架构组基于istio开发了服务网格(Service Mesh)平台,借此机会把相关的背景知识做一次学习和记录,方便回头查看. 初版的效果: 二.istio 官方手册:https://is ...

  7. 利用ms08_067入侵window xp sp1(English)版本

    前几天上课,老师搬出实验,自己体验了一下 1.环境配置 需要准备kali(攻击机),window xp (我这里是sp1 英文版本,标题很清楚了),攻击机和目标靶机要在同意网段下我的kali(192. ...

  8. Java并发原理层面:ReentrantLock中lock()、unlock()全解析

    一.前言 Java线程同步两种方式,synchronized关键字和Lock锁机制,其中,AQS队列就是Lock锁实现公平加锁的底层支持. 二.AQS源码对于lock.lock()的实现 2.1 AQ ...

  9. 解决 cannot resolve 依赖包的问题

    在maven import的时候 报这样的错误 之前也经常碰到这样的错误,通过reimport.清缓存等方法都可以解决.但这次试了好多次都还是这样,查看maven后发现我pom文件里也没写错. 最后是 ...

  10. (数据科学学习手札98)纯Python绘制满满艺术感的山脊地图

    本文示例代码及附件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 下面的这幅图可能很多读者朋友们都看到过,这 ...