0

我在wireshark中观看了几个wifi捕获,我碰到了两个我以前从未见过的标本。首先,我认为 IEEE 802.11 数据帧后面总是会跟随 LLC 标头 (802.2),前提是该帧实际上包含数据。现在我有两个wireshark捕获显示,否则!

第一个,我们可以在 wifi 标头之后看到一个 Ethernet II 标头:

以太网 II over 802.11 数据

现在这是我不明白的第一件事。当读取 802.11 数据报头时,接口应该如何知道它将是以太网 II 跟随?802.11 标头中没有指定接下来会发生什么的字段。

其次是直接跟在 wifi 标头之后的“原始数据”。

802.11 标头之后的数据

和以前一样的问题,我们怎么知道 Data 跟随,而不是 LLC ?

4

1 回答 1

1

第一个问题:

引用 Wireshark 802.11 解析器中的评论:

  /* I guess some bridges take Netware Ethernet_802_3 frames,
     which are 802.3 frames (with a length field rather than
     a type field, but with no 802.2 header in the payload),
     and just stick the payload into an 802.11 frame.  I've seen
     captures that show frames of that sort.

标头中没有字段显示“这是一个桥接的 Netware Ethernet_802_3 帧”,因此 Wireshark 必须使用启发式方法。启发式是“如果负载的前两个字节不是都是 0xAA,负载的前 6 个字节等于目标 MAC 地址,负载的接下来 6 个字节等于源 MAC 地址,那么这是一个桥接的 Netware Ethernet_802_3 帧”,在这种情况下,它调用以太网解析器。因为这是一种启发式方法,所以当然不能保证总是得到正确的答案。

IEEE Std 802.11-2012在第 5.1.4 节“MSDU 格式”中说:

该标准是 IEEE 802 系列 LAN 标准的一部分,因此所有 MSDU 都是 ISO/IEC 8802-2:1998 中定义的 LLC PDU。为了实现互操作性,建议实施者应用 ISO/IEC 中描述的程序。 IEC 技术报告 11802-5:1997(E)(以前称为 IEEE Std 802.1H-1997 [B21]),以及处理一些特定网络协议的选择性转换表 (STT),特别注意所需的操作将 MSDU 传入或传出 LAN 或使用以太网帧格式的操作系统组件时。请注意,STA 中可能需要此类翻译。

“ISO/IEC 8802-2: 1998”也是 ANSI/IEEE Std 802.2, 1998 版,因此表示有效负载应以 802.2 标头开头。至少在我阅读 IEEE Std 802.1H-1997 时,当桥接到使用 802.2 的 LAN(例如 802.11 LAN)时,应使用其以太网类型值将没有 802.2 标头的以太网帧转换为 SNAP 帧。我猜,因为 Netware Ethernet_802_3 帧没有有效的 802.2 LLC 标头,并且没有类型字段(它们有一个长度字段;我认为,由于它们在以太网标头之后没有 802.2 标头,这意味着它们在技术上不是有效的以太网帧),它们没有被涵盖根据所讨论的规范,因此从技术上讲,将以太网数据包(从以太网标头开始)放入数据字段中并不是一个协议错误。假设这些数据包只发送到网桥,假设网桥知道如何做正确的事情。

第二个问题:

在 802.11 标头之后看到“数据”的最常见原因是相关数据包已加密(WEP 或 WPA/WPA2)并且 Wireshark 没有网络密码(对于 WPA/WPA2 Personal/Pre-共享密钥模式,在捕获中没有初始 EAPOL 握手;不支持在 Enterprise/802.1X 模式下解密)。

您是否在“受保护”(WEP 或 WPA/WPA2)网络上进行捕获?

于 2013-07-18T17:31:55.620 回答