Python 可以手动设置ARP数据包的目标MAC地址吗?

Python 可以手动设置ARP数据包的目标MAC地址吗?,python,scapy,mac-address,arp,data-link-layer,Python,Scapy,Mac Address,Arp,Data Link Layer,使用python和Scapy,使用以下示例代码更改数据包的MAC地址目标没有问题: packet = Ether(dst=[MAC address])/IP()...... 但是,当我尝试像这样对ARP执行相同操作时: packet = Ether(dst=[MAC address])/ARP(...... 包裹没有发出。是因为ARP已经是第二层协议了吗?如果是这样的话,是否有可能手动更改ARP数据包的目标MAC?因此,您很好奇只需更改dst=?我的意思是,我把它作为硬编码字符串,但如果我提

使用python和Scapy,使用以下示例代码更改数据包的MAC地址目标没有问题:

packet = Ether(dst=[MAC address])/IP()......
但是,当我尝试像这样对ARP执行相同操作时:

packet = Ether(dst=[MAC address])/ARP(......

包裹没有发出。是因为ARP已经是第二层协议了吗?如果是这样的话,是否有可能手动更改ARP数据包的目标MAC?

因此,您很好奇只需更改
dst=
?我的意思是,我把它作为硬编码字符串,但如果我提取它们,我就看不出为什么它不能被全局更改。不过,我在get_mac_address调用中使用了它,因为我使用静态字符串来帮助确定目标ip地址“mac addr”。在进行arp中毒时,我将传入一个与tar ip地址相关的目标mac。我想你会希望它是一对合适的组合