答案1
那么,传输 IEEE 数据包时是否实际上存在以太网层?
简短回答:不
较长的回答:IEEE 802.11 流量不是 IEEE 802.3 以太网流量。它们都是 OSI 模型中的 L2(和 L1)协议,但它们并不相同。
虽然它们有许多相似之处,但也存在重大差异。首先,802.11 有最多四个地址字段,根据帧的类型,这些地址字段可能用于或不用于不同目的,而 802.3 只有两个。
在您的示例中,“IEEE 802.11”部分应包含所有 L2 信息。因此它不会丢失。
或者它是在传递给监听上层的应用程序之前由驱动程序添加到其中的吗?
恰恰相反,在将低层报头传送给上层应用程序之前,低层报头会被剥离。
您提供的示例对我来说似乎完全正常。我对包含 802.3 标头的 802.11 流量更感兴趣,因为这可能表明发生了其他事情。
附注:解密 802.11 的能力与查看报头的能力无关。802.11 加密仅针对数据有效负载,因此报头仍然可见。事实上,在使用数据包捕获排除无线故障时,很少需要解密 802.11(如果您正在检查更高级别的协议并且需要加密数据,则通常在 AP 的有线端捕获更容易)。