问题标签 [npcap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
197 浏览

c++ - 在 winpcap 数据包捕获中获取 caplen 和 len 的巨大价值

我正在编写一个数据包捕获程序。我正在使用 npcap 并在运行它时附加代码和输出。问题是打印的 caplen 和 len 值是非常大的数字。而且有时随机小到 20,这是不可能的。代码是 npcap 附带的简单示例代码。有人可以建议这里出了问题..?

令人惊讶的是,在 Wireshark 中打开时捕获的文件具有准确的数据包计数,并且数据包也是可读的。所以不知道为什么 caplen 和 len 显示错误的数字。

0 投票
2 回答
954 浏览

networking - NPCap 和 Windows 10

我正在尝试使用 Wireshark 在 Windows 10 计算机上捕获到 127.0.0.1 的流量。我已经安装了 NPCap,但它似乎没有捕获该 tr5affic。

查看 Wireshark 中环回适配器的接口选项,我发现它的 IPV4 地址为 0.0.0.0。这是正确的,如果是,我如何捕获本地主机流量。

谢谢, 席德

0 投票
0 回答
3100 浏览

wireshark - 回送接口上的wireshark捕获过滤器

选择环回接口“Npcap Loopback Adapter”以捕获 locahost 流量并在“tcp”上设置“捕获过滤器”(没有显示过滤器)当我开始捕获时我什么都看不到,删除过滤器我看到不同的数据包协议(包括 tcp 数据包)

我需要捕获 localhost 数据包以检查在我的机器上发送和接收的 SOAP 消息(我的机器上有肥皂服务和客户端运行)。

0 投票
1 回答
651 浏览

tcp - 使用 Scapy 发送的 TCP SYN 从未被服务器接收到,Wireshark 在环回接口上也没有注意到

我在 Windows 7(Python 3.6、Scapy 2.4.0)上对 Scapy 的基本用法有疑问。我还在这个系统上运行 Npcap 0.99r7 和 Wireshark 2.6.2。该系统只有一个无线网络接口和 Npcap 环回接口。

我设置了这个非常经典的 TCP 服务器......:

...我设置了这个非常经典的 TCP 客户端:

两者都工作正常。Wireshark 确实报告了环回接口上的整个 TCP 流量。

现在,我正在运行服务器,并尝试运行那段代码,它只会使用 Scapy 向服务器发送 SYN:

Python 报告:

此外,Wireshark 在环回接口上看不到任何内容。有人可以给个提示吗?

更新 1

正如建议的那样,我尝试了一个更明确的代码,使用sendp()and not send(),因为我们在这里讨论的是第 2 层:

不幸的是,Wireshark 不会在任一接口(“Intel(R) Centrino(R) Advanced-N 6235”和“Npcap Loopback Adapter”)上嗅探数据包。

请注意,调用 toroute_add_loopback()是必需的,否则show_interfaces()不会报告“Npcap Loopback Adapter”,这意味着这sendp()将失败。可以通过调用conf.route.resync ()after来恢复 Scapy 路由表route_add_loopback(),但结果是一样的:Wireshark 不会在任一接口上嗅探数据包。

如果有人发现一些在 Windows 7 上运行的 Python 代码成功地在“Npcap Loopback Adapter”上发送了一个简单的 TCP 数据包,他会受到欢迎......

0 投票
1 回答
842 浏览

windows - Windows 用户空间 TCP/IP 堆栈 - 如何抑制指定以太网接口的内核堆栈?

我有一个在 Windows 用户空间程序中运行的 TCP/IP 堆栈。该堆栈基于 LwIP 的 Windows 端口:https ://github.com/yarrick/lwip-contrib/tree/master/ports/win32

用户空间堆栈使用 npcap 库/驱动程序在第 2 层与以太网接口连接:https ://nmap.org/npcap/

ncap 用于发送和捕获原始以太网数据包,这些数据包从/向用户空间 LwIP 堆栈传递。

问题:假设我在用户空间堆栈中侦听 TCP 端口 5000。Windows 内核对用户空间堆栈一无所知,并将 5000 视为封闭端口。这会干扰用户空间堆栈。例如,内核可能会使用 RESET 数据包响应传入的 SYN 数据包(拒绝 TCP 连接)。

问题:如何为指定的以太网接口关闭 Windows 内核 TCP/IP 堆栈?我希望通过 ncap 的用户空间堆栈成为唯一发送数据包的人。

0 投票
1 回答
115 浏览

scapy - scapy 中的过滤命令不起作用,我在 Windows 中运行

我在 scapy 中编写了以下代码来过滤 UDP 帧。但它不仅捕获了 UDP 的所有帧。

输出是:

我使用的是 Windows 7。我已经安装了 npcap-0.99-r9 和 nmap-7.70。有人可以建议可能是什么原因。

0 投票
0 回答
38 浏览

wireshark - 使用“runas”命令从专用帐户调用的 Wireshark 在 Windows 7 64 位上看不到网络接口

出于安全原因,我使用 Wireshark(它是 v2.4.x)如下:1)手动运行 WinPcap:从管理控制台它是命令:net start npf 2)从专用受限帐户运行 Wireshark GUI 应用程序。这是一个普通用户帐户,而不是管理员帐户,并且该帐户仅允许通过 NTFS 权限写入文件系统中的 Wireshark 配置文件。因此,如果协议解析器会受到恶意数据包的影响,Wireshark 永远不会更改/感染文件系统(或者,至少它变得更加困难)。命令是: start runas /user:Wireshark "Wireshark.exe" 或者,Shift + 上下文菜单 -> Run as different user with subsecuent account data enters 同样。3) 工作会话后关闭 Wireshark GUI 应用程序。4)手动关闭WinPcap:从管理控制台命令:net stop npf

