在 pcap 中搜索比正常搜索更快
Search in pcap faster then normal
packets = rdpcap("/home/pcap_evidence/"+date+"/"+list_time[0]+"")
for data in packets:
if IP in data:
if data[IP].src == ip and data[IP].dst == ip:
list_.append(data)
在这段代码中,我正在使用 rdpcap 读取 pcap,然后通过这种方式使用 for 循环迭代它src_ip 或 dst_ip 然后存储该 pcaket 并制作一个新的过滤 pcap。
所有这一切都需要 5 分钟来搜索 600 MB 的文件,我想比这快得多。我该怎么做。
众所周知,scapy 很慢。对于大文件,我会避免 scapy。
最好的方法是使用 tshark
例子:
tshark -r my_capture.pcap -Y "(ip.src == 192.168.1.10) && (ip.dst == 172.27.224.70)" -w /tmp/my_filtered_capture.pcap
如果你需要 python 中的结果,你可以调用它然后解析结果。
packets = rdpcap("/home/pcap_evidence/"+date+"/"+list_time[0]+"")
for data in packets:
if IP in data:
if data[IP].src == ip and data[IP].dst == ip:
list_.append(data)
在这段代码中,我正在使用 rdpcap 读取 pcap,然后通过这种方式使用 for 循环迭代它src_ip 或 dst_ip 然后存储该 pcaket 并制作一个新的过滤 pcap。
所有这一切都需要 5 分钟来搜索 600 MB 的文件,我想比这快得多。我该怎么做。
众所周知,scapy 很慢。对于大文件,我会避免 scapy。
最好的方法是使用 tshark 例子:
tshark -r my_capture.pcap -Y "(ip.src == 192.168.1.10) && (ip.dst == 172.27.224.70)" -w /tmp/my_filtered_capture.pcap
如果你需要 python 中的结果,你可以调用它然后解析结果。