有没有办法在Java应用程序中发送ARP请求?我知道ARP在TCP和UDP下是一层,因此默认情况下Java无法发送ARP请求。我只是想知道是否有任何第三方Java库允许您发送ARP请求。
为了捕获ARP回复,我知道我可以使用jpcap来解决部分问题。
由于
答案 0 :(得分:1)
Java应用程序总是可以执行一些外部命令,调用另一个工具来执行它。我不确定“标准java”是什么意思。
基于谷歌搜索,arping中的kraken pcap似乎是Java中的about Kraken。请参阅jpcap。
还有{{3}}用于此目的。
答案 1 :(得分:1)
正如您所说,Java标准库不提供足够低级别的网络API来发送ARP请求。
pcap4j
为libpcap / winpcap提供Java绑定,因此可用于发送ARP请求。有关图书馆的信息可以在homepage找到。有关如何发送ARP请求,请参阅this示例。
答案 2 :(得分:-1)
不,不是在本机Java中(我猜这是出于安全考虑)。虽然它确实需要使用C ++ / C本机代码库和JNI编程,但它可以完成。 https://forums.oracle.com/forums/thread.jspa?threadID=1690617