1、使用无线AP设备抓包分析WiFi相关问题的思路使用无线AP设备抓包分析WiFi相关问题的思路无线抓包的手段,可以记录下一定频段、时间、空间之内的WiFi通讯过程,将无线数据包记录保存,以供我们分析需要解决的问题,找到解决办法。适用范围所有计算终端产品、具备WiFi通讯能力的产品,包括但不限于:手持计算终端、车载计算终端等解决方案Contents一、WiFi无线网络抓包技术手段的主要应用场景出现以下情况时,可以考虑使用无线抓包的手段帮助分析故障原因:无法通过其它经验/测试手段判断问题出现在哪里(无线、网络、服务器、应用程序、手持终端),可以抓取数据进行分析,帮助问题定位;帮助我们确认问题/责任归
2、属(例如长城汽车的案例);当产品部门要求抓取日志的同时,抓取无线数据包,在处理Wi-Fi相关问题时,可以提供帮助(例如EDA60K在京东天津仓更改漫游机制时);当漫游切换效果总是不理想的时候,可以抓包分析漫游切换过程。二、无线网络抓包方式简介:主流的抓包手段主要有两种:通过特定无线网卡和软件进行抓包通过特定无线AP设备进行抓包无论使用哪种抓包手段,WiFi无线抓包的基本限制条件如下:只能够抓取在同一空间(距离太远,收不到的不行)范围内的数据包;同一时间统一设备只能够抓取同一信道的数据包;本文主要介绍利用无线AP设备进行WiFi无线抓包的方法,特定无线网卡抓包方法暂不作重点介绍。1.抓包设备组成
3、:如上图所示,需要的具体设备如下表描述:设备名称设备品牌型号简单描述数量无线APRuckus R500双频802.11ac 2 stream 无线AP1PoE供电模块不限为无线AP提供网线供电功能,与电源适配器二选一1无线AP电源适配器不限12v 1A,外负内正,与POE模块二选一1网线不限网络跳线,长度根据现场情况选择2PC/Laptop不限具备千兆有线网卡即可1抓包软件Wireshark开源免费抓包工具软件,无版权问题12.抓包操作步骤介绍:1)准备工作:根据你的需要,设计抓包的场景和时机:简单来说,一定要保证发生问题的时候,AP与手持处于相近位置,并且正在抓取数据包;如果问题发生在移动场
4、景中,范围小时,可以将AP安装在中心位置,有点距离的数据包,也是可以监听到的;范围大时,采用移动电源的方式(小型APS),移动跟随抓包;2)步骤1:设置无线AP进入抓包工作状态:启动无线AP:将AP连接电源,并与PC通过网线连接,如下图所示:使用PoE模块连接示意图使用外借电源连接示意图将PC/Laptop网卡ip地址设置为192.168.1.xx/24;通过ping 192.168.1.1(AP缺省IP地址),确认AP已经启动完毕;3)步骤2:设置无线AP进入抓包工作状态:通过SSH连接到AP(用户名/密码:super/sp-admin),然后输入以下命令,配置AP进入监听模式:a.查看监听
5、空口状态,WLAN100为2.4GHz空口,WLAN101为5GHz空口;rkscli: get wlanlist #用这个命令来确认WLAN100/WLAN101两个监听空口的状态name status type wlanID radioID bssid-svcp up AP wlan0 0 2c:5d:93:30:5b:48home up AP wlan1 0 2c:5d:93:70:5b:48rcks up AP wlan2 0 2c:5d:93:b0:5b:48mdfx down AP wlan3 0 00:00:00:00:00:00wlan4 down AP wlan4 0 00:
6、00:00:00:00:00wlan5 down AP wlan5 0 00:00:00:00:00:00wlan6 down AP wlan6 0 00:00:00:00:00:00wlan100 down MON wlan100 0 00:00:00:00:00:00wlan32 up AP wlan32 1 2c:5d:93:30:5b:4cwlan33 up AP wlan33 1 2c:5d:93:70:5b:4cwlan34 up AP wlan34 1 2c:5d:93:b0:5b:4cwlan35 down AP wlan35 1 00:00:00:00:00:00wlan36
7、 down AP wlan36 1 00:00:00:00:00:00wlan57 down AP wlan57 1 00:00:00:00:00:00wlan58 down AP wlan58 1 00:00:00:00:00:00wlan101 down MON wlan101 1 00:00:00:00:00:00OKrkscli:b.以2.4GHz监听为例,设置WLAN100空口工作在监听状态;使用get wlan命令检查符合配置是否成功;rkscli: set capture wlan100 stream Capturing in 20 MHz channel BWOKrkscli:
8、 get wlanlistname status type wlanID radioID bssid-svcp up AP wlan0 0 2c:5d:93:30:5b:48home up AP wlan1 0 2c:5d:93:70:5b:48rcks up AP wlan2 0 2c:5d:93:b0:5b:48mdfx down AP wlan3 0 00:00:00:00:00:00wlan4 down AP wlan4 0 00:00:00:00:00:00wlan5 down AP wlan5 0 00:00:00:00:00:00wlan6 down AP wlan6 0 00:
9、00:00:00:00:00wlan26 down AP wlan26 0 00:00:00:00:00:00wlan100 up MON wlan100 0 00:00:00:00:00:00wlan32 up AP wlan32 1 2c:5d:93:30:5b:4cwlan33 up AP wlan33 1 2c:5d:93:70:5b:4cwlan34 up AP wlan34 1 2c:5d:93:b0:5b:4cwlan35 down AP wlan35 1 00:00:00:00:00:00wlan57 down AP wlan57 1 00:00:00:00:00:00wlan
10、58 down AP wlan58 1 00:00:00:00:00:00wlan101 down MON wlan101 1 00:00:00:00:00:00OKrkscli:c.设置监听信道,以2.4GHz信道1为例;rkscli: set channel wlan100 1OK4)步骤3:通过PC/Laptop执行抓包:a.在PC上打开Wireshark软件,选择CaptureOptions;b.点击Manage Interfacec.进入Remote Interface选项卡,点击Add添加远程监听空口d.输入无线AP的ip地址;e.确认添加成功;f.选择wlan100作为本次抓包的
11、监听空口,选择保存抓包文件位置,点击开始startg.查看结果,同时将抓包数据保存为Wireshark capture file (.pcapng)文件三、抓包文件的分析无线数据抓包完成后,你能够在Wireshark中看到很多数据:抓包的过程会将无线AP能够接手到的特定信道的所有无线数据包都记录下来,但是与我们需要处理问题相关的数据却没有这么多,因此我们的第一件事就是:1.找到你需要的数据最常用的找到数据的方法就是过滤。Wireshark提供丰富的过滤器功能,帮助我们找出我们关心的数据包。1)WLAN地址过滤所谓wlan地址过滤,过滤是无线设备的MAC地址。无线数据包与有线以太网数据包的帧格式
12、不同,在过滤指令上与有线网的MAC不同,因而在此单独列出。我们经常用wlan地址过滤来筛选出我们关心的无线客户端的相关数据,简单举例如下:例如我们要过滤出某个手持终端发出的所有数据,可以使用下列命令(假设该终端无线网卡MAC地址是:00:10:40:bf:6e:98。wlan.sa=00:10:40:bf:6e:98其中wlan.sa表示过滤的目标是无线数据包中,源地址(sa表示source address)是00:10:40:bf:6e:98的数据包过滤中的等于号用=表示把上述命令输入过滤命令栏,回车后wireshark会对数据进行过滤,如下图所示:wlan.da表示对目的地址的过滤(da=
13、destination address)wlan.addr表示对目的或源地址同时过滤,等于wlan.sa和wlan.da两个条件或联合过滤效果2)MAC地址过滤与wlan.da/sa/addr类似,以eth开头,替换wlan;例如eth.sa=00:10:40:bf:6e:983)IP地址过滤以ip开头,例如ip.addr=192.168.0.1;同样sa表示源地址,da表示目的地址;4)控制帧类型过滤基本上网络数据包可以分为两大类:应用数据和协议控制。在处理一些比如断网、掉线等明显的协议控制类的现象时,我们可以根据一些特定的控制帧类型来做过滤。比如,发现PDA总是掉线,那个我们就可以用下面这
14、个语句查找AP设备踢PDA下线的数据包:wlan.fc.type_subtype=0x0cwlan表示无线,fc表示控制帧,type_subtype表示控制帧的类型,0x0c是deauthenticaiton包的特定类型编码。过滤效果如下:5)协议过滤如果面对的问题是某个应用程序通讯问题,而不是WiFi掉线、漫游慢等问题,我们可以通过协议过滤来找出某个应用相关的数据包。例如telenet应用一般使用tcp 23端口作为通讯端口,我们可以通过下面的命令来过滤:tcp.port = 236)多条件查询过滤我们可以通过多个过滤语句的联合查询来过滤出我们需要的数据。联合的方式主要是: “|”或联合“&
15、”并联合 “()”括号可以用来规定过滤执行顺序举例来说,想过滤出A和B之间所有无线数据包中某个应用的数据包:假设A是PDA,B是服务器;首先确定A的无线网卡地址为00:11:22:33:44:55:66其次B是有线网络上的某服务器,没有wlan地址,但我们知道IP地址是:10.0.0.1最后应用程序采用webservice通讯方式,使用8080端口可以采用的过滤语句为:(wlan.addr=00:11:22:33:44:55:66 & ipaddr=10.0.0.1) & tcp.port=80802.在数据包中发现信息在找到我们感兴趣的数据包之后,下一步是找到我们感兴趣的数据包信息。有几个常
16、用的手段来发现数据包中的异常情况。1)查看无线基本连接信息每个无线数据包中都包含基础的无线网络信息,这些基本信息可以给我们一些WiFi通讯的基本情况。如下图所示,选中任何一个数据包记录后,在下方的数据包详细信息面板中,你可以看到展开的数据包具体信息。在802.11 radio information下,我们能够读到很多基本信息,这些信息包括:连接协议(PHY type):通讯时使用的802.11协议是abgn的哪一个?连接速率(data rate):当前的连接速率是多少?信道(channel):使用的信道是哪个频段、编号、20MHz还是40MGz(ac和n协议才会使用40MHz)?信号强度(s
17、ignal strength):表示这个数据包接收时的信号强度是多少(监听设备接受到的,不表示客户端接受到的)利用好这些基础信息,在后面找到问题数据包后分析问题会有一定帮助。2)利用Wireshark颜色提示功能Wireshark会在现实数据时,对不同类型的数据包显示出不同的颜色,颜色分类原则上是问题越大、越可疑的数据包颜色越深,如下图:这个黑色显示的数据包查看具体内容时,会发现错误提示:校验错误!也就是说,这个数据包的校验值是不对的!但为什么会发这这个问题,我们再查看更多的基本信息,发现:这个数据包的信号接收强度已经无法记录(dBm antenna signal:0),因此可以初步判断,这个
18、数据包的发射源距离抓包AP很远或阻挡物多,信号太差导致数据接收的错误。Wireshark对于颜色显示的定义也是可以自己做设置的,如下图:在菜单viewer-coloring rules中,我们可以修改或查看当前的定义内容:3.案例举例对于无线数据包的分析,有很多技巧和基本知识需要掌握,错综复杂,本文无法全面涉及,写几本书也是可以的。但实际操作中,其实也没有看上去的那么难。下面以在长城汽车自动变速器车间发生的实际问题为例,做一个案例介绍,希望能对大家有所帮助。1)长城汽车CK75-Extreme 无线-H3C 交换机故障分析问题背景:CK75连接Extreme的无线(AP7522)时,长时间连接
19、不上无线网络,或者连接上之后网络不通。Extreme说,你们终端有问题,因为其他设备能正常连接;我们说,我们的终端没有问题,因为一期车间用H3C的AP,一切正常;客户说不管,快给我解决;怎么办?开始抓包:我们提前准备好抓包工具,搭建好环境,将CK75放在AP边上,然后开始连接CK75到客户的无线网络中:过程中发生了之前的故障,CK75总是在不断连接无线网,或者连接之后无法通讯。抓到数据后,我们开始着手寻找通讯过程中的问题。首先,过滤出CK75与AP之间的所有通讯数据:过滤公式:源地址是CK75的MAC或目的地址是CK75,这个过滤将最大化的包含所有CK75发生关系的数据,不会遗漏:Wlan.s
20、a= 00:10:40:bf:6e:98|wlan.sa= 00:10:40:bf:6e:98或wlan.addr= 00:10:40:bf:6e:98过滤出的数据如下:在查看这些数据包的时候,首先发现的是这样的问题数据包:Deauthentication数据包是Wi-Fi通讯过程中的下线通知,这个数据包的出现意味着断网或离开网络,正常情况下,不应该连续出现(这一点我们可以通过数据包的编号看到)再继续查看这些deauthentication的具体信息:首先可以确认的是,这些数据包都是Extreme发送给CK75的:然后我们找到了发送这个数据包的reason code:Reason code3,
21、描述说明是因为没有关联到这个AP的客户端发送了数据帧(所有数据帧都应该是客户端关联到AP之后才开始发送,关联之前应该只有控制帧,没有数据帧。进一步查看数据利用以下公式进行进一步过滤:(wlan.sa=00:10:40:bf:6e:98)|(wlan.da=00:10:40:bf:6e:98 & wlan.sa=b8:50:01:97:1f:30)所有CK75发出的数据和Extreme AP响应CK75的数据:可以看到,在过滤出的数据中,CK75发出的数据在extreme回复关联成功前,没有数据帧,都是控制帧:编号9503的数据包是Extreme AP发送给CK75的关联成功回应(Association response):在这之前,CK75没有发出不应该发送的数据帧,发出的都是连接AP的控制帧。至此,我们已经可以向用户说明实际问题的发生状况,并要求Extreme技术人员给出进一步的分析和解释。 .
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2