我按照支持的程序安装了python 2.7和scapy:pywin32,WinPcap,Pypcap和libdnet。我觉得说我的操作系统是Windows 7很重要。
当我使用嗅探功能时,似乎会引发错误:http://prntscr.com/dbd79a。我已经尝试了另一个scapy的函数和类作为IP和sendp,它工作正常,问题只是在嗅探。
我从许多安装链接尝试了几个版本的scapy,没有任何变化。
答案 0 :(得分:1)
您的问题是scapy版本2.3.3中的错误(于18/10/16上传)。 它可能会在下一个版本中修复,同时你可以通过
安装以前的版本pip install scapy==2.3.2
我检查了提交,这个版本中没有这个bug。但是我没有测试它,所以它可能包含其他错误(因为2.3.3必须改变一些更好的东西,至少我希望它做到了),所以如果你必须使用2.3.3由于某种原因你可以像这样修补它:
from scapy.arch.windows import compatibility
from scapy.all import log_runtime, MTU, ETH_P_ALL, PcapTimeoutElapsed, plist
compatibility.log_runtime = log_runtime
compatibility.MTU = MTU
compatibility.PcapTimeoutElapsed = PcapTimeoutElapsed
compatibility.ETH_P_ALL = ETH_P_ALL
compatibility.plist = plist
compatibility.sniff(1) # call the sniff function however you like