Appearance
题目
在下图所示的网络中,若主机 H 发送一个封装访问 Internet 的 IP 分组的 IEEE 802.11 数据帧 F,则帧 F 的地址 1、地址 2 和地址 3 分别是( )。
图说:H 与 AP 之间是无线链路,帧 F 即题面要分析的 802.11 数据帧;AP 到 R 是普通有线以太网("00-12-34-56-78-9c"为路由器接 AP 那个接口的 MAC)。
错因
A
地址 1 / 地址 2 颠倒——把 802.11 帧的字段顺序按以太网帧的"目的 MAC + 源 MAC"读法来填,结果地址 1 = H(源)、地址 2 = AP(目的)。但 802.11 帧的约定是 地址 1 = 接收方 / 地址 2 = 发送方,与以太网相反。这是 802.11 字段顺序的最常见混淆点。
C
地址 1 = AP(接收方)✓,但 地址 2 / 地址 3 颠倒。错误填法:地址 2 = 路由器(误以为这是"最终目的"对应的发送方),地址 3 = H。错因是不理解地址 3 在基础设施模式下的含义——地址 3 是目的端的 MAC(即"DS 后面要送达谁",本题就是 H 的默认网关 = 路由器),不是数据原始发起方 H。
D
全错位:地址 1 = H、地址 2 = 路由器、地址 3 = AP。错因可能是把"H 想给路由器发数据"这一逻辑硬塞进字段:地址 1 当源、地址 2 当目的、地址 3 当中转。但 802.11 三个字段都不是这套语义。
总解析
802.11 帧的 4 个地址字段(题问其中 3 个)的含义因 ToDS / FromDS 标志位组合而异。本题场景:H(STA)通过 AP 接入 Internet(基础设施模式),分组方向 STA → DS(外网),对应 ToDS = 1, FromDS = 0:
| 字段 | 含义(ToDS=1, FromDS=0) | 本题取值 |
|---|---|---|
| 地址 1 | 接收方(即 BSSID = AP 自身 MAC) | AP = 00-12-34-56-78-9b |
| 地址 2 | 发送方(即源 STA = H 自身 MAC) | H = 00-12-34-56-78-9a |
| 地址 3 | 目的方(即"DS 之后该送达谁的 MAC"——本题 H 要发到 Internet,第一跳目的是默认网关 = 路由器接 AP 的 MAC) | R = 00-12-34-56-78-9c |
为什么"接收方"和"发送方"和以太网帧反着写:802.11 标准把"无线链路上谁能直接听到这个帧"放在最前面(地址 1),方便接收端快速判断"是不是给我的"——这是无线介质的约束(多设备共享空中、要快速过滤)。以太网帧没这个问题,所以习惯把 DA 写前面。
为什么地址 3 不是 H、不是 AP、不是 Internet 上某个服务器:
- 不是 H:H 是发送方(地址 2),不是 destination
- 不是 AP:AP 只是 DS 入口、不是 IP 分组的"以太网下一跳目的"
- 不是 Internet 服务器:H 不知道服务器的 MAC(也不可能知道,跨网段时 ARP 只看默认网关),第一跳以太网帧目的就是路由器接 AP 这一侧的 MAC
对比口诀:
ToDS=1, FromDS=0 (STA→外): Addr1=BSSID(AP), Addr2=SA(STA), Addr3=DA
ToDS=0, FromDS=1 (外→STA): Addr1=DA(STA), Addr2=BSSID(AP), Addr3=SA
ToDS=0, FromDS=0 (Adhoc): Addr1=DA, Addr2=SA, Addr3=BSSID
ToDS=1, FromDS=1 (WDS): 四地址帧(Addr1..4 全部使用)最终答案是 B(00-12-34-56-78-9b, 00-12-34-56-78-9a, 00-12-34-56-78-9c)。
编者注(生僻术语):BSSID = "Basic Service Set Identifier",本题里就是 AP 的 MAC。它跟 SSID(网络名 WiFi 名字)不是一回事——SSID 是字符串,BSSID 是 MAC 地址。