☰
空口不是换一张网卡那么简单:802.11 管理帧、monitor mode 和诚实边界
2026/10/16 6:35:01 网站建设 项目流程

副标题:Beacon、Probe、Auth、Assoc 落在哪一层,以及 Windows 默认为什么抓不到
专栏:《嵌入式学生的方案测试课》第 9 篇(空口下篇,诚实边界)
前置:第 8 篇已经抓过网口 DHCP / TCP / MQTT;第 5 篇会四层分流
标签:嵌入式、Wireshark、802.11、WiFi、软件测试
读者:第 8 篇交过三张网口截图;简历可能写过「空口抓包」,实际没见过 Radiotap
学完交什么:网口/空口对照表、200 字「我抓过什么、没抓过什么」、一份无空口时的替代证据包
本篇禁止伪造 monitor 截图。没有支持监听的网卡,作业到对照表和串口替代结束,仍然算过关。


0. 这篇结束你能干什么

勾这 4 条。勾不完,不要把第 8 篇的 MQTT 图改标题叫空口。

  1. 打开任意一份自己的 pcap 或截图,能从 Protocol 列和详情树第一层判断:这是 Ethernet/IP,还是 Radiotap + 802.11。
  2. 能说出 Beacon、Probe Request/Response、Authentication、Association 各自回答第 5 篇哪一层的问题;能把 WPA2 四次握手(EAPOL)和 MQTT CONNECT 分到两个世界。
  3. 能用自己的话说清:Windows 默认不是 monitor mode;笔记本 Wireshark 不是综测仪;没有监听网卡时,用串口 RSSI、连接状态、驱动 event、AH 公开的AT+SYSDBG=LMAC,1(有板才做)替代。
  4. 缺陷单里能写「缺 802.11 Assoc 证据,当前依据 AT 返回码和 RSSI」。这句比假装抓过空口更像方案测试。

本篇实验的必做部分不接空口仪器。可选部分写给「刚好有 Linux + 支持 monitor 的 USB 网卡」的人。没有就停,不要编。


1. 为什么方案测试必须懂空口,却不能装做过

客户说「配不上」。第 5 篇已经把这句话拆成四层。空口专门回答前两层:

  • 射频:空中有没有这个 AP 的 Beacon?设备有没有发 Probe?RSSI、信道、速率在 Radiotap 里是多少?
  • 关联:Auth 过了没有?Assoc 成功没有?四次握手完成没有?

网口回答后两层:DHCP、ARP、TCP、MQTT、HTTP、RTSP。

学生翻车有两种,比不会点鲨鱼鳍更严重:

  1. 装懂。把第 8 篇的 MQTT CONNECT 截图,口头改成「我抓了空口」。面试官看一眼 Protocol 列是 MQTT,不是 802.11,当场结束。
  2. 放弃分层。因为抓不到空口,就觉得射频和关联无法测。于是永远停在「串口有 CONNECTED 就算过」。原厂 FAQ 里大量配网失败,恰恰要靠空口统计或驱动 event,而不是靠再发一次 MQTT。

方案测试的成熟标志不是「我会 monitor」,而是「我知道这一层的合格证据是什么;没有仪器时,我用什么降级证据,并且把缺口写进报告」。

泰芯公开文档里,AH 用AT+SYSDBG=LMAC,1打开空口统计打印,用AT+SYSDBG=UMAC,1看上层协议栈。TXW82x 配网失败先看驱动 event 和「连接事件不等于 DHCP 完成」。这些都是空口思维,不一定是 Wireshark 空口。


2. 最小原理:空口是 802.11 帧,不是 IP 包

2.1 先画两棵树,钉在工位

第 8 篇的网口树:

Frame └── Ethernet II 源 MAC / 目的 MAC(有线或虚拟以太网) └── IPv4 源 IP / 目的 IP └── TCP SYN / ACK / RST / 重传 └── MQTT / HTTP / …

空口树(monitor 抓到之后才长这样):

