此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
本文档介绍收集良好的无线嗅探器轨迹以进行 802.11 行为分析和故障排除的过程。
此过程可能是一个困难且耗时的操作。要简化和加速此过程,需要谨记以下几点。通过无线嗅探,可以了解您需要做什么。您希望从空中捕获原始无线帧,如无线嗅探设备本身所见。
第1步:由于嗅探设备、客户端设备和AP使用产生射频的无线电进行传输或接收,因此让无线嗅探器靠近目标设备(客户端计算机)很有帮助。这样,您的嗅探设备就可以捕获客户端设备在空中所听到的信息。
第2步:使用单独的设备充当无线嗅探器。如果在测试设备(要获取无线跟踪的客户端计算机)上运行良好的无线嗅探器跟踪,则无法进行良好的无线嗅探器跟踪。
第3步:在设置捕获之前,确切了解客户端设备使用的802.11信道和带宽。将您的嗅探器锁定到感兴趣的频道-请勿使用嗅探器的扫描频道模式! (使用扫描通道时,嗅探器每隔一秒左右在通道之间循环。这对于现场勘测或查找恶意程序很有用,但当您尝试捕获802.11问题时则没有用。)
此外,请记住,您的客户端设备可以漫游到位于不同RF信道或频段上的另一个AP,因此您需要进行相应的规划。通常在802.11b/g (2.4GHz)环境中,可能需要三通道嗅探器。这涉及到在嗅探设备上使用3个无线适配器,每个适配器都设置为信道1、6和11。USB无线适配器最适合此类型的设置。
第4步:如果排除5GHz故障,信道数量将急剧增加。由于您没有足够的卡来捕获所有信道,因此最好在周围的接入点上运行不超过4个信道。
第5步:如果当客户端从一个信道漫游到另一个信道时,您可以重现该问题,那么2信道嗅探就足够了。 如果只有一个通道嗅探器可用,则让其嗅探漫游目标通道。
第6步:始终NTP同步您的嗅探器。 数据包捕获需要与debug捕获以及其它有线和/或无线捕获核对。 时间戳哪怕只有一秒钟,都会使归类更加困难。
第7步:如果捕获时间很长(小时),请将嗅探器配置为每30MB左右剪切一个新的捕获文件。 为了不使硬盘驱动器充满,您需要对写入的文件数量设置上限。
注意:Linksys USB600N无法可靠地收集防护间隔较短的11n数据包。它错过了20%到30%的短保护间隔数据包。如有必要,可以将WLC配置更改为仅使用较慢的长防护间隔。这只能是临时配置更改。命令为config 802.11 {a | b}11nsupport guard-interval {any | long}。
使用Mac和OS X 10.6及更高版本的无线嗅探。
Mac上的无线嗅探功能很有效,而Mac OS X内置了捕获无线跟踪的工具。 但是,这取决于您运行的OS X的版本,因为命令可能有所不同。本文档介绍最新版本的OS X 10.6。Wi-Fi诊断是最新的MacBook中的首选方法。最好记住,您的macbook嗅探器至少需要像您正在嗅探的客户一样强大(嗅探带有802.11n macbook的802.11ac智能手机不是最佳选择)。
如果运行OS X 10.6 (Snow Leopard)或更高版本,您可轻松地使用命令行实用程序airportd。
请使用以下步骤:
sudo /usr/libexec/airportd en1 sniff 11
需要记住以下事项:
完成跟踪后,单击Cntl-C停止跟踪,实用程序将显示捕获文件的名称和位置。文件格式是可以在MAC或Windows上通过Wireshark读取的标准Wireshark PCAP文件。
Airport实用程序不是嗅探器程序;但是,它可以提供有关无线LAN的信息。此外,它还能够设置默认无线通道,这对于本身无法设置通道的嗅探器程序(tcpdump、Wireshark)至关重要。
注意:由于到机场实用程序的路径非常丑陋,因此建议从路径中的目录设置指向该路径的符号链接。例如,# sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport /usr/sbin/airport。
设置无线通道
# sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport —channel=48
转储显示的SSID/BSSID信息
# sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -s
SSID BSSID RSSI CHANNEL HT CC SECURITY (auth/unicast/group)
测试00:24:97:89:cb:41 -53 11 Y — WPA(PSK/TKIP/TKIP) WPA2(PSK/AES/TKIP)
测试2 00:24:97:89:cb:40 -53 11 N — WPA(PSK/TKIP/TKIP)
访客00:22:75:e6:73:df -64 6,-1 Y — WPA(PSK/AES,TKIP/TKIP) WPA2(PSK/AES,TKIP/TKIP)
有关当前关联的详细信息
# sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I
agrCtlRSSI:-54
agrExtRSSI:0
agrCtlNoise: -89
agrExtNoise:0
状态:正在运行
操作模式:站点
lastTxRate:300
最大速率:300
lastAssocStatus: 0
802.11身份验证:打开
链路身份验证:wpa2-psk
BSSID:0:24:97:95:47:60
SSID:GuestNet
MCS:15
信道:36,1
Tcpdump是OS X附带的命令行实用程序,可执行数据包捕获(与Wireshark捆绑的tshark实用程序非常相似)。 要使用tcpdump执行无线数据包捕获,请执行以下操作:
示例:
bash-3.2# tcpdump -I -P -i en1 -w /tmp/channel-11.pcap
tcpdump:警告: en1:未分配IPv4地址
tcpdump:listening on en1、link-type IEEE802_11_RADIO(802.11 plus radiotap报头)、capture size 65535 bytes
^C
捕获897个数据包
过滤器接收了968个数据包
内核丢弃0个数据包
bash-3.2#
最简单的捕获方法是使用称为Wi-Fi诊断的图形程序。
按住ALT 键并单击右上角的wifi图标(通常选择要连接的SSID的图标)可以访问它。
单击列表中的Open Wireless Diagnostics选项。
它会打开一个窗口,运行关于故障排除的默认报告。这通常不是您感兴趣的内容。
保持该窗口打开并导航到屏幕顶部的菜单栏。单击Window。您将看到各种工具的列表(对现场勘测或信号分析很有用)。在无线嗅探器捕获范围内,如果对嗅探器选项感兴趣,请单击该选项。
然后,您只需选择主信道和信道宽度。
从Mac Os Sierra开始,嗅探器捕获保存在桌面或/var/tmp/中。
一些第三方工具还支持许多mac os x版本,并通过更简单的通道选择选项增强了嵌入式嗅探功能。其中一个例子是Airtool。
有了Microsoft Network Monitor ( 3.4),您现在可以使用标准无线适配器在Windows 7中执行一些像样的802.11a/b/g(或许11n)无线嗅探。 保存自的文件可通过最新的(1.5及更高版本)Wireshark读取,但无法通过OmniPeek读取。需要注意的是,Microsoft不再支持这些帧,而且它们通常不能在11n和11ac适配器上正常工作(大多数帧丢失)。
XP SP3支持Netmon 3.4;但是,运行XP时,它不支持无线探查。对于Vista,体验是混杂在一起的。
本文档的Netmon detailed部分已被删除,因为它已弃用,无法可靠地捕获802.11ac帧。
有关详细信息,请参阅使用Netmon的Windows无线嗅探
您可以在嗅探器模式下将Cisco WLC和LAP与有线嗅探器结合使用(使用Wireshark可获得最佳效果。Omnipeek以与版本10不同的方式解密协议)。
单个有线嗅探器可以从多个AP收集数据包,因此此方法对于运行多通道跟踪非常有用。对于静态情况,如果可以移动嗅探器AP,则可以将其用作其他嗅探器选项的有效替代方案。
对于漫游场景,嗅探器AP通常安装在客户端漫游的AP附近,这样可以报告静态AP的“视点”,而不是客户端。
为了在漫游时从客户端的视角查看RF,可以使用带有多个无线网卡且可以使用测试客户端的笔记本电脑捕获多信道无线跟踪。
以下是收集使用嗅探器模式LAP的跟踪的步骤。
在嗅探器模式下配置AP:
AP可以重新启动,但无法为客户端提供服务。 AP重新加入WLC后,请配置AP的无线电(802.11b/g/n或802.11a/n):
嗅探器从WLC管理IP地址接收封装的802.11流量并使用airopeek协议,源端口为UDP/5555,目的端口为UDP/5000。
如果使用Wireshark接收流量,请执行以下步骤:
此过滤器是可选的,但强烈建议使用此过滤器,因为它会排除捕获中的所有非无线相关流量。假设WLC将流量发送到UDP端口,并且嗅探器端没有侦听任何应用;这会导致从WLC收到的每个数据包都出现ICMP端口不可达响应。
虽然这是预期结果,但过滤器还有助于排除这种无用的流量,它只会导致跟踪变得更大、更难读取。
然后,开始捕获:
捕获的流量必须解码为。. PEEKREMOTE,以便能够看到802.11流量:
图中所示的RF信息(即信道、信号强度、噪声等)由AP添加。
在嗅探器模式下使用OmniPeek作为来自WLC/AP的流量流接收方时,首先必须在Capture Options窗口的Adapter菜单下创建Cisco Remote Adapter:
至少需要一个适配器;名称是必填字段,而如果不希望OmniPeek过滤来自特定WLC的传入流量,则IP Address字段可以留空。
在这种情况下,不需要过滤掉任何流量(例如ICMP端口不可达),因为OmniPeek在UDP端口上侦听,以专门捕获来自无线局域网控制器的数据流。
在开始捕获之前,请确认OmniPeek主窗口中的设置:
此时,可以开始捕获,结果是一个跟踪,其中包括AP报告的RF信息:
注意:默认情况下,OmniPeek远程适配器会获取AP自身发送的时间戳。此信息与AP时钟无关,因此产生的时间戳可能不正确。如果使用单个嗅探器AP,则时间戳可能错误,但至少是一致的。如果您使用多个AP作为嗅探器(因为每个AP都发送自己的时间戳信息,导致合并捕获出现奇怪的时间跳跃),则不再如此。
解决方案
您可以明确告知OmniPeek使用本地嗅探器PC时钟设置数据包时间戳。
这样可以解决单个和多AP场景,并且只要运行OmniPeek的PC具有NTP同步时钟,就会具有正确且一致的时间戳。
操作步骤:
在OmniPeek中,执行以下步骤:
1. 导航到工具>选项>分析模块。
2. 搜索cisco remote adapter,然后双击以显示选项。
3. 单击Timestamp选项,然后单击OK并再次测试捕获。
自治AP可用于收集无线数据包捕获。以下说明列出了如何执行空气捕获。
1. 输入要在其上执行捕获的dot11radio接口。将工作站角色设置为嗅探器,添加可运行Wireshark并收集捕获信息的服务器/PC IP,并选择通道。使用monitor frames 命令指定的端口可以是AP发送捕获的目标UDP端口。
|
|
|
---|---|---|
第 1 步 |
int {d0 | d1} |
进入用于配置无线电接口的接口配置命令模式。 |
步骤 2 |
station-role sniffer |
将工作站角色更改为sniffer。 |
步骤 3 |
信道编号 |
选择在嗅探器模式下运行的通道。 |
步骤 4 |
no shut |
取消关闭接口。 |
步骤 5 |
退出 |
退出接口配置命令模式。 |
步骤 6 |
sniffer ip-address destination-ip port port-number |
设置AP将所有数据包重定向到的IP地址和端口号。您可以在介于1024和65535之间的任何端口号上指定IP地址。 |
步骤 7 |
wireshark启用 |
如果在终端使用Wireshark,这会将Wireshark报头添加到数据包。 |
配置示例:
ap(config)# int d0
ap(config)-if# station-role sniffer
ap(config)# channel 11
ap(config)# no shut
ap(config)# exit
ap(config)# sniffer ip-address 10.10.10.1 30 port 5555
ap(config)# wireshark enable
2. 在服务器/PC上启动Wireshark。导航到Capture > Options。选择以太网网卡(LAN)并添加过滤器,以仅捕获具有步骤1中指定的UDP端口的流量。
3. 开始Wireshark捕获。
如果捕获文件太大,无法发送电子邮件,您可以将其上传到TAC服务请求:
https://tools.cisco.com/ServiceRequestTool/query/
输入您的SR编号,然后单击File Upload。
要分析无线捕获,请参阅列出的链接。它们按顺序阅读,因为每个文档都建立在前面的文档之上。 请记住,读取任何无线跟踪时,最好了解802.11无线规范。 这些文档非常有助于您了解数据包流以及在无线跟踪中要查找的内容。它们并非用于讲授802.11无线规范。
捕获的数据包包含帧数据的副本,但每个帧的前缀是一个元数据报头,它为您提供有关如何捕获该帧的信息。 对于有线数据包,元数据并不多。它是帧编号、捕获数据包的日期和数据包的长度。 当您执行有线数据包分析时,您很少会过于关注物理层,因为比特误码率为1010,您通常假定捕获的比特就是他们声称的比特。
无线则是另一个完全不同的故事。物理层比有线层更复杂、更危险。 在您尝试根据上层来分析捕获之前,最好先了解捕获所处物理层。 如果物理层工作不正常,则上层将永远不会有机会。
物理层的品质尤其重要,需要注意:
信号强度(RSSI、信号强度、信噪比) 通常,最好关注RSSI(如果可用)。嗅探适配器接收数据包的功率级别(以dBm为单位):
信道(频率)。由于无线LAN可以支持3到25个左右的不同信道,因此必须确切了解捕获来自哪个信道。 如果意图获取来自特定AP的嗅探,请将嗅探锁定到该AP的信道,并验证捕获是否在该信道上,否则捕获可能毫无价值。
.
数据速率可以是从1Mbps到300Mbps或更高的任意值。 要了解为什么数据传输并不总是在发送方和接收方之间传输,您必须知道使用的数据速率。 对于调制速度为54Mbps的数据包,-80dBm的“临界”RSSI工作情况非常糟糕,但对于6Mbps的数据包,RSSI则相当令人满意。
不同的无线嗅探器可以使用不同的元数据报头格式来编码无线物理层。 请注意,信息的准确性取决于使用的具体适配器硬件和驱动程序。 某些值(例如噪声)通常会被考虑在内。
这些示例突出显示了data rate、frequency和RSSI字段。
Mac OS X 10.7无线诊断(Broadcom适配器)
OS X 10.7使用Radiotap v0报头,在Wireshark中如下所示:
OmniPeek 6.8(Ralink USB适配器)
在Wireshark中,OmniPeek捕获使用Airopeek信头,如下所示:
Wireshark(从1.6.x开始)不知道如何解码OmniPeek捕获中的所有无线元数据-在OmniPeek中查看的同一帧本身显示信号dBm、噪声水平和噪声dBm:
Netmon 3.4
将无线文件应用为Wireshark列。
如果您将无线字段应用为列,则通常更易于了解无线嗅探器的情况。具体操作如下:
1.在数据包详细信息部分(如有必要,首先展开适用的报头部分)找到感兴趣的字段,然后右键单击该字段。 选择Apply as Column:
2.此时将显示新列。 现在,您可以调整大小、重命名(右键单击列标题并选择编辑列详细信息)并根据需要移动列。
3.对其他感兴趣的栏重复上述操作。 现在,您可以更好地处理捕获的物理层方面。
4.应用新列后,下次运行Wireshark时,该列将可用(如果未看到,请右键单击列标题并选择显示的列。)
'802.11嗅探器捕获分析- Wireshark过滤
本文档可以指导您如何设置wireshark并分析使用wireshark程序中的多功能工具(称为wireshark过滤器)的相关数据包。
Wireshark工具本身无法帮助您完成故障排除过程,除非您对协议、网络拓扑以及采用嗅探器跟踪应考虑的数据点有良好的了解和理解。无论对于有线网络还是无线网络,都是如此。在无线网络中,数据包进入网络之前,我们可以通过无线方式捕获数据包。无线MAC地址的删除由AP完成。
当您检查使用有线嗅探器跟踪的有线网络中的流量或数据时,如果无法找到我们感兴趣的数据包,则需要知道它遗漏了什么位置。您的怀疑可以让您验证它是否通过来源的第一点,即无线、工作正常与否(在空中被错过)。如果它在空中无法正确传输,则显然它不存在,或无法被转换,或通过AP发送到有线端到DS或分布系统。因此,使用无线嗅探器跟踪来识别和定位无线网络问题就变得至关重要。
在排除网络相关故障时,会存在许多依赖关系,而且都是以分层模式进行的,并且每层数据都取决于其下层。有许多组件(或网络元素)以及设备的配置和正确操作可以帮助我们实现网络平稳运行。当正常工作的网络停止运行时,需要使用逻辑方法来定位问题。一旦确定,就很难找到确切的故障点。在这些情况下,嗅探者会来协助我们。尽管您采用了最佳方法,即使您对故障排除技能非常熟悉,此故障排除过程也可能变得复杂。问题是,如果您捕获通过网络设备传输的数据包,可能会有巨大的文件,如果捕获的时间足够长,并且其中包含大量数据包详细信息,甚至可能以1G结束。在如此庞大的数据量下,确定问题的具体位置非常耗时,并且会变成一项非常困难的任务。 过滤可以帮您解决问题,帮助您快速发现问题,消除不需要的流量,减少需要同时关注的变量。这有助于快速查找所收集的流量中是否存在相关流量。
当您知道要查找什么内容并尝试在流向该事件的流量中验证时,建议使用捕获过滤器。当您在交通繁忙的环境中运行超过几个小时时,就会捕获到它。这有助于使收集的数据在文件大小方面保持合理。
如果您目前不确定导致问题的原因,并且它更多的是一种行为随机性,则可以在问题发生模式的可能窗口内运行更少时间的数据包捕获(例如一两个小时),并捕获所有流量。然后,使用“显示”过滤器只显示您要搜索的信息。 除此之外,人们还可以看到所有的捕获和使用着色规则,以吸引特定类型数据包的注意,这些数据包被赋予不同的颜色,从而便于对数据包流进行排序或区分。
您必须了解典型wireshark嗅探器跟踪中的各个字段。将其细分并定义每个字段。
您将重点关注3个使用过滤功能需要了解的项目。
在深入了解详细信息之前,这里是wireshark的嗅探器捕获窗口示例。
这是金属丝鲨鱼窗口的菜单栏。
它包含以下项目:
全部或部分文件,并退出Wireshark。
数据包、处理配置文件和设置首选项;(剪切、复制和粘贴
目前尚未实施)。
packets(字体的缩放功能)在单独的窗口中显示数据包,展开并
折叠数据包详细信息中的树。
协议解析,配置用户指定的解码并使用TCP数据流。
显示已捕获的数据包数、协议层次结构统计信息等
更多 .
包括媒体分析、流程图、显示协议层级统计信息和
更多实惠.
ACL规则
各种命令行工具的页面,在线访问某些网页,
和通常的对话。
主工具栏提供从菜单快速访问常用项目的功能。此工具栏不能由您自定义,但如果需要屏幕上的空间显示更多数据包数据,则可以通过“查看”菜单隐藏它。如同在菜单中所示,只有当前程序状态中有用的项目才可用。其他选项可能会呈灰色显示。(例如,如果尚未加载捕获文件,则无法保存捕获文件)。
过滤器工具栏允许您快速编辑和应用显示过滤器。
Filter:打开过滤器构建对话框、Capture Filters和Display Filters对话框。
数据包列表窗格显示当前捕获文件中的所有数据包。
数据包列表中的每一行对应于捕获文件中的一个数据包。如果您在此窗格中选择一行,更多详细信息将显示在Packet Details和Packet Bytes窗格中。
Packet Details(数据包详细信息)窗格以更为详细的形式显示当前数据包(即数据包列表窗格中选定的数据包)。
数据包字节窗格显示数据包列表窗格中当前数据包(在数据包列表窗格中选择)的数据
hexdump样式。
状态栏显示信息性消息。通常,左侧显示情景相关信息,中间部分显示当前数据包数,右侧显示所选配置配置文件。在文本区域之间拖动控制滑块以更改大小。
未加载捕获文件时,显示此状态栏。例如,当Wireshark启动时。
选项卡标签的上下文菜单(单击鼠标右键)显示所有可用页面的列表。如果窗格中的大小对于所有选项卡标签来说都太小,这会很有帮助。
状态栏
状态栏显示信息性消息。通常,左侧显示情景相关信息,中间部分显示当前数据包数,右侧显示所选配置配置文件。在文本区域之间拖动控制滑块以更改大小。
带有已加载捕获文件的状态栏。
将显示以下值:
单击Capture Interfaces options(捕获接口选项),然后从下拉菜单中选择Network adapter(网络适配器),该下拉菜单用于捕获PC上网络中正在运行的数据包。点击Capture Filters(捕获过滤器)并输入过滤器名称和过滤器字符串,或直接输入框中已知的过滤器字符串。然后按按钮。现在,有线鲨鱼嗅探器程序捕获的数据包仅是各种协议的大量实时数据包流中您感兴趣的数据包。
加载捕获的文件后,现在设置过滤器以显示您感兴趣的数据包或避免您不感兴趣的数据包。这可以通过简单的过滤器表达式或使用逻辑运算符形成复杂文件服务器字符串的表达式组合来实现。
单击分析。选择Display Filter。
在本示例中,您将创建一个文件管理器,仅过滤来自802.11无线数据包捕获跟踪的信标数据包,如黄色突出显示区域所示。
与显示过滤器类似,您可以通过在单击Find packet后应用过滤器来查找特定数据包。
查找Filter按钮并在过滤器框中输入过滤器值。如果不知道该字符串,则可以进一步挖掘并单击Filter,然后点击New按钮并命名过滤器字符串,然后在框中应用或键入过滤器字符串。如果不知道特定的过滤器弹簧,则可以将其形成并选择提供各种协议选项的Expression按钮。
选择所需的选项,展开,您就可以从中选择更多选项。
您还有一个“逻辑”操作符框,可从中选择用于匹配以输入要在完成过滤器中放置和应用的值。
您可以构建显示过滤器,比较使用多种不同比较运算符的值。
数据包着色是Wireshark中一个非常有用的机制。您可以设置Wireshark,使其根据过滤器对数据包进行着色。这允许您强调您感兴趣的数据包。 您可以设置Wireshark,使其根据您选择创建的过滤器对数据包进行着色。这允许您强调您(通常)感兴趣的数据包。
在本例中,根据前面提到的过滤器,为信标、确认、探测响应和解除认证对数据包进行着色。
单击 View。从主工具栏中选择“着色”规则或“编辑着色规则”。
这将打开着色规则,您可以使用新建或编辑添加新的着色过滤器。选择数据包,或编辑过滤器字符串,然后指定或调整所需的颜色。
在“编辑颜色”对话框中,只需输入颜色过滤器的名称,然后在“过滤器”文本字段中输入过滤器字符串。Edit Color Filter对话框显示值beacon和wlan.fc.type_subtype == 8,这意味着颜色过滤器的名称为Beacon,并且过滤器可以选择wlan.fc.type_subtype == 8类型的协议(信标过滤器字符串)。输入这些值后,可以为匹配过滤器表达式的数据包选择前景色和背景色。单击前景色...或背景色...可实现此目的。
一个非常有用的功能是导出或形成着色滤镜,并通过将滤镜导出到文件“tac80211color”来保存它,如示例所示。可以导入此文件。可以在故障排除文件夹中创建多个着色规则文件,并在每次进行故障排除时将其用作模板,以方便操作。
您可以创新性地思考和定制着色过滤器模板文件,例如路由、wlan、交换等。根据您要排除的问题导入彩色滤镜文件。
有多种颜色规则可供下载,并使用支持论坛-颜色规则
这就是在滤色器文件之后,Wireshark数据包窗口的最终外观
tac80211color已导入并应用。
802.11嗅探器捕获分析-管理帧和开放式身份验证
当您尝试对使用802.11数据包分析器的无线LAN网络进行分析或排除故障时,您需要透彻了解不同的802.11帧类型,以此为基础找出在WLAN网络中定位问题区域原因的指针。采用使用omnipeek和/或wireshark等工具的wlan嗅探器跟踪,您可以在其中监控无线网络接口卡(NIC)和接入点之间的通信。您需要理解无线LAN运作过程中出现的每种帧类型,并解决网络问题。在WLAN RF环境中,无线电传输条件可以动态更改,因此协调在WLAN中成为一个大问题。管理和控制数据包专用于这些协调功能。
要查找在与RF环境相关的WLAN网络中发生的WLAN问题的原因,最好使用开放式身份验证测试WLAN网络,而不用考虑任何安全性。当您采用这种方法时,RF连接问题会逐渐显现,而且可以在转移到更严格的加密和OSI层的更高层之前得到纠正。 802.11规范中的身份验证基于对无线站点或设备进行身份验证,而不是对用户进行身份验证。
根据802.11规范客户端身份验证流程,这些是上述事务。
802.11 MAC第2层通信使用三种类型的帧,它们通过无线进行管理和控制。
它们是管理帧、控制帧和数据帧。您可以详细了解这些帧的组成,以帮助您在使用wlan嗅探器跟踪时更好地分析wlan问题。
802.11管理帧使站点能够建立和维护通信。管理数据包用于支持身份验证、关联和同步。
以下是常见的802.11管理帧子类型:
wlan.fc.type_subtype == 0x0b
网卡首先向接入点发送包含其身份的身份验证帧。使用开放式系统身份验证(默认)时,无线网卡仅发送一个身份验证帧,接入点以身份验证帧作为响应进行响应,表示接受(或拒绝)。有一个关联的身份验证ID关联,这是当前工作站在加入网络时进行身份验证时所依据的名称。
wlan.fc.type_subtype == 0x0c
wlan.fc.type_subtype == 0x0
wlan.fc.type_subtype == 0x01
wlan.fc.type_subtype == 0x02
用于仅应用和查找取消关联数据包的过滤器是wlan.fc.type_subtype == 0x0a。
用于仅应用和查找信标数据包的过滤器是wlan.fc.type_subtype == 0x08。
用于仅应用和查找探测请求数据包的过滤器是wlan.fc.type_subtype ==0x04。
用于仅应用和查找探测请求数据包的过滤器是wlan.fc.type_subtype ==0x05。
802.11控制帧有助于在站点之间传输数据帧。以下是常见的802.11控制帧子类型:
wlan.fc.type_subtype == 0x1B
wlan.fc.type_subtype == 0x1D
这些帧是在移动站和接入点之间已建立基本wlan通信之后游戏中稍后出现的帧。您始终可以访问802.11数据帧进行分析,通常是在帧体内较高层的协议和数据通过线路时,通过无线进行验证和分析。这些帧在帧体内传输来自更高层的数据包,例如网页、打印机控制数据等。
wlan.fc.type_subtype == 0x20
在数据包分析器上,可以观察有关802.11数据帧中相关流量的帧体的内容。
1.定期发送信标帧,以通告无线网络的存在并包含有关该网络的所有信息(数据速率、信道、安全密码、密钥管理等):
2.探测请求由STA发送,以从AP获取信息:
3.探测响应。AP在从STA收到探测请求帧后,以包含功能信息、支持的数据速率等的探测响应帧进行响应:
4.802.11身份验证是接入点接受或拒绝无线网卡身份的过程。网卡首先向接入点发送包含其身份的身份验证帧。使用开放式系统身份验证(默认)时,无线网卡仅发送一个身份验证帧,接入点以身份验证帧作为响应进行响应,表示接受(或拒绝)。:
a.Dot11身份验证请求:
b.Dot11身份验证响应:
5. 802.11关联使接入点能够为无线网卡分配资源并与之同步。NIC通过向接入点发送关联请求来开始关联过程。此帧包含网卡(例如,支持的数据速率)以及它想要连接的网络的SSID的相关信息。
a.Dot11关联请求:
收到关联请求后,接入点考虑与网卡关联,并且(如果接受)保留内存空间并建立网卡的关联ID。
b.Dott11关联响应:
6.4次握手。在此阶段创建PTK,并将PSK用作PMK来构建这些值:
a.AP发送带有ANonce的802.1x身份验证帧。STA现在拥有构建PTK所需的所有信息:
b.STA以802.1x身份验证帧做出响应,其中包含SNonce和MIC:
c.AP使用新的MIC和序列号的GTK构建802.1x帧。 此序列号在下一个组播或广播帧中使用,以便接收STA可以执行基本重播检测:
d.STA发送ACK:
从那时起,所有数据都以加密方式发送。
此过程与上一节中的过程完全相同。仅突出显示不同信息。
1.WPA2 AP管理帧包括包含单播密码套件、AKM信息和GTK密码套件的RSN元素(如果同时选择AES和TKIP,则可以对GTK使用强度较低的加密方法)。
2.在四次握手期间,帧在“类型”字段中包含WPA2的版本信息。
注意:如果跟踪中包含四次握手密钥交换帧且PSK已知,则可以解密WEP/WPA-PSK/WPA2-PSK加密的无线流量。
为了加密wireshark中的无线流量,请导航到首选项->协议->IEEE 802.11 并提供PSK信息,然后选择启用解密选项。
要解密WPA/WPA2加密流量,请以以下格式指定密钥:
wpa-psk:PSK:SSI
注意:为了过滤来自Wireshark中特定STA的WLAN流量,您可以使用WLAN统计选项。
要过滤来自特定STA的流量,请导航到统计信息> WLAN流量。 从SSID列表中,选择与STA关联的相应SSID,并根据STA应用过滤器。
最准确的过程是开始捕获,然后取消对客户端的身份验证,以便从零捕获该过程,这意味着可以包括4次EAPOL握手。
如果帧采用其他格式(如PEEKREMOTE),可能需要将其解码,请参阅如何解码PEEKREMOTE帧部分。
在Wireshark中打开捕获后,导航到编辑>首选项菜单。
转到Protocols 菜单并查找IEEE 802.11。
在IEEE 802.11部分中,选中Enable Decryption复选框,然后单击Decryption Keys标签旁边的Edit...按钮。
进入Edit菜单后,单击窗口左侧的New按钮。
从key type中选择wpa-psk。
要获取密钥,必须知道执行解密过程的SSID和PSK的确切名称。
具有这两个值,然后导航到下一个网站,以基于这两个元素生成密钥。
在指定字段中键入SSID名称和PSK。输入字段的字符串必须与SSID和PSK的定义完全相同。
定义值后,单击Generate PSK。这将生成密钥,复制密钥并返回Wireshark。
将生成的密钥粘贴到Key字段中。Click OK.
然后在首选项屏幕上单击应用。捕获开始解码。
一旦解码,就有可能看到先前加密的802.11数据包的内容。
1. 带dot1x的WPA(TKIP)/WPA2(AES) (PEAP)
除了AKM方法和PTK/GTK以及AP在802.11管理帧中通告属性外,此过程使用与之前相同的步骤。
b. STA会选择由AP通告的身份验证方法和密码套件之一。在本例中,选择了具有AES的WPA2。RSN IE参数中可以看出这一点。
c.成功进行dot11关联后,将执行dot1x身份验证。在此过程中,我们可以看到STA使用哪种EAP方法进行身份验证,以及请求方和AAA服务器之间的证书交换信息。
d.在成功执行dot1x身份验证后,PMK在来自AAA服务器的访问接受消息中传输到AP,并在客户端上派生相同的PMK。随后将进行四次握手,并建立PTK和GTK。
WLC和AAA服务器之间的RADIUS交换:
一般流程图:
这种类型的身份验证与之前的身份验证的区别在于,客户端在“Client Hello”消息中提供其证书,并且根据证书在客户端和AAA服务器之间执行相互身份验证。
STA和WLC之间的EAP交换:
WLC和AAA服务器之间的RADIUS交换:
一般流程图:
2.WPA(TKIP)/WPA2(AES),带dot1x (FAST)
只有dot1x身份验证阶段与上一个示例相比略有不同。成功进行dot11关联dot1x身份验证后,AP会向STA发送dot1x身份请求,STA提供身份响应。响应取决于所使用的PAC配置(带内PAC配置(第0阶段)或带外PAC配置)。在带内调配的情况下,PAC从AAA服务器发送到客户端。客户端建立PAC后,它将从此点进入EAP-FAST阶段1,TLS隧道建立开始(阶段1)。
建立TLS隧道后,内部身份验证方法(第2阶段)在加密隧道内启动。在身份验证成功时,PMK会从AAA服务器以Access-Accept消息形式发送到AP。根据STA上的dot1x交换得到相同的密钥。此密钥(PMK)用于计算4次握手期间的PTK,可用于保护STA和AP之间的通信。
一般流程图:
组播嗅探
控制器以两种模式执行组播:
在控制器软件版本 4.2 中,引入了 IGMP 监听以更好地引导组播数据包。启用此功能后,控制器从客户端收集IGMP报告,处理报告,在检查第3层组播地址和VLAN编号后从IGMP报告创建唯一组播组ID (MGID),并将IGMP报告发送到基础设施交换机。控制器发送这些源地址作为接口地址的报告,控制器在该接口地址上从客户端接收报告。
然后控制器会利用客户端 MAC 地址更新 AP 上的接入点 MGID 表。当控制器接收特定组播组的组播数据流时,会将其转发至所有 AP。但是,只有那些具有侦听或订阅该组播组的活动客户端的AP才能在该特定WLAN上发送组播流量。IP 数据包会通过 MGID 转发,该 MGID 对于输入 VLAN 和目标组播组来说是唯一的。第 2 层组播数据包会通过 MGID 转发,该 MGID 对于输入接口来说是唯一的。
注意:2000系列控制器、2100系列控制器或思科集成多业务路由器的思科无线局域网控制器网络模块不支持IGMP监听。
当您在网络中启用组播模式时,请使用这些指南:
Cisco 统一无线网络解决方案针对具体目的使用某些 IP 地址范围。配置组播组时,请记住这些范围。尽管不推荐,但任何组播地址都可以分配给LWAPP组播组;这包括OSPF、EIGRP、PIM、HSRP和其他组播协议使用的保留链路本地组播地址。
Cisco 建议从管理范围块 239/8 分配组播地址。IANA 已保留范围 239.0.0.0-239.255.255.255 作为管理范围地址,以用于私有组播域。请参阅附注以了解其他限制。这些地址本质上类似于保留的私有 IP 单播范围,例如 RFC 1918 中定义的 10.0.0.0/8。网络管理员可在其域内自由使用此范围内的组播地址,而无需担心与 Internet 中的其他地址产生冲突。管理性或专用地址空间必须在企业范围内使用,并且从自治域 (AS) 阻止其离开或进入。
注意:请勿使用239.0.0.X地址范围或239.128.0.X地址范围。这些范围内的地址与本地链路 MAC 地址重叠并且泛洪所有交换机端口,即使 IGMP 监听已开启。
Cisco建议企业网络管理员进一步将此地址范围细分为企业网络中的较小地理管理范围,以限制特定组播应用的范围。这可防止离开园区(带宽充足)的高速率组播流量和WAN链路拥塞。它也允许高效地过滤到达控制器和无线网络的高带宽组播。
当您启用控制器上的组播模式时,必须在控制器上配置一个 LWAPP 组播组地址。AP 使用 Internet 组管理协议 (IGMP) 预订 LWAPP 组播组。
在更高的版本中,即 4.2 或更高版本,组播模式不会跨子网移动事件(例如访客隧道)运行。但是,它可以与使用 RADIUS 的接口覆盖(仅当 IGMP 监听启用时)和特定站点 VLAN(接入点组 VLAN)协同运行。
选择Mutlicast - Multicast并配置您的组,移动组中的每个WLC可以使用唯一的地址。
在第3层设备上启用组播路由,并在这些VLAN上启用PIM。 管理、AP管理器、AP所在的VLAN以及接收组播流的客户端所在的VLAN。
示例:
VLAN 40是WLC管理,VLAN 40是用于AP的,而VLAN 50是客户端所在的位置。因此,在所有这些SVI下,您需要发出组播命令。
发出所有组播show命令来验证(例如show ip mroute、show ip igmp groups),以验证AP的组是否已正确建立。
您还可以在WLC上启用IGMP监听。WLC保留其自身接收的IGMP消息的监听表,以便知道谁请求该流。
在WLC上启用全局组播并在WLC上启用组播-组播模式。
一旦客户端发送组播加入,您将在WLC MGID上看到它。
全局配置组播路由,然后在每个接口上启用PIM。
6504-WLCBUG#sh run | i组播
ip multicast-routing
6504-WLCBUG#sh run int vla 50
正在构建配置…
当前配置:119字节
!
interface Vlan50
说明// WLAN DHCP池VLAN //
ip address 172.16.1.1 255.255.255.0
ip pim dense-mode
结束
6504-WLCBUG#sh run int vla 40
正在构建配置…
当前配置:121字节
!
interface Vlan40
说明//管理Vlan //
ip address 10.105.135.136 255.255.255.128
ip pim dense-mode
结束
6504-WLCBUG#sh ip pim interface vlan 40
地址接口版本/ Nbr查询DR
DR模式计数Intvl优先
10.105.135.136 Vlan40 v2/D 0 30 1 10.105.135.136
6504-WLCBUG#sh ip pim interface vlan 50
地址接口版本/ Nbr查询DR
Mode Count Intvl Prior
172.16.1.1 Vlan50 v2/D 0 30 1 172.16.1.1
6504-WLCBUG#sh ip mroute
IP组播路由表
标志:D -密集、S -稀疏、B -双向组、s - SSM组、C -已连接、
L -本地,P -已修剪,R - RP位集,F -寄存器标志,
T - SPT位设置,J -加入SPT,M - MSDP创建的条目,
X -代理加入计时器正在运行,A - MSDP通告的候选者,
U - URD, I -已收到源特定主机报告,
Z -组播隧道,z - MDT数据组发送器,
Y -已加入MDT数据组,y -正在发送到MDT数据组
V - RD和矢量, v -矢量
传出接口标志:H -硬件交换,A -断言获胜者
计时器:正常运行时间/过期
接口状态:接口、下一跳或VCD、状态/模式
(*, 239.255.255.255),4d17h/00:02:03,RP 0.0.0.0,标志:DC
传入接口:空,RPF nbr 0.0.0.0
传出接口列表:
Vlan40,转发/密集,4d17h/00:00:00
(*, 239.254.0.3),2w1d/00:02:07,RP 0.0.0.0,标志:DC
传入接口:空,RPF nbr 0.0.0.0
传出接口列表:
Vlan40,转发/密集,3d10h/00:00:00
(*, 224.0.1.40),2w1d/00:02:13,RP 0.0.0.0,标志:DCL
传入接口:空,RPF nbr 0.0.0.0
传出接口列表:
Vlan11,转发/密集,2w1d/00:00:00
有线PC ----------- 6500交换机--------WISM ------- AP ))) ((((无线客户端
Vlan 50 Vlan 40 Vlan 40 Vlan 40 Vlan 40 Vlan 50
在有线PC上用于生成组播流-连续UDP数据包。
MCAST Receiver Tool在无线客户端上用于从源(有线PC)接收组播流量。
版本 | 发布日期 | 备注 |
---|---|---|
3.0 |
16-Jan-2024 |
更新了SEO、样式要求、机器翻译、拼写和格式。 |
2.0 |
10-Nov-2022 |
文章要求主要更新、多次更新以符合PII、有偏见的语言、机器翻译、SEO、风格要求和其他要求。 |
1.0 |
20-Jun-2016 |
初始版本 |