使用Python嗅探模块丢失了一些数据包



我尝试了几乎所有的Python嗅探模块(pcapy,winpcapy,pypcap,scapy,socket(。

我总是遇到同样的问题,我丢失了一部分数据包(大约 1% ~ 10%(。

但与此同时,Wireshark和tcpdump数据包永远不会丢失;也许是性能?或者尝试用多进程做一些事情?

来自此代码

from scapy.all import *
from scapy.layers import http 
def http_header():
do something
packet=sniff(prn=http_header,store=0)

store 0是问题所在。 它基本上是说只尽快处理数据包,不要缓冲。 使用sniff(prn=http_header)运行相同的代码,您不会丢弃任何数据包

最新更新