为什么启动 Wireshark 时会看到“NPF 驱动程序未运行。您可能无法捕获或列出接口。”?

为什么启动 Wireshark 时会看到“NPF 驱动程序未运行。您可能无法捕获或列出接口。”?

当我启动 Wireshark 时,为什么会看到此消息?

“NPF 驱动程序未运行。您可能无法捕获或列出接口。”

答案1

您需要以管理员权限运行 Wireshark。

  1. 退出 Wireshark。
  2. 在开始菜单上找到 Wireshark。
  3. 右键单击它。
  4. 选择“以管理员身份运行”,
  5. 在用户帐户控制对话框中单击“是”。

答案2

最好不要以管理员身份运行 Wireshark。请参阅这里解释一下 - 解析器中的错误在以管理员身份运行时会造成更大的损害。一个更好的解决方案(提供这里) 如下:

  • 使用“以管理员身份运行”选项打开命令提示符(cmd.exe)
  • 运行命令sc qc npf
    您将看到类似如下的输出:
    C:\Windows\system32>sc qc npf
    [SC] QueryServiceConfig 成功
    服务名称:npf
        类型:1 内核驱动程序
        START_TYPE :3 DEMAND_START
        ERROR_CONTROL :1 正常
        BINARY_PATH_NAME :system32\drivers\npf.sys
        加载顺序组:
        标签: 0
        DISPLAY_NAME:NetGroup 数据包过滤器驱动程序
        依赖项:
        服务启动名称:
  • 如果看起来像这样,您将需要使用以下方式启动服务sc 启动 npf
    使其显示STATE : 4 RUNNING

  • 要在未来自动启动服务,请使用sc 配置 npf 启动 = 自动
    (等号后面的空格很重要)

答案3

以管理员身份运行“cmd.exe”,然后进入

cd C:\Windows\system32

然后

C:\Windows\system32>sc qc npf start= auto

确认输入“sc qc npf”,您将得到输出:

C:\Windows\system32>sc qc npf
[SC] QueryServiceConfig SUCCESS

SERVICE_NAME: npf
        TYPE               : 1  KERNEL_DRIVER
        START_TYPE         : 2   AUTO_START
        ERROR_CONTROL      : 1   NORMAL
        BINARY_PATH_NAME   : system32\drivers\npf.sys
        LOAD_ORDER_GROUP   :
        TAG                : 0
        DISPLAY_NAME       : NetGroup Packet Filter Driver
        DEPENDENCIES       :
        SERVICE_START_NAME :

要使其恢复,请输入:

C:\Windows\system32> sc qc npf start= demand

答案4

带有 Wireshark 的 RTI 协议分析器在开始捕获实时数据时使用名为 NPF 驱动程序的 Windows 数据包捕获 (WinPcap) 驱动程序。加载驱动程序需要管理员权限。

要清除此错误,您需要打开位于以下位置的名为 npf.sys 的文件

* C:\Windows\System32\Drivers\

在 Windows 7 中。按照以下指南打开 npf.sys 文件。

首先确保你已经安装了winpcap,如果没有安装,请到其官方网站下载安装:http://www.winpcap.org 接下来,找到位于

* C:\Windows\System32

在Windows 7中,右键“以管理员身份运行”,打开后输入net start npf,即可成功打开NPF驱动,也就是打开了npf.sys文件。最后重启Wireshark,就OK了。

注意:
如果你使用的是Linux或者Ubuntu,在安装完WinpCap后,使用常用的">$ su Administrator"切换到最高权限账户,然后输入net start npf。

如果您使用的是 Windows XP,请使用管理员帐户登录,然后打开 cmd,输入 net start npf。

相关内容