如何解决如何反复发送数据包直到响应Scapy
我已经在Scapy中构建了一个ARP数据包(使用Python),并且我试图不停地反复发送此数据包,直到从目标接收并应答为止,以保存响应并打破循环。 我试图用谷歌搜索没有成功。因此,我在这里碰碰运气,很高兴收到一个有效的方法。谢谢!
解决方法
Scapy的sr1
函数发送一个数据包,并等待答案最多timeout
秒。如果收到答案,则sr1
返回接收到的数据包,否则返回None
。因此,您基本上可以使用此循环执行所需的操作:
from scapy.all import ARP,sr1
loop = True
request = ARP(pdst="10.0.0.1")
while loop:
response = sr1(request,timeout=5)
if response is None:
print('no response after 5 seconds. retrying ...')
else:
loop = False
print('I got an answer:')
response.show()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。