scapy "TypeError: 'IP' object is not callable"
scapy "TypeError: 'IP' object is not callable"
在我的 Scapy 脚本中出现错误,我找不到原因。
#!/usr/bin/python
from scapy.all import *
from settings import *
#Create Layer-2 Frame.
l2 = Ether( dst=dst, src=src, type=2048) #dst and src from settings
pkt = IP(dst=dst)/ICMP(type=8)/Raw(load=("X"*10000))
#Create some big pings:
for i in range(10000,10020):
frags = fragment(pkt) #create Fragments
for fragment in frags:
sendp(l2/fragment, iface=iface)
print("i: " + str(i))
Scapy 发送一整包之后,我变成了错误信息:
TypeError: 'IP' object is not callable
有人可以告诉我如何解决这个问题吗?
您必须在 settings.py
中使用不同的不可调用值定义 IP
,因此 scapy
包定义的 IP
class被覆盖。您可以通过将 settings.py
中的 IP
变量重命名为其他名称来解决此问题。或者,您可以执行 import settings
而不是 from settings import *
,然后将 settings.py
中的 IP
变量引用为 settings.IP
.
您正在使用 for
循环变量覆盖 fragment
函数,因此 fragment
在外循环的下一次迭代中成为不可调用的对象。
您应该将 fragment
变量重命名为其他名称:
for frag in frags:
sendp(l2/frag, iface=iface)
在我的 Scapy 脚本中出现错误,我找不到原因。
#!/usr/bin/python
from scapy.all import *
from settings import *
#Create Layer-2 Frame.
l2 = Ether( dst=dst, src=src, type=2048) #dst and src from settings
pkt = IP(dst=dst)/ICMP(type=8)/Raw(load=("X"*10000))
#Create some big pings:
for i in range(10000,10020):
frags = fragment(pkt) #create Fragments
for fragment in frags:
sendp(l2/fragment, iface=iface)
print("i: " + str(i))
Scapy 发送一整包之后,我变成了错误信息:
TypeError: 'IP' object is not callable
有人可以告诉我如何解决这个问题吗?
您必须在 settings.py
中使用不同的不可调用值定义 IP
,因此 scapy
包定义的 IP
class被覆盖。您可以通过将 settings.py
中的 IP
变量重命名为其他名称来解决此问题。或者,您可以执行 import settings
而不是 from settings import *
,然后将 settings.py
中的 IP
变量引用为 settings.IP
.
您正在使用 for
循环变量覆盖 fragment
函数,因此 fragment
在外循环的下一次迭代中成为不可调用的对象。
您应该将 fragment
变量重命名为其他名称:
for frag in frags:
sendp(l2/frag, iface=iface)