Frame └── Radiotap Header 信道、速率、天线、RSSI/RCPI、噪声(字段因网卡而异) └── 802.11 管理 / 控制 / 数据帧 ├── Beacon / Probe / Auth / Assoc 管理帧 ├── RTS / CTS / ACK 控制帧 └── Data + LLC/SNAP └── EAPOL(四次握手)或 LLC 后的 IP └── 若已解密或本来就是明文,才可能再看到 IP/TCP

判断口诀:

你看到这是不是
第一层 Ethernet II,Protocol 列 TCP / MQTT / DHCP / HTTP / TLS网口空口
第一层 Radiotap 或 802.11,Protocol 列 802.11 / EAPOL / 带 Beacon 字样空口网口
串口里的AT+CWJAP/WIFI CONNECTED/PAIRING SUCCESSUART 旁路既不是网口也不是空口

详情树比 Protocol 列更可靠。有些 Wireshark 把 802.11 Data 解到了 IP,Protocol 列可能显示 TCP,但第一层仍是 Radiotap。以详情树最上层为准。

2.2 三种 802.11 帧,方案测试各用它们回答什么

802.11 把帧分成三类。你不必背帧控制字段的每一个 bit,但必须知道测配网时先找哪一类。

管理帧(Management)
用来发现和关联。方案测试配网失败,80% 的空口工作在这里。

帧谁发给谁它证明什么落在第 5 篇哪一层
BeaconAP 周期性广播这个 SSID 在这个信道上活着;带加密套件、信道、能力信息射频:扫不扫得到的前提
Probe RequestSTA 主动问「有没有这个 SSID / 有哪些 AP」设备在扫射频 / 扫描
Probe ResponseAP 回答 ProbeAP 听到了设备,并回应射频:不只是你电脑看得到 AP
AuthenticationSTA 与 AP 认证(Open 系统下很短)认证这一步过了没有关联的前半
Association Request / Response关联请求与应答关联成功才会有 AID;失败看状态码关联
Deauthentication / Disassociation任一方踢人或离开掉线是被踢还是自己走关联掉线

控制帧(Control)
RTS / CTS / ACK。用来协调介质、确认收到。你入门阶段很少靠它们写缺陷单。看到 ACK 很多,不代表业务成功;看不到 ACK,也不要第一天就写「射频芯片坏了」——可能是你监听位置不对、网卡漏帧。

数据帧(Data)
关联成功之后,真正的业务 MSDU 走这里。WPA2 下单播数据是加密的。你在空口上看到 Data,不等于你能看见里面的 MQTT。解密需要密钥,实验室有条件才做;学生默认做不到。

所以:空口擅长回答「连上没有」,不擅长在没有密钥时回答「MQTT 主题对不对」。后者回到第 8 篇网口。

2.3 Radiotap:空口里的「环境表」

Radiotap 不是 802.11 标准帧的一部分,是网卡驱动塞给抓包软件的元数据。常见字段:

  • 信道 / 频率(2.4G 是 2412、2437、2462 这类 MHz,对应信道 1/6/11)
  • 速率或 MCS
  • 天线
  • SSI Signal / RSSI / RCPI(名称因驱动而异,都是信号强度一类的数)
  • 噪声

方案测试用它做两件事:

  1. 确认你监听的信道和 AP 实际信道一致。听错信道 = 空列表,不是芯片没 Beacon。
  2. 给「弱网」一个空口数字,而不是「感觉有墙」。

第 5 篇已经警告:2.4G 学生板 RSSI 一般是负数;AH 近距离公开允许正数 0 到 10。Radiotap 里的数和 AT 打印的 RSSI 不一定同一公式,报告里写清来源,不要把两种数横比到小数点后两位。

2.4 WPA2 四次握手是空口侧密钥,不是 MQTT

关联成功之后,WPA2-PSK 还要做 EAPOL 四次握手,双方推出 PTK,之后单播才加密。

顺序(简化,够测试用):

