问题标签 [pcap]

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 回答
1992 浏览

c - 为什么 pcap_next_ex 的第三个参数是不兼容的指针类型?

免责声明:这是针对家庭作业的,但问题不在于作业,而在于一般语法怪异。

我试图在一个更大的程序的上下文中使用 libpcap,但是当我尝试获取每个数据包的数据包头和数据时,gcc 抱怨 pcap_next_ex 的第三个参数是不兼容的指针类型。这是一些示例代码,可以查看我在说什么:

手册页表明 pcap_next_ex() 的原型是:

我传递不兼容的指针类型到底是什么?谢谢。

0 投票
4 回答
4660 浏览

linux - libpcap 可以重新组装 TCP 段吗

我需要将 TCP 流量嗅探到我的应用程序中。

libpcap 可以重新组装 TCP 段还是我必须手动完成?

主页上写着“以手册页格式提供源包的完整文档”。之后我sudo apt-get install libpcap-dev只找到一个男人 pcap。是所有可用的文档还是我错过了什么?

谢谢

0 投票
5 回答
30476 浏览

c - 获取 pcap 捕获文件中的数据包数量?

我需要一个程序,它在使用pcap 格式的捕获文件中打印数据包的数量。这个数字在 pcap 标头中似乎不可用(可能是因为它是在捕获开始之前写入的),并且文件中似乎没有带有此信息的“页脚”。

所以,我相信唯一的算法是遍历所有数据包并将它们相加。它在 O(N) 中,并且对于大迹线,相当长。

我在这里发帖看看是否有人有更聪明的想法?

我用“C”标记,因为它是我目前使用的语言,但我相信这是一个与语言无关的问题。

0 投票
6 回答
36269 浏览

networking - 如何连接两个 tcpdump 文件(pcap 文件)

如何拼接两个tcpdump文件,让一个流量一个接一个地出现在文件中?具体来说,我想“倍增”一个 tcpdump 文件,以便所有会话将依次重复几次。

0 投票
3 回答
2423 浏览

perl - 如何修改数据包中的目标 MAC 地址?

我有一个与 Perl 中一个非常基本的事情有关的问题,但我找不到有效的解决方案。

这里先有一点背景。我使用Net ::Pcap等,当我在处理数据包的函数中(由pcap_loop$packet

我想要做的是改变这个$packet(以太网目的地)的前6个字节,以便使用用户定义的目标mac地址(例如作为命令行参数传递左右)获得$packet我可以使用的发送,pcap_sendpacket比如00:11:22:33:44:55。所以我可以拆分用户定义的地址(split例如使用)以获取目标mac地址的每6个部分,并使用该hex函数将其转换为十六进制,但现在我想修改我的数据包的第一个字节以用这些替换它们hexed 字节。我应该如何进行?

我想使用一些连接(。),但我认为这个解决方案很脏。

在 C 中思考(因为我前段时间在 C 中做过,但我希望在 Perl 中完成),一旦我得到我的“ u_char packet[]”,我只需要对memcpy前 6 个字节做一个用户提供的以太网地址我的packet[],它奏效了。

0 投票
1 回答
2169 浏览

pcap - 如何读取多个 > 2GB 的 pcap 文件?

我正在尝试使用 libpcap 解析大型 pcap 文件,但存在文件限制,因此我的文件以 2gb 分隔。我有 10 个 2gb 的文件,我想一次性解析它们。是否有可能在接口上按顺序(每个文件分别)提供这些数据,以便 libpcap 可以在同一次运行中解析它们?

0 投票
2 回答
1863 浏览

pcap - PCAP 替代品

是否有任何替代 PCAP DLL 用于捕获数据包的替代驱动程序?

0 投票
3 回答
28273 浏览

c - pcap struct pcap_pkthdr len vs caplen

我们在 Linux 上使用 libpcap 嗅探数据包 我们在每个数据包上获得的标头如下所示:

现在,据我了解,caplen 是我们捕获的数据的长度,而 len 是网络上数据包的长度。在某些情况下(例如,当打开 pcap 设备时将 snaplen 设置得太低)我们可能只捕获数据包的一部分,该长度将是“caplen”,而“len”是原始长度。因此,caplen 应该等于或小于 len,但决不能大于 len。

这是正确的理解吗?我们在一些机器上看到 caplen > len

0 投票
3 回答
1787 浏览

c - libpcap:未检测到无线设备

我想捕获从我的机器发出的数据包,并且我正在使用 libpcap(版本 1.0.0-1)。问题是,像这样的基本程序 -

好像没有显示无线接口。每次我编译并运行程序时,它都会检测到 eth0。我怎样才能让它也捕获无线接口?

0 投票
2 回答
26986 浏览

ssl - 如何解密使用 Diffie Hellman 加密的 SSH .pcap 文件。带有公钥和私钥

如何解密使用 Diffie Hellman 加密的 SSH .pcap 文件。带有公钥和私钥。

我们正在尝试通过 Wireshark,但没有成功。