为什么发件人IP地址在Scapy中增加?

问题描述 投票:0回答:1

我正在尝试使TCP数据包发送到另一台计算机500次。我创建了以下代码:

from scapy.all import *
from scapy.utils import rdpcap
#Create your own packets
data = 'This is a test'
myPacket = Ether(src="00:E0:4C:00:02:42",dst="00:E0:4C:01:08:99")/IP(src="169.254.162.71/16",dst="169.254.208.208/16")/TCP()/Raw(load=data)
print(myPacket.show())
for i in range (0,500):
    sendp(myPacket, iface="Ethernet 4")  # sending packet at layer 2

问题是,当我运行此代码时,由于某些原因,计算机收到的源IP递增的数据包,而目标IP则错误:

enter image description here

任何解决此问题的帮助,将不胜感激。

python networking logic scapy
1个回答
1
投票

您地址中的/16在CIDR表示法中称为网络掩码。这意味着您的地址是包含169.254.0.0169.254.255.255之间所有可能地址的子网。 (与源IP相同)参见https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routinghttps://en.wikipedia.org/wiki/Private_network

Scapy将发送带有所有可能地址的256x256x256x256(同时包含srdst的)数据包,从0.0地址开始。您只需要删除/16

© www.soinside.com 2019 - 2024. All rights reserved.