扫到 Beacon/Probe -> Authentication -> Association -> EAPOL 1/4, 2/4, 3/4, 4/4 空口侧,Wireshark Protocol 常显示 EAPOL -> 之后 Data 加密 -> 这才可能 DHCP(网口或解密后的空口数据) -> 这才可能 TCP / MQTT CONNECT(应用)

两句禁令:

  • 抓到 MQTT CONNECT,不能说「四次握手成功」。那是应用层,握手早在前面。
  • 抓到 EAPOL,不能说「上云成功」。密钥有了,DHCP 和 MQTT 都还没开始。

Open 网络没有这套四次握手,教学上更简单,但不要用家里无密码热点当产品过关标准。产品几乎都是 WPA2/WPA3。

WPA3-SAE 的握手和 WPA2 不同。本篇只要求你知道「名字不同、仍属于关联后、DHCP 前」。细节留给有板的原厂文档。

2.5 monitor mode 是什么,为什么换一张普通网卡不够

普通 STA 模式:网卡只把发给自己的数据、部分广播,交给操作系统。别人的单播丢掉。管理帧大多也不给你。这就是第 8 篇「同一 AP 下看不见设备 MQTT」的物理原因之一:你甚至不是这对会话的端点。

monitor mode:网卡尽量把听到的 802.11 帧(含管理帧、别人的数据帧)交上来,并附 Radiotap。通常还要指定信道。这叫监听,不是「再插一张用来上网的 Wi-Fi 网卡」。

硬边界:

平台常见情况你应该怎么说
Windows + 笔记本自带网卡绝大多数不能进 monitor;Wireshark 网卡列表里的「Wi-Fi」是网口视角「我没做空口」
Windows + 部分 USB 网卡 + 特殊驱动少数能,配置痛苦,本专栏不作为必做做成了再写进报告,写网卡型号和驱动
Linux + 支持 monitor 的芯片(部分 Atheros / Realtek / 专用嗅探卡)才是学生可选路径写iw/ 接口名 / 信道
macOS部分机型可机场监听,流程和 Linux 不同做成了写版本,没做就别抄命令
综测仪 / 协议分析仪原厂射频和认证实验室第一周身份证明不是这个

「我换了一张 USB 网卡,Wireshark 里多了一行」只说明多了一块网口设备。若详情树仍是 Ethernet II,你还在第 8 篇。

2.6 混杂模式不是 monitor

有人在 Wireshark 网卡选项里勾了 promiscuous(混杂)。那是以太网世界的词:接收目的 MAC 不是自己的帧。无线 STA 模式下勾它,不能让你看到 802.11 管理帧,也不能解开别人的 WPA2 单播。

口误对照:

  • promiscuous / 混杂:网口侧,以太网
  • monitor / 监听:空口侧,802.11

面试把这两个说反,比说不出 MCS 更减分。


3. 总对照表(抄到labs/week09/air-vs-host.md)

看到的 Protocol / 详情树这是能回答什么问题不能回答什么
TCP / MQTT / HTTP / DHCP / DNS / TLS网口业务、三次握手、重传、CONNACK、DHCP 四步扫不扫得到、Auth/Assoc 失败原因
Ethernet / ARP网口二层是否通、网关 MAC射频
802.11 Beacon / Probe空口扫不扫得到、SSID 是否隐藏、信道是否对MQTT 密钥对不对
Auth / Assoc空口关联失败发生在哪一步、状态码有没有拿到 IP
Radiotap + RSSI/信道/速率空口元数据射频质量和听错信道应用 JSON
EAPOL空口(数据/密钥)四次握手有没有打完云平台鉴权
只有串口 AT / 驱动 event都不是,是旁路模组状态机、RSSI 打印、CONNECTED / GOT IP不能当 pcap 附件冒充
nRF Connect 扫描 BLE另一条空口(第 17 篇)BLE 广不广播Wi-Fi Assoc

配网失败时按表找缺的那一行证据。缺空口就写缺空口,用串口补;不要把网口 DHCP 失败的图贴到「扫不到」的单上。


4. 必做实验:证明你能区分,而不是证明你有嗅探卡

下面五步,有第 8 篇的材料就能做。做完你就有资格谈论空口。

