网卡抓包
本篇教你用「网卡抓包」抓下这台机器网卡上流过的一切:DNS、QUIC、游戏、IoT、各种私有协议,凡是经过网卡的都在眼前。不用配代理、也不用装证书,选一块网卡就能开抓;抓到的 HTTPS 也不再只是密文——常见程序抓到即明文,其余程序一键「解密此程序」即可看懂。
一、什么时候用这种抓法
适合你满足下面任一条:
- 想看非 HTTP 流量:DNS、QUIC、ICMP、ARP、任意 TCP / UDP,代理抓不到的这里都抓得到。
- 想摸清一个程序的全部网络行为:它到底连了哪些地址、用了哪些协议、有没有「悄悄」的连接。
- 不想改系统代理、也不想装证书,希望零侵入地直接抓。
- 手上是私有 / 自研协议,想先抓到裸流再慢慢拆。
如果你只是想调某个 HTTP 接口、还要改写或重放,用 代理抓包更精准;只想抓某一个能用命令启动的程序,用 指定程序抓包 更省事。
二、前置条件
- 已安装并启动 TraceEagle(首次启动同意系统权限即可)。
- 无需改系统代理、无需装证书。
- 想看某程序的 HTTPS 明文时,才需要在抓包中对它点一下「解密此程序」(见第四节),常见程序连这一步都省了。
三、开始抓:两步抓下第一条
-
新建会话,选择 「本机网卡抓包」。
-
选一块网卡:工具自动列出本机所有网卡,并默认帮你挑好当前活动的那块。想抓哪块选哪块。
-
(可选)开抓前设过滤条件:只想抓关心的流量,就填一条抓包过滤条件,或直接点内置预设(TLS / HTTP / QUIC / DNS / TCP / UDP / ICMP / ARP / SSH 等)一键套用。
抓包过滤只能在开始前设定、开始后不可改——它决定网卡这一层「抓哪些」。想在已抓的数据里再筛,用逐包视图的「显示过滤」(见第四节)。
-
点 开始。网卡上流过的数据包会实时出现在列表里。
让目标程序产生网络请求(打开网页、启动一次连接),流量就会实时刷进列表。
四、看明文:把密文变明文
网卡抓到的流量默认是密文(原样抓取)。想看某个程序的 HTTPS 明文,分三档、层层兜底:
- 自动解密:浏览器、Electron 应用等常见程序通常抓到即明文,无需任何额外操作。
- 手动「解密此程序」:不能自动解密的程序,点 「解密此程序」、在列表里选中它,即可解出它的加密流量。支持对多个程序同时解密。
- 两个加强开关(还解不全时再用):
- 重启程序:从头启动目标,连它启动初期的加密流量也一并解出。
- 一键处理子进程:有些程序由子进程收发流量,勾上会连同子进程一起处理,避免漏解。
抓包途中还有两个视图帮你把包看懂:
- 逐包视图:像专业抓包工具一样逐个数据包看。选中一帧即可看到帧信息、原始字节,以及逐层展开的协议分层树。搜索框支持 Wireshark 风格的显示过滤(如
tcp.port==443、tls.handshake、dns),边输入边校验语法,在已抓的全量数据里精确定位。 - 连接视图:把散落的包重组成一条条连接,「追踪此连接(Follow Stream)」完整看整条连接的收发;DNS / TLS / HTTP 等还能结构化查看。
两个视图互相跳转(从连接跳回原始包、或从某个包追踪整条连接)。对任意一帧右键,还能只看此连接 / 过滤此连接、标记该帧、复制源 / 目的地址,或对远端 IP 直接查主机档案 / ping / 端口扫描。抓包途中也可随时暂停,先看已抓的、理清了再继续。
五、验证:确认抓到并解密了
- 抓到了:网卡有流量时列表就会不断刷新;用连接视图能看到一条条连接按协议归类。
- 能看懂:点开一条 HTTPS 连接,若显示为可读明文(如 JSON),说明已解密成功;若还是密文,回到第四节对它点「解密此程序」。
- 想验非 HTTP:在逐包视图的显示过滤里输入
dns、quic、icmp等,能筛出对应流量,就说明网卡层抓全了。
六、抓不到 / 解不开?逐条排查
| 现象 | 多半是 | 怎么办 |
|---|---|---|
| 抓到了,但某程序还是密文 | 它不属于「抓到即明文」的常见程序 | 对它点「解密此程序」并选中;仍不全就再开 重启程序 / 一键处理子进程 |
| 一条流量都没有 | 选错了网卡,或抓包过滤把流量全滤掉了 | 换成当前活动的那块网卡;放宽或清空抓包过滤后重开会话 |
| 想在已抓数据里再筛,却发现抓包过滤改不了 | 抓包过滤只在开始前生效 | 用逐包视图的「显示过滤」在已抓的全量里筛(如 tcp.port==443) |
| 目标走 HTTP/3(QUIC)、看不全 | 越来越多 App 改用 QUIC,网卡层历来难抓难解 | 让目标从 HTTP/3 平滑回退成普通连接,重新变得可抓、可解(停止会话即自动恢复);拿到密钥时也能直接解开 QUIC / HTTP/3 |
| 只想调一个 HTTP 接口,网卡流量太杂 | 网卡抓的是「全部」、偏全不偏精 | 改用 代理抓包(更精准)或 指定程序抓包(只抓一个程序) |
七、本机抓法怎么选
| 你的情况 | 用哪种 |
|---|---|
| 看整机全部流量、非 HTTP 流量、某程序的全部网络行为 | 网卡抓包(本篇,最全) |
| 调 HTTP 接口、要改写 / 重放 | 代理抓包(更精准) |
| 能用命令启动的常规程序(浏览器 / 脚本 / CLI) | 指定程序抓包(最省事) |
| 程序已在运行 / 证书绑定 / 不认代理 / 自研加密 | 应用层抓包 |
| macOS 上的系统自带 App / 顽固应用 | 系统级抓包 |
下一步
- 抓到之后怎么读、怎么切换视图、怎么解码:见 数据查看与解码。
- 遇到私有 / 自研协议、想自己教它怎么读:见 自定义协议解码。
- 想顺手查对端 IP 的归属 / 地理 / 证书:见 主机详细信息。
- 想对某个远端做进一步探测:见 网络诊断、端口扫描与子域发现。