我正在玩Scapy,我想在Python脚本中使用它,但发送数据包似乎是一个问题。这是我的代码。
Scapy Shell:
send(IP(src="10.0.99.100",dst="10.1.99.100")/ICMP()/"Hello World")
这样可以正常工作并发送数据包。
Python脚本:
#! /usr/bin/env python
from scapy.all import sr1,IP,ICMP
p=sr1(IP(src="10.0.99.100",dst="10.1.99.100")/ICMP()/"Hello World")
这样运行正常但是当它尝试发送数据包时我得到了:
WARNING: No route found for IPv6 destination :: (no default route?)
Begin emission:
.Finished to send 1 packets.
....^C
Received 5 packets, got 0 answers, remaining 1 packets
答案 0 :(得分:14)
在Python环境中运行时,您使用的是sr1
函数。 sr1
函数将发送数据包,然后等待答复,保持接收数据包的计数。点击此处了解更多信息 -
http://www.secdev.org/projects/scapy/doc/usage.html#send-and-receive-packets-sr
要获得所需的行为,您需要使用send
函数,就像使用Scapy shell时一样。
#! /usr/bin/env python
from scapy.all import send, IP, ICMP
send(IP(src="10.0.99.100",dst="10.1.99.100")/ICMP()/"Hello World")