我试图通过使用Scapy捕获功能捕获传出的数据包(即,来自我的localhost)sniff,然后在捕获它们时解析它们但我不断收到以下警告:
WARNING: fileno: pcapy API does not permit to get capure file descriptor. Bugs ahead! Press
Enter to trigger packet reading
Run Code Online (Sandbox Code Playgroud)
这个问题有解决方法吗?我需要在没有用户交互的情况下完全自动化该过程.
任何帮助是极大的赞赏.
ps我的系统设置是:
OS: Mac OS X 10.7.5
python: 2.7.1
scapy: 2.2.0
Run Code Online (Sandbox Code Playgroud)
谢谢
我花了一整天等待一个循环,没有希望退出!我知道python在性能方面不是那么高效,我真的很感激任何加速建议来解决我的问题.
我使用wireshark捕获了大量数据包(大约500,000个)并将它们保存到.pcap文件中.之后,我使用Scapy rdpcap()函数从保存的文件中读取数据包,然后在循环中访问每个数据包以提取源IP地址.我的代码如下:
from scaly.all import *
srcList =[]
Packets = rdpcap("pcapfile")
for pkt in Packets:
src = Packets[Packets.index(pkt)][1].src
srcList.append(src)
Run Code Online (Sandbox Code Playgroud)
注意:我已经做了一些挖掘,我发现Cython用于加速嵌套循环,但老实说我不知道如何在我的情况下使用它.任何见解都会很棒