这个场景工作得很好。但是现在使用 Wireshark v3.0.x 在相同的场景中,Wireshark 看不到 Npcap 和 WinPcap 的网络接口,就像捕获驱动程序根本没有启动的情况一样。

值得注意的是,如果使用该专用帐户登录(在 Windows 登录屏幕上),一切正常。因此,“runas”命令的问题(Shift + Context menu -> Run as different user 有相同的错误行为)。

有人知道更多吗?

提前致谢。

0 投票
1 回答
1135 浏览

c# - 无法通过使用 Npcap 而不是 Winpcap 来激活适配器

我正在尝试使用 Sharppcap 来打包和发送 UDP 包。我可以通过 Windows 环回适配器发送包,但它将字节长度限制为 1500。但是,我需要发送更大的包才能更快。我安装了 Npcap 来增加这个数字,但它让我卸载了 Winpcap 驱动程序,现在当我尝试打开 Npcap Loopback 适配器时抛出异常:

CurrDev.Open(DeviceMode.Promiscuous, readTimeoutMilliseconds);

异常:SharpPcap.PcapException:'无法激活适配器 (rpcap://\Device\NPF_{DB15D668-E692-46D9-9A6F-FD6747CD11AD})。返回码:-1'

奖励问题:我的目标是通过以太网发送 10 Gb/秒。还有其他想法如何达到这个速度?

0 投票
1 回答
180 浏览

python-3.x - 在 Python 二进制文件中包含 WinPcap

我制作了一个使用 Scapy 的 Python 3 程序,然后我使用 pyinstaller 生成了一个二进制文件,它工作正常,但总是需要单独安装 WinPcap 才能使用二进制文件。

有没有办法将 WinPcap/npcap 包含到二进制文件中,这样用户就不会费心安装额外的软件了?

0 投票
0 回答
88 浏览

winpcap - PCAP_OPENFLAG_NOCAPTURE_LOCAL 在 Windows 10 上不起作用

我想使用 WinPcap/npcap 库在 Windows 10 上桥接两个适配器。即使在设置了标志 PCAP_OPENFLAG_NOCAPTURE_LOCAL 之后,我仍然在无限期地接收数据包(适配器 A 发送的数据包被发送到适配器 B,反之亦然,在一个循环中)。我正在使用此处提供的示例代码https://github.com/nmap/npcap/tree/master/Examples/UserLevelBridge。有谁知道这个问题的解决方案?