在 Windows 10 上安装 Npcap

在 Windows 10 上安装 Npcap

最近,在提示启动更新后,Wireshark 无法再检测到我的以太网接口,列表中只剩下 USB。

由于重启后问题仍然存在,我决定重新安装Wireshark,所有选项都一样。情况并没有改善,这时我开始怀疑驱动程序。

快速检查给了我相互矛盾的信息。

>sc query npcap
SERVICE_NAME: npcap
        TYPE               : 1  KERNEL_DRIVER
        STATE              : 1  STOPPED
        WIN32_EXIT_CODE    : 31  (0x1f)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

>sc qc npf

SERVICE_NAME: npf
    TYPE               : 1  KERNEL_DRIVER
    START_TYPE         : 1   SYSTEM_START
    ERROR_CONTROL      : 1   NORMAL
    BINARY_PATH_NAME   : \SystemRoot\system32\DRIVERS\npf.sys
    LOAD_ORDER_GROUP   : NDIS
    TAG                : 28
    DISPLAY_NAME       : Npcap Packet Driver (NPF)
    DEPENDENCIES       :
    SERVICE_START_NAME :

>sc start npcap
[SC] StartService FAILED 2:

The system cannot find the file specified.

>sc start npf
[SC] StartService FAILED 2:

The system cannot find the file specified.

因此,显然,该服务存在,但无法启动,因为缺少相关文件。由于 Wireshark 仍然一无所获,我决定卸载 npcap,从头开始。

不幸的是,卸载 Npcap 比我想象的要难,卸载失败并生成以下日志:

从注册表读取服务选项

Windows 当前版本:10.0 (Win10)

试图阻止司机......

停止 npf 驱动程序

Npcap 数据包驱动程序 (NPF) 服务未启动。

输入 NET HELPMSG 3521 即可获得更多帮助。

停止 npcap 驱动程序

Npcap 数据包驱动程序 (NPCAP) 服务未启动。

输入 NET HELPMSG 3521 即可获得更多帮助。

Npcap 服务并未暂停。

Npcap。设备管理器还检测到了 Npcap 环回接口。

因此驱动程序服务没有运行,但显然还残留着一些痕迹。作为测试,我尝试重新安装 Wireshark 和 Npcap。

令我惊讶的是,Wireshark 检测到了 Npcap(适当版本)并且不让我再次安装它。

最后,我检查了:

C:\Windows\System32\drivers

查看相关文件是否存在,结果发现两个文件都存在。

这更让人恼火,因为我的笔记本电脑上运行着同样的版本。我不知道下一步该怎么做。

答案1

问题出在 Windows 驱动程序存储文件存储库中的旧 Npcap 驱动程序。由于我所不知道的原因,安装或卸载过程均未检测到它们。

虽然我不太清楚是怎么回事,但这些残留文件阻碍了完整 Ncap 驱动程序套件的安装。为了删除它们,我使用了以下批处理脚本(来自 J奥纳坦·范霍夫):

@echo off
for /L %%A in (1,1,300) do (
  echo Deleting OEM%%A.INF
  pnputil /d OEM%%A.INF
)

之后我重新安装了 Wireshark,发现它的功能已恢复。到目前为止,我还没有遇到任何其他问题。

答案2

找到答案https://github.com/nmap/nmap/issues/1289

光盘 c:\windows\system32\

删除 npcap

cd c:\windows\Syswow64\

删除 npcap

按下 Windows 键,在控制面板中输入

选择卸载程序

选择 npcap

对我有用

相关内容