步骤 1:把第 8 篇的图再打开,当反例

打开labs/week08/里任意一张包列表截图,或 pcap。

在详情树最上层找单词。你现在应当看到Ethernet II或Linux cooked或Frame下面直接是 IPv4。Protocol 列是 DHCP / TCP / MQTT / HTTP / TLS / DNS 之一。

在截图上用画图工具标三处,存labs/week09/host-not-air.png:

  1. Protocol 列的值
  2. 详情树第一层协议名
  3. 一行字:「这是网口。不是 802.11。」

这一张图是本篇的及格线。很多人作业交空口概念,却交不出这张反例。

步骤 2:在 Wireshark 显示过滤器里「故意找空口」,确认找不到

对同一份网口 pcap输入:

wlan

或:

wlan.fc.type_subtype == 0x08

(Beacon 的 type_subtype 常见写法;记不住就用wlan。)

期望:列表为空,或过滤器语法虽绿但 0 包。

再输入第 8 篇用过的:

dhcp || mqtt || tcp.flags.syn==1

期望:包回来了。

把两次过滤器各截一张,标注「同一份 pcap」。结论写进labs/week09/filters.md:

文件:week08 热点拓扑.pcap wlan -> 0 包,因为这是网口捕获 dhcp -> N 包,IP 层证据 我没有 monitor 捕获文件

过滤器为空,不能写成「家里没有 Beacon」。只能写成「这份文件里没有 802.11 层」。

步骤 3:用串口把「空口该回答的问题」降级回答一遍

没有 monitor,射频和关联不是不能测,是证据降级。ESP8266 最小集(第 4、5 篇已做过,本篇要按空口问题重新标注):

空口问题无空口时你做什么合格降级证据
有没有 Beacon / 能不能扫到AT+CWLAP,目标 SSID 在不在列表,RSSI 数字扫网原文 + 环境表距离/天线
设备有没有去连AT+CWJAP发出去的时间和参数带时间戳的发送行
Auth/Assoc 失败还是 DHCP 失败只有FAIL/WIFI CONNECTED/WIFI GOT IP的先后错密码应失败在 CONNECTED 之前;DHCP 失败停在 CONNECTED 之后
掉线是射频崩了还是被踢走远看 RSSI 与断开打印是否一起出现;近距离突然断开更像 AP 踢人或省电一次只改距离或只改 AP 省电

把第 5 篇四层注入里「拔天线」和「错密码」两段会话,复制到labs/week09/downgrade.md,每段上面加一行:

本段替代的空口证据:Beacon/Probe(拔天线)或 Auth/Assoc(错密码) 缺口:没有 802.11 状态码,无法区分 Auth 失败还是 Assoc 失败

成熟就成熟在最后那句缺口。

步骤 4:对照路由器管理页,仍然不是空口

打开家用 AP 的已连接设备列表。能看见 ESP8266 的 MAC,只能证明关联可能已经成功(AP 侧视角)。它:

  • 不是 Radiotap
  • 通常看不到 Probe 过程
  • 不能当 MQTT 证据

截一张打码 MAC 的管理页,注明「AP 侧关联列表,非空口 pcap」。这是第三种旁路,和串口并列,仍进不了 Wireshark 空口列。

步骤 5:写 200 字诚实声明(本篇最重要的作业)

模板,必须改成你的第一人称细节:

我抓过:Windows + Npcap,电脑热点拓扑下的网口。 见过的 Protocol:DNS、DHCP、TCP、(MQTT 或 HTTP)。 详情树第一层:Ethernet II。 我没抓过:Radiotap、Beacon、Probe、Auth、Assoc、EAPOL。 平台限制:当前是 Windows 笔记本自带网卡,未进 monitor mode。 配网射频/关联层,我用 AT 扫网、RSSI、CONNECTED/GOT IP 和错密码返回值替代。 缺陷单会写「缺 802.11 管理帧证据」。 我不会把 MQTT 截图称为空口。

少于 120 字或出现「精通空口」四个字,作业退回。


