我正在尝试使用scapy构建一个新图层。我想读取一个pcap文件并将每个数据包存储在一个数组中,以便我可以使用数组的索引访问数据包内的所有信息。
答案 0 :(得分:1)
您正在寻找的scapy功能是rdpcap
from scapy.all import *
packets = rdpcap('file.pcap')
packets[0].show()
答案 1 :(得分:-1)
您可以随处读取Scape,对于> 10MB的pcap文件而言,Scape超级慢。我总是使用dpkt制作了一些工具。只是给你一个想法。使用dpkt分割一个670MB的文件,将我需要的特定字节与完整的scapy相比(读取原始包(使用scapy的最快解决方案))进行了拆分:
dpkt需要150秒(6GB内存),scapy> 750秒(> 10GB)