计算机网络-Wireshark探索802.11
Fetch a Trace
直接捕获无线局域网的流量有两个难题,一是有些系统(windows)不支持直接收集 802.11 frames,而第二个问题就是需要两台电脑互相发送流量。基于上述两点,推荐直接使用现成的数据包。
Inspecet the Trace
首先整体看看全部的数据帧,从 info 栏中我们可以看到 802.11 frame 有不同的类型,Beacon,Data,Ack,分别对应管理帧、数据帧和控制帧三种帧的类型。 下面重点研究数据帧。
根据 802.11,我们可以知道,这是一个无线局域网里的数据帧,而且最下面也标记了帧的字节数为 1539。
该字段记录了帧长、帧数以及一些时间信息。
Radiotap 包括头部以及 body 记录了物理层的相关参数,包括信号长度、调制信息等。
然后是 IEEE 802.11 Data,它是 802.11 中的数据帧,共占据 24 字节。
最后是最大的数据,占据了 1478 字节。
然后我们详细的分析 IEEE 802.11 Data 部分
Frame Control
- Version: IEEE 802.11 标准版本。
- Type: Data frame
- Subtype: 数据帧子类型 0000,基本的数据帧类型,当然还有其他数据帧类型。
- DS: 包括两位,To DS 和 From DS,在这里将其合并为一个 DS Status,
- To DS: 表示帧是否要送到分布系统,This flag is set if the frame is sent from a computer to the wired network via the AP.
- From DS: 表示帧是否来自分布系统。This flag is set if the frame is sent from the wired network to a computer via the AP.
- More Fragments: 这里为 0,表示之后没有分片了,这是最后一个分片。
- Retry: 为 0,说明该帧不是重传帧。
- Pwr. Mgt: 为 0,传输完成后不进行省电休眠,保持待机。
- More Date: 为 0,说明之后没有帧需要发送了。
- Protected: 1 表示数据被加密过了。Set if the frame is encrypted with WEP/WPA2.
- Order: 0 表示顺序不重要。
Duration
.000 0000 0010 1100 = Duration: 44 microseconds
This field tells computers how much time is needed on the wireless medium for additional packets that are part of this exchange.
length: 1 byte
Address
这些地址都是 MAC 地址,每一个都是 6 个字节。
- 第一个地址为接收地址:数据包的目的地址
- 第二个是发送地址:实际发送数据包的设备的 MAC 地址
- 第三个是目标地址:通常与接受地址相同,也可不同
- 第四个为源地址:数据包最初来源的设备地址,与发送地址一致说明,设备既是源设备又是实际发送设备
- BSS Id:这是接入点(AP,通常是路由器)的标识符,代表无线网络的管理实体。
- STA Address:站点地址,这是站点(STA,通常指客户端设备,如笔记本电脑或手机)的 MAC 地址。
Fragment and sequence
共占 2 个字节,16 位,其中 12 位是数据帧编号,4 位是分片编号。用于重新组装和重传。
Frame check sequence
CRC 校验和–4 字节。
Frame check sequence: 0x43431309 [unverified]
802.11 Physical Layer
Channel frequency
频道频率是固定为 2462(2.4GHz)
The frequency or channel is the same for all frames in the trace, since the wireless network interface is set to listen on a fixed frequency.
RSSI and Rate
首先,将 RSSI(接收信号强度指示) 和 Rate(数据传输速率) 的列给调出来。
这里 RSSI 一个指标,用于测量接收到的无线信号的强度,通常以 dBm(分贝毫瓦)为单位。它是一个负值,数值越接近 0,表示信号越强。
以太网的 Rate 是固定的,但无线传输有很多种 Rate。
Rate 的值从小到大为:
- 1
- 6
- 12
- 18
- 24
- 36
- 48
- 54
RSSI is measured on a log scale in which 0 dBm means 1 milliWatt of power and each +10 means a factor of 10 larger and each -10 means a factor of 10 smaller.Thus -60 dBm means one million-th of 1 mW, or 10-9 Watts
The SNR is the signal level relative to the noise level, a roughly fixed value given in the Radiotap header to be -90 dBm.
RSSI 主要用于评估信号的强度,但不能直接反映信号质量,因为它不考虑噪声。SNR 表示信号强度与噪声强度的比值,反映信号质量。通常以 dB(分贝) 表示,值越大越好。
运算公式:
\[SNR = 10 \times \log_{10} \left( \frac{P_{\text{signal}}}{P_{\text{noise}}} \right)\]在所有数据中,RSSI 的范围为-69dBm ~ -44dBm ,最强的 RSSI 的 SNR 为 47dB,最弱的 RSSI 的 SNR 为 21dB
802.11 Link Layer
从 Statistic 菜单中打开 Conversations:
The BSS ID (Basic Service Set Identifier) is a unique identifier for an Access Point (AP) in a Wi-Fi network. It is typically represented as a MAC address and is used to differentiate one AP from another in the same network or nearby networks.
The most active wireless conversations used the BSS ID 10:9a:dd:ac:6c:26.
Data Frames
使用wlan.fc.type==2
筛选出其中的所有数据帧。
右下角有总数,一共有 1783 个数据帧,其中数据帧由于子类型不同分为三个:
- Type/Subtype: Data (0x0020)
- Type/Subtype: Null function (No data) (0x0024)
- Type/Subtype: Data + CF-Poll (0x0022)
其中,最多的类型为 0x0020
然后我们研究数据帧中的重传率,将筛选条件换为wlan.fc.type==2 && wlan.fc.retry==0
将没有重传的帧统计出来为 1430 个,然后将wlan.fc.retry==0
的 0 改为 1,统计出重传帧的数量为 353。
重传率 = 重传次数 / 原始传输次数(包括丢失的帧) = 353 / (353 + 1430) = 0.197980931
Control and Manegement Frames
同样的方式,我们研究控制帧和管理帧。
控制帧共有 1391 个,类型有 3 种:
- Type/Subtype: Power-Save poll (0x001a)
- Type/Subtype: Clear-to-send (0x001c)
- Type/Subtype: Acknowledgement (0x001d)
其中,最多的为 Ack 类型。
我们查看 Ack 的各字段的长度:
Frame 总大小:39 bytes | Radiotap | IEEE 802.11 Acknowledgement | Frame check address | | ———– | ———– | ———– | | 25 | 10 | 4 |
管理帧共有 557 个,类型有 6 种:
- Type/Subtype: Association Request (0x0000)
- Type/Subtype: Association Response (0x0001)
- Type/Subtype: Authentication (0x000b)
- Type/Subtype: Beacon frame (0x0008)
- Type/Subtype: Probe Request (0x0004)
- Type/Subtype: Probe Response (0x0005)
其中,最多为 Beacon frame
As you look at these different types of frames, note their lengths. Data frames may be long, up to 1500 bytes, while Management frames are typically much shorter, and Control frames are very short. You should conclude that most of the bytes in the trace are taken up in Data frames, even though there are many other frames. This is reassuring, since the whole goal of 802.11 is to transfer data.
Power Management
最后研究 power management,我们使用wlan.fc.pwrmgt==1
将相关的帧给筛选出来。然后再添加筛选条件wlan.fc.pwrmgt==1 && wlan.fc.tods==1
将从客户端发往 AP 的帧筛选出来,共有 16 个,占所有发往 AP 的帧的 16 / 822 = 0.01946472
The “Null function” frame carries no data. Instead, it is sent by a client to signal sleep.
802.11 Management
Beacon Frames
查看 Beacon Frames 发现主要的 SSID 是 djw。
Beacon Frames 大概每隔 0.1024s 发送一次。
主 AP 支持的数据速率 Tag: Supported Rates 1(B), 2(B), 5.5(B), 11(B), 18, 24, 36, 54, [Mbit/sec]
信标传输速率大约为:Data rate: 1.0 Mb/s
SSID
–
SSID(Service Set Identifier,服务集标识符)是无线网络的名称,用于标识一个特定的 Wi-Fi 网络。它是无线网络的唯一标识符,使得用户可以区分不同的无线网络。
SSID 的关键点
-
作用:
- 标识无线网络:每个无线网络都会有一个 SSID,供用户选择并连接。
- 类似于网络的“名字”,可以帮助用户在多个可用网络中识别目标网络。
-
长度限制:
- SSID 的长度可以是 0 到 32 个字符(通常使用英文字母、数字或符号)。
-
显示方式:
- 默认情况下,路由器会广播 SSID,使其在设备的 Wi-Fi 网络列表中可见。
- 可以关闭广播,使网络“隐藏”,用户需要手动输入 SSID 才能连接。
-
名称示例:
- 家用网络:Home_WiFi, MyNetwork
- 公共网络:CoffeeShop_FreeWiFi, Airport_WiFi
- 趣味网络:FBI_Surveillance_Van, YouShallNotPass
-
SSID 与 BSSID 的区别
SSID 是无线网络的名称,用于识别网络,用户设备可以看到;BSSID 是接入点的唯一标识,通常是 AP 的 MAC 地址,通常由系统自动管理,用户不可见。
- 如何查看 SSID
在设备上:手机或电脑搜索 Wi-Fi 网络时,显示的网络名称就是 SSID。在路由器设置中:登录路由器管理界面,可以查看和修改 SSID。
Wi-Fi
什么是 Wi-Fi?
Wi-Fi(Wireless Fidelity)是一种无线局域网(WLAN)技术,通过无线电波在设备之间传输数据,使设备能够连接到互联网或其他局域网设备。
Wi-Fi 的关键特点
- 工作原理:
- Wi-Fi 使用 IEEE 802.11 标准,通过无线电波在接入点(AP)和设备之间通信。
- 主要使用 2.4 GHz 和 5 GHz 频段,有些现代设备支持 6 GHz(Wi-Fi 6E)。
- 组成部分:
- 接入点(Access Point, AP):通常是路由器,用于广播 Wi-Fi 信号和管理设备连接。
- 客户端设备:如电脑、手机、平板等,通过无线网卡接收和发送 Wi-Fi 信号。
- SSID(服务集标识符):网络名称,用于标识和连接 Wi-Fi 网络。
- 优点:
- 无线通信,减少了对物理线缆的依赖。
- 适用于家庭、企业和公共场所,覆盖范围灵活。
- 缺点:
- 传输速率和范围受限于信号强度、干扰和障碍物。
- 安全性可能较有线网络低,需要加密措施(如 WPA2/WPA3)。
电脑如何通过 Wi-Fi 连接到网络?
-
启动 Wi-Fi 网络扫描
- 无线网卡:电脑配备的无线网卡扫描附近的 Wi-Fi 信号。
- SSID 列表:扫描后会显示可用的 Wi-Fi 网络(SSID)。
-
选择目标 Wi-Fi
- 用户从列表中选择目标网络(SSID)。
- 如果网络需要认证,输入 Wi-Fi 密码。
-
认证和加密
- Wi-Fi 使用安全协议(如 WPA2/WPA3)进行认证和数据加密。
- 加密方式:
- WPA2/WPA3:目前主流的安全协议,防止数据被窃听。
- Open Wi-Fi:无加密,但安全性差。
-
动态获取 IP 地址
- 一旦连接成功,电脑通过 DHCP(动态主机配置协议) 从路由器获取 IP 地址。
- 电脑也会收到默认网关和 DNS 服务器信息。
-
数据传输
- 连接建立后,电脑通过 Wi-Fi 接入互联网或本地网络:
- 数据通过无线电波发送到 AP。
- AP 将数据转发到路由器或互联网。
Association
Association 的子类型:
- Type/Subtype: Association Request (0x0000)
- Type/Subtype: Association Response (0x0001)
Probe Request/Response
Finally, we will look briefly at Probe frames. Instead of a computer waiting to learn about an AP from Beacons, a computer may probe for specific APs. A Probe Request is sent by a computer to test whether an AP with a specific SSID is nearby. If the sought after AP is nearby then it will reply with a Probe Response. Like Beacon and Association frames, each of these frames has the usual header and carries a list of parameters describing the capabilities of the computer and AP. It is common for computers to send Probe Requests for wireless networks that they have previously used to speed up connection to a known network, e.g., when a laptop has returned home for the day. Thus you may see a sequence of probes for many different SSIDs. Only the SSIDs that are present will reply.
- Type/Subtype: Probe Request (0x0004)
- Type/Subtype: Probe Response (0x0005)