5. 可选实验:真的有 Linux + monitor 网卡才往下做

没有硬件就整节跳过。不要在 Windows 上把命令抄进报告假装跑过。

5.1 先确认网卡真的支持

在 Linux 里:

iw dev iw phy

在 phy 能力里找monitor。没有这个字,换网卡,不要折磨驱动。

常见教学路径(接口名以你的为准,下面用wlan0举例):

sudo ip link set wlan0 down sudo iw wlan0 set type monitor sudo ip link set wlan0 up sudo iw dev wlan0 set channel 6

或airmon-ng start wlan0得到wlan0mon。airmon-ng 会杀网络管理进程,做完要恢复,否则笔记本没网。

然后:

sudo wireshark

选 monitor 接口。显示过滤器:

wlan.ssid == "lab-ap-01"

或先wlan.fc.type_subtype == 0x08看 Beacon。

你现在应该看到:详情树Radiotap Header,下面IEEE 802.11 Beacon frame。SSID 在 tagged parameters 里。Radiotap 里有频率 2437 一类的数(信道 6)。

若仍是 Ethernet II:接口不是 monitor,或 Wireshark 选错网卡。

5.2 只抓管理帧,不要在宿舍扫全城当作品

合法边界:

  • 只针对你自己的实验 AP 和自己的板
  • 密码、客户 SSID、邻居网络打码
  • 不为解密别人的 WPA2 去跑握手字典
  • 中国大陆读者不做 HaLow / Sub-1GHz 发射(第 16 篇);2.4G 家用实验 AP 保持常规功率,不要外接大功率天线当玩具

建议捕获过滤器(这次可以用,因为空口包极多,不滤会爆盘):

type mgt

先只要管理帧。配网一次,停。文件大于 50MB 还没有 Beacon,先查信道。

5.3 人为制造四层,在空口上对得上号

注入(一次一个)空口期望串口期望
拔天线 / 远离Probe 还在或变少,Beacon RSSI 很差或听不到目标 SSIDCWLAP列表空或 RSSI 极差
错密码能看到 Assoc 或四次握手失败(视实现),随后 DeauthCWJAPFAIL,无 GOT IP
隐藏 SSID被动扫描可能看不到 Beacon 里的 SSID 字符串,主动 Probe 指定 SSID 仍可能连扫网列表没有名字,直连指定 SSID 仍可能成功
正确密码近距离Beacon -> Auth -> Assoc -> EAPOLCONNECTED 然后 GOT IP

隐藏 SSID 那一行足够让你明白:扫不到名字不等于 AP 没开。产品测试要单独写隐藏 SSID 用例。

5.4 仍然解不开别人的 MQTT

即便你有空口,WPA2 单播默认仍是加密 Data。没有用 wpa-pwd 等办法(仅限你自己的实验室网络)喂给 Wireshark,Protocol 列不会出现 MQTT。

所以第 8 篇的电脑热点拓扑并不过时。空口看关联,网口看业务,两份证据。原厂同时要串口。三份才像一份配网缺陷单。


6. 没有空口时,原厂现场实际在看什么

把「我没有嗅探卡」翻译成「我可以跟原厂对话」:

  1. 启动日志从头到尾。版本号、校准、CPU1 ready(TXW82x)、首个错误。
  2. 驱动 / 协议栈 event。扫描完成、关联成功、关联失败原因、四次握手失败、DHCP 完成。公开 FPV 文档写:连接事件不等于 DHCP 完成;Wi-Fi 已连接但不能联网时,分别确认关联、DHCP、默认网卡、网关、DNS、SNTP/TLS、应用鉴权。
  3. LMAC 统计。AH 公开:AT+SYSDBG=LMAC,1打开空口统计;AT+SYSDBG=UMAC,1打开上层。没有 Wireshark 空口时,这就是芯片自己的空口视角。
  4. RSSI 与扫网列表。数字 + SSID 是否出现。AH 近距离正数可能正常。
  5. 配对状态机。AH:PAIRING SUCCESS之后必须AT+PAIR=0才握手;chan_list 与 bss_bw 必须 AP/STA 一致。这是关联层配置,不是 MQTT。
  6. AP 侧列表与信道。路由器或 AH AP 是否看到 STA。

