我明白了,你是想在 Wireshark 里抓取 USB 设备的数据包,但是发现 USBPcap 接口不见了或者根本没有出现。这个问题很常见,尤其是在 Windows 环境下安装 Wireshark 后。

我帮你从原理到解决方案都讲一遍,这样你能彻底明白为什么会这样,以及怎么解决。


1. 原因分析

Wireshark 在 Windows 下想抓 USB 数据,必须依赖一个 驱动程序 —— USBPcap(USB Packet Capture)。

  • 它不是 Wireshark 核心的一部分,而是一个额外的内核驱动。
  • 如果安装 Wireshark 时没有勾选“USBPcap”,或者权限不足安装驱动,就不会有 USBPcap 接口。
  • 在某些 Windows 版本(尤其是 Win11 或启用了内核驱动签名强制的系统)中,如果 USBPcap 驱动没正确签名,也会被系统阻止加载。

2. 检查是否安装了 USBPcap

方法 1:看服务

按 Win + R → 输入 services.msc → 回车

  • 找是否有 USBPcap 相关的服务
  • 如果没有,就是没安装

方法 2:看设备管理器

按 Win + X → 设备管理器 → 查看“非即插即用驱动”或“系统设备”

  • 如果找不到 USBPcap,就是没装或者被禁用

3. 解决方案

方法一:重新安装 Wireshark 并勾选 USBPcap

  1. 到 Wireshark 官网 下载最新版安装包(.exe)
  2. 运行安装程序
  3. 在 安装选项 页面,一定要勾选:
    ✅ Install USBPcap
  4. 安装完成后重启电脑

注意:安装 USBPcap 需要 管理员权限,并且可能会在安装过程中弹出“驱动签名”提示,必须点击“安装”。


方法二:单独安装 USBPcap

如果你不想重装 Wireshark,可以只安装 USBPcap 驱动:

  1. 去 USBPcap 官方 GitHub 下载:https://desowin.org/usbpcap/
  2. 下载对应的安装包(USBPcapSetup-x.x.x.x.exe)
  3. 右键 → 以管理员身份运行
  4. 安装完成后重启 Wireshark

方法三:检查驱动签名问题(Win10/Win11)

  • 如果你的系统启用了 驱动签名强制,而 USBPcap 驱动是旧版本未签名的,系统会阻止它加载
  • 解决:
    1. 更新到 USBPcap 最新版本(签名齐全)
    2. 或者临时关闭驱动签名检查(不推荐,安全性低):
      • 重启 → 进入高级启动选项 → 禁用驱动程序强制签名

方法四:确认 USB 设备接在哪个端口

  • 即使安装了 USBPcap,你在 Wireshark 中也可能看不到预期的设备流量,因为它抓的是总线而不是单一设备
  • 选择 USBPcap1 / USBPcap2 … 等接口时,要确保 USB 设备是在该总线上
  • 你可以用 USBPcapCMD 工具列出当前可抓取的总线:USBPcapCMD.exe -l

4. 使用小技巧

  • 开 Wireshark → 选择 USBPcapX 接口 → 开始抓包
  • 找到目标设备,可以用 设备的 Vendor ID / Product ID 过滤,例如:usb.device_address == 3 或者usb.idVendor == 0x046d && usb.idProduct == 0xc52b
  • 如果只想抓某个设备的数据,建议用 USBPcapCMD 抓 → 再导入 Wireshark,这样减少无关流量