Network Monitor(Netmon)是微软推出的免费协议分析工具,原生支持Windows驱动模型,适用于基础至中等深度抓包与ETL日志分析;需正确选择网卡、配置混杂模式、清空ARP缓存,并通过三栏界面解析协议结构及加载ETL解析器。
网络监视器(network monitor,简称 netmon)是微软推出的免费协议分析工具,适合在 windows 环境下做基础到中等深度的网络抓包与解析。它不依赖 winpcap,原生支持 windows 驱动模型,对系统干扰小,尤其适合分析本地系统事件日志(如 etl 文件)和特定协议交互。
启动抓包前的准备
确保目标网卡处于可用状态,并确认是否需要混杂模式:
- 若只分析发往/来自本机的流量(如 HTTP 访问、Ping),默认设置即可;
- 若需捕获同一局域网内其他设备的通信(如无线 AP 下的跨主机流量),需手动启用 Monitor Mode(在 Capture Settings → Scanning Options 中勾选);
- 避免在虚拟网卡、环回适配器或未连接的网卡上启动抓包;
- 建议提前清空 ARP 缓存(arp -d *),避免因缓存干扰导致抓不到首包(如 ARP 请求/响应)。
开始与控制数据捕获
打开 Network Monitor 后,界面左侧列出所有网络接口。选择对应物理网卡(注意看 Description 是否含 “Wireless” 或 “Ethernet” 字样),点击 Start 开始捕获:
- 点击 Pause 可临时挂起抓包,保留已有数据;
- 点击 Stop 会终止并清空当前缓冲区;
- 可在捕获过程中随时应用显示过滤器(Display Filter),例如输入 ip.addr == 192.168.1.100 快速聚焦某台设备;
- 支持多条件组合,如 tcp.port == 443 and http 查看 HTTPS 的 HTTP 层内容。
解析数据包结构
选中任意数据包后,下方分三栏显示信息:
- Packet List Pane:按时间顺序列出所有帧,含编号、时间戳、源/目的地址、协议、长度;不同协议自动着色(可自定义路径:View → Coloring Rules);
- Packet Details Pane:展开后逐层展示协议头字段,例如点开 “Internet Protocol Version 4”,能看到版本、首部长度、TTL、协议号(6=TCP,17=UDP)、源/目的 IP;
- Packet Bytes Pane:十六进制+ASCII 对照视图,用于核对原始字节或查找特定字符串(如 HTTP 请求中的 User-Agent)。
加载和分析 ETL 日志文件
当使用 pktmon 命令行工具生成 ETL 日志(如 pktmon etl2txt 或直接保存为 .etl)时,需额外配置解析支持:
- 安装 Network Monitor 3.4(仅此版本兼容 ETL);
- 将官方提供的 etl_Microsoft-Windows-PktMon-Events.npl 解析器复制到 %PROGRAMDATA%\Microsoft\Network Monitor 3\NPL\NetworkMonitor Parsers\Windows;
- 将同名 stub 文件放入 Stubs 目录并重命名为正式名称;
- 在 Tools → Options → Parser Profiles 中启用 Windows 分析器配置;
- 用 Netmon 打开 .etl 文件后,左窗格按“活动(Activity)”分组,可右键某事件 → “Conversation” 查看完整交互流。

















