gpt4 book ai didi

python - 使用 Scapy 模块 (python) 从 pcap 文件获取特定包

转载 作者:太空宇宙 更新时间:2023-11-03 14:03:39 26 4
gpt4 key购买 nike

有没有办法使用 Scapy 从 pcap 文件加载特定包?

我知道我可以使用“嗅探”函数和计数属性加载特定数量的包,例如。 G。'

sniff(offline='file.pcap', prn=action, count=31)

但是,我需要获取第 30 个数据包而不加载前面的数据包。换句话说,我对这样的例子并不满意:

packages = (pkt for pkt in sniff (offline=path, prn=action, count=31) 
print(packages[30])

尝试加载百万分之一的包时间太长。

最佳答案

每个数据包 header 都说明了它的长度。一旦解析器读取了该 header ,它就可以计算下一个 header 的位置。据我所知,您无法打开 pcap 文件并立即找到数据包 30;您需要解析前 29 个 header 。

但是您也不必将所有数据包保留在内存中,只要在接收时处理它们即可。

i = 0
for pkt in sniff(offline=path, prn=action):
if i == 30:
print pkt
break

关于python - 使用 Scapy 模块 (python) 从 pcap 文件获取特定包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49071959/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com