我想将捕获的数据包发送到本地网络中的另一台PC。 当我运行它时,我一直得到输出:
Sent 1 packets.
一遍又一遍,但在Wireshark中,我没有看到任何数据包进入IP-Adress 192.168.0.5 ...... 不确定是什么问题。
#!/usr/bin/env python3
from scapy.all import sniff, send
def spoof_and_send(packet):
packet[0][1].dst = '192.168.0.5'
send(packet)
packets = sniff(filter='udp and portrange 6000-7999', prn=spoof_and_send)
答案 0 :(得分:0)
您无法使用原始以太网标头:
def spoof_and_send(packet):
datagram = packet[IP]
datagram.dst = "192.168.0.5"
send(packet)
此外,如果您使用此代码,您将收到您创建的数据包。你需要过滤掉那些以避免循环。