你会发现:原厂很多时候也不是每人一台协议分析仪。分析仪出现在认证、掉包到需要看重传率和频谱的时候。配网「能扫不能连」,日志和 event 先上。


7. 换成泰芯公开场景,方法怎么变

公开文档能迁移的,是问题分层,不是把 ESP 的CWLAP改名叫SCAN就结束。

公开事实空口问题学生板迁移原厂以手册为准
手机搜不到 HaLow,因为 Sub-1GHz,不是 2.4G b/g/n/ac/ax「扫不到」首先可能是频段错了,不是天线虚焊不要用手机 Wi-Fi 列表验证 AH国内无 AH 合规业余频段,不做发射
AP/STA 的chan_list、bss_bw必须一致(含顺序)空口上会表现为扫不到或关联不上ESP 上对应信道/带宽/加密套件不一致AT+CHAN_LIST/AT+BSS_BW
AT+PAIR=1成功后必须AT+PAIR=0才握手停在配对模式 ≠ 已关联ESP 没有 PAIR,但有「配网模式没退出」同类状态机缺陷单写状态机,不写芯片玄学
AT+SYSDBG=LMAC,1芯片侧空口统计ESP 用CWJAP返回和 RSSI 替代,报告写替代有 AH 板再打开打印
AT+SCAN结果在 umac dbg:AT+SYSDBG=umac,1扫描层AT+CWLAP不要把网口 netat 当空口
TXW82x:连接事件 ≠ DHCP 完成Assoc 成功仍可能没 IPWIFI CONNECTED≠WIFI GOT IP已连接但不能联网的公开检查单
TXW82x 配网失败先看驱动 event空口/驱动,不要先改 RTSP URL先看串口 event,再看 VLCCPU1 未 ready 不解释业务
笔记本 Wireshark 不是综测仪空口能力有限本篇诚实声明SRRC 连续发射只在有资质环境,第 16 篇

网桥 netat 从网口发 AT:那是第 8 篇的例外通道,更不是 802.11 监听。


8. 缺陷单范文:能扫不能连(无空口的诚实写法)

标题:【关联】错密码时无明确 FAIL,10 秒后模组不再响应 AT 严重级别:主要 环境:见 labs/week09/env.md 板:ESP-12F #3 固件:AT 1.7.4 / SDK 2.2.1(以 AT+GMR 原文为准) AP:lab-ap-01,WPA2-PSK,信道 6(路由器页) 天线:IPEX 已坐实 距离:0.5 m,视距 捕获:无 802.11 monitor;有 UART 115200 完整会话 前置:AT 探活 OK;AT+CWLAP 列表含 lab-ap-01,RSSI -47 步骤: 1. AT+CWJAP="lab-ap-01","wrong-password-xx" 2. 等待 20 s,期间继续尝试 AT 期望:20 s 内返回 FAIL 或明确错误码,之后仍响应 AT 实际:无 FAIL;12.4 s 后 AT 无回显,复位后恢复。必现 3/3 附件:uart-assoc-hang.txt;host-not-air.png(仅证明未把网口当空口) 初步分层:关联层状态机。射频层不支持(近距离能扫到,RSSI -47) 证据缺口:无 Auth/Assoc 状态码,无法区分认证失败、关联失败或驱动死锁 下一步:原厂板打开 LMAC/UMAC 打印或驱动 event;有 monitor 时补 802.11 管理帧

对比不合格标题:「Wireshark 抓不到空口所以芯片不行」。工具能力不是缺陷。

另一张只写缺口、不写锅:

标题:【射频】隔两堵墙扫不到目标 SSID(无空口确认是否还有 Beacon) 实际:CWLAP 列表空;近距离同固件同 AP 可扫到 RSSI -44 初步分层:射频或环境。不能排除 AP 在远点关了 2.4G、或设备只听错信道 证据缺口:无 Beacon/Radiotap,无法证明 AP 在该位置仍在广播 建议:用支持 monitor 的设备在同一位置听信道 6;或带一台已知好的手机扫描对照

9. 30 秒口径(对着镜子说,录音)

空口是 Radiotap 加 802.11,看 Beacon、Probe、Auth、Assoc 和四次握手。
默认 Wireshark 是网口,看 Ethernet、IP、TCP、MQTT。
Windows 笔记本通常进不了 monitor,我没抓过空口。
配网射频和关联,我用扫网、RSSI、连接事件和 GOT IP 分层;缺管理帧我会写进缺陷单。
EAPOL 不是 MQTT,CONNECTED 不是 GOT IP。

计时超过 40 秒或出现「精通」,重录。


10. 作业

目录:

labs/week09/ env.md # 沿用第 1 篇环境表 air-vs-host.md # 抄对照表,用自己的话补一列「我实际见过?」 host-not-air.png # 第 8 篇图标注「这是网口」 filters.md # wlan 为空,dhcp/mqtt 非空 downgrade.md # 拔天线 + 错密码,写替代与缺口 honest-200.txt # 200 字声明 ap-client-list.png # 可选,AP 管理页打码 monitor/ # 可选,真有 monitor 才建 beacon.png assoc.png radiotap-rssi.png nic-and-iw.txt # 网卡型号、iw 能力原文

验收:

  • air-vs-host.md每一行「我实际见过?」填是或否,不许全是。
  • honest-200.txt明确写没抓过 Beacon。
  • 没有任何文件把 MQTT 标成 802.11。
  • 可选 monitor 目录如果存在,必须有网卡型号;没有型号视为造假,整周作业作废。

11. 自测题(先闭卷)

  1. 详情树第一层是 Ethernet II,Protocol 是 MQTT,这是网口还是空口?
  2. 混杂模式和 monitor mode 差在哪?
  3. Beacon 回答哪一层?Assoc Response 呢?DHCP Ack 呢?MQTT CONNACK 呢?
  4. 为什么同一家用 WPA2 AP 下,空口即使抓到 Data 也不等于能看见设备 MQTT?
  5. EAPOL 四次握手成功,能否声称产品配网过关?
  6. Windows 默认抓不到空口,缺陷单射频栏是空着不写,还是写降级证据加缺口?
  7. AH 公开AT+SYSDBG=LMAC,1属于 Wireshark 空口吗?
  8. 手机搜不到 HaLow,优先怀疑天线还是频段?
  9. 把第 8 篇过滤器mqtt用在 monitor 的 pcap 上,可能发生什么?
  10. 简历如何写本周内容才不翻车?

答案在附录 A。


12. 学生常见翻车

  1. 网口 MQTT 截图口头改名空口。
  2. 勾了 promiscuous 就写「已做空口」。
  3. 简历「精通 Wireshark 空口 / 综测仪 / 802.11 协议栈」。
  4. 没有 monitor 就把射频层标 N/A,再也不测扫网。
  5. 在宿舍对邻居 AP 做握手破解当作业。
  6. 拿 Radiotap RSSI 和 AT RSSI 当同一个校准值给硬件改匹配。
  7. 把 Deauth 抓到一次就写「芯片乱发解认证」,不看是 AP 踢人、漫游还是你自己断开。
  8. HaLow 用笔记本 Wi-Fi 监听,听不到就报死料——频段根本不在 2.4G。
  9. 可选实验没做,却在博客放一张网上找来的 Beacon 图。
  10. 认为方案测试必须先买嗅探卡才能上班。到岗先跟日志和 event。

13. 下一篇预告

第 10 篇:《MQTT 不是发 JSON:CONNECT、KeepAlive、QoS 和弱网掉线怎么分层》。

空口和关联过了,IP 也有了,产品仍可能「上不了云」。下一篇把 TCP 之上的 CONNECT、CONNACK、KeepAlive、重连后必须重新订阅,收成测试清单。主案例用农业终端那套 MQTT 故事,但按测试口吻讲:掉线先看 Wi-Fi,再 TCP,再 MQTT,再业务。

本篇的诚实声明要带着:没有空口时,弱网证据用 RSSI 和网口重传,不要假装看过 802.11 重传计数。


附录 A. 自测题参考答案

  1. 网口。第一层 Ethernet 已经够判。
  2. 混杂是以太网收非本机 MAC;monitor 是 802.11 监听管理帧和别人的无线帧,通常要切信道。Windows 笔记本默认两者都不会变成空口。
  3. Beacon:射频/扫描。Assoc Response:关联。DHCP Ack:IP。CONNACK:应用(MQTT)。
  4. 单播加密,你没有密钥;而且 monitor 也不一定听全。业务明文仍优先网关侧网口。
  5. 不能。还差 DHCP、网关、DNS、TLS、CONNECT/CONNACK、业务订阅。
  6. 写降级证据(扫网、RSSI、AT 返回)并声明缺口。空着等于这层没测。
  7. 不属于。那是芯片 UART(或网口 netat)上的 LMAC 统计打印,空口思维,空口媒介不是 Wireshark。
  8. 频段。公开 FAQ:HaLow 是 Sub-1GHz,与家用 2.4G/5G 路由器不能直接互联。
  9. 常常 0 包。加密 Data 解不出 MQTT;没解密时 Protocol 不是 mqtt。不要用空口 pcap 的 mqtt 过滤器空去证明设备没上云。
  10. 写「能区分网口/空口;完成网口抓包;空口仅认知,用 AT/RSSI 做射频与关联分层」。不要写精通空口。

附录 B. 合格会话长什么样(可对照)

无 monitor 的及格周记:

2026-xx-xx 21:10 第 9 篇 捕获接口:未做 monitor(Win10 自带 Intel Wi-Fi,无监听能力) 网口反例:week08 pcap,Ethernet II + DHCP/TCP 过滤器 wlan:0 包 降级: 近距离 CWLAP 含 lab-ap-01 RSSI -46 错密码 CWJAP -> +CWJAP:4 FAIL(以你模组原文为准) 正确密码 T1 CONNECTED 2.1s,T2 GOT IP 2.8s 缺口:无 Auth/Assoc 状态码,无 Radiotap 结论:本周不声称空口抓包

有 monitor 的及格补充(可选):

网卡:USB xxxx,iw phy 含 monitor 信道:6(2437 MHz),与 AP 管理页一致 见过:Beacon SSID=lab-ap-01;Assoc Response status=0 未见:解密后的 MQTT(未向 Wireshark 提供 PSK,且业务改在热点网口抓)

附录 C. 公开资料(本篇用到的)

  • 泰芯 AH 方案 FAQ:手机搜不到 HaLow;RSSI 近距离可为正;配对必须退出才握手;近距离多台卡顿先隔开
  • 泰芯 AH-SDK AT 指令:AT+SCAN、AT+SYSDBG=LMAC,1/UMAC,1、AT+PAIR、AT+CHAN_LIST、AT+BSS_BW
  • TXW82x FPV 公开开发文档:连接事件不等于 DHCP 完成;已连接但不能联网的分层检查;CPU1 承担 LMAC / 802.11 Core
  • 第 8 篇:同一 AP 下网口看不见设备 MQTT;电脑热点拓扑

手册版本以官网为准。学生板命令不要直接套 AH。


附录 D. 给硬件同事的最短问法(有空口数字才用)

没有 Radiotap 就不要用这种口气。有的话:

同一位置、同一 AP 信道 6。 好板 Beacon RSSI 约 -48(Radiotap SSI Signal,网卡 xxxx)。 坏板同一监听设备听不到目标 Beacon,或 RSSI -85。 串口 CWLAP 与空口结论一致。 请先核对该板天线、IPEX 镂空、匹配;我这边固件版本是 ____。

没有空口时,把「Radiotap」换成「CWLAP RSSI」,并加一句「无 802.11 独立证据」。

(第 9 篇完)

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询