我正在尝试一个简单的代码,只是发送一个 ARP 数据包:
from scapy.all import *
p = ARP()
send(p)
我得到这个错误:
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
send(p)
File "C:\Python26\scapy\sendrecv.py", line 251, in send
__gen_send(conf.L3socket(*args, **kargs), x, inter=inter, loop=loop,
count=count,verbose=verbose, realtime=realtime)
File "C:\Python26\scapy\sendrecv.py", line 234, in __gen_send
s.send(p)
File "C:\Python26\scapy\arch\pcapdnet.py", line 237, in send
ifs = dnet.eth(iff)
File "dnet.pyx", line 112, in dnet.eth.__init__
OSError: No error
我的操作系统是 windows 8 64 位。我在 win7 64bit 中试过,遇到了同样的问题。我在 win7 32 位中试过,效果很好。
我不明白为什么..请帮忙..
最佳答案
我猜你必须通知接口(interface) ID,像这样:
sendp(netpacket, iface='eth1')
我遇到了和你一样的麻烦,照我说的去做了!
关于python - Scapy 不会在 64 位 Windows 中发送数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17275319/