用scapy发送数据包

时间:2015-04-08 16:18:39

标签: python scapy

我尝试用scapy发送icmp数据包但没有成功, 了解问题的位置和方向。我在python中写了一些发送icmp数据包的代码。 当然代码运行成功没有任何问题。 也是在scapy问题存在, 我的内部IP在10.0.0.8网络中为10.0.0.0/24 scapy中包含错误的代码例如是:

  • send(IP(dst="10.0.0.138")/ICMP())
  • send(IP(dst="8.8.8.8")/ICMP())

错误信息是:

Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "C:\Python26\lib\site-packages\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\lib\site-packages\scapy\sendrecv.py", line 234, in __gen_send
    s.send(p)
  File "C:\Python26\lib\site-packages\scapy\arch\pcapdnet.py", line 237, in send
    ifs = dnet.eth(iff)
  File "dnet.pyx", line 112, in dnet.eth.__init__
OSError: Result too large

注意:当我尝试运行时:

send(IP(dst="10.0.0.8")/ICMP())

send(IP(dst="127.0.0.1")/ICMP())

数据包发送成功!

1 个答案:

答案 0 :(得分:1)

你必须用sudo scapy

开始scapy