如何在Windows上通过python发送ARP数据包而不需要winpcap?

时间:2008-12-28 04:52:55

标签: python sockets ethernet arp

有没有办法在不使用winpcap等其他库的情况下在Windows上发送ARP数据包?

我听说Windows XP SP2会阻止原始以太网套接字,但我也听说过只有管理员才会阻止原始套接字。这里有任何澄清吗?

2 个答案:

答案 0 :(得分:3)

如果不使用外部库,一般情况下无法做到这一点。

如果对数据包应包含的内容没有要求(即,如果有任何ARP数据包),那么可以显然发送ARP请求,如果您只是通过尝试在以太网上向您自己子网上的任何IP发送内容(通过运行外部arp -d tar.get.ip.address命令事先确保目标IP不在ARP缓存中),但这可能不是您想要的。

有关原始套接字支持的详细信息,请参阅TCP/IP Raw Sockets MSDN page,特别是Limitations on Raw Sockets部分。

答案 1 :(得分:0)

您可以使用OpenVPN点击发送任意数据包,就像使用原始套接字一样。