1

我正在使用 C 语言开发嵌入式 linux 系统,我正在寻找 Windows 中 SendARP 等价物的源代码。任何指针?

4

3 回答 3

3

看看arping。发送 arp 的快速而肮脏的方法是:


foo = system("/somepath/arping somehost");

但是通过arping源查看应该能够为您提供更好的解决方案。

不过,对于全面解决方案,您可以手动构建自己的解决方案,并使用原始套接字或libpcap发送它。


顺便提一句。如果您想要做的只是强制发送一个 arp(但必须来自您),您可以通过删除您已经为您的主机拥有的任何 arp 条目来实现这一点。对该地址的下一次访问将需要发送一个 arp。

例如。/usr/sbin/arp -d 目的地主机IP

于 2008-09-26T02:18:47.443 回答
0

这可能很有趣:http ://cvs.linux-ha.org/viewcvs/viewcvs.cgi/linux-ha/resources/heartbeat/SendArp.in?rev=1.4

它是 Bourne Shell 脚本中的一个实现。

于 2008-09-25T22:06:43.880 回答
0

我从未见过任何专门针对 ARP 的东西,但我认为您可以使用libpcap和适当的 RFC 发送任何类型的数据包。

于 2008-09-25T22:09:41.923 回答