我正在尝试 ping LAN 网络上的计算机列表(地址存储在列表中)
while(listIterator.hasNext())
{
// listIterator.next() will give address for each computer
boolean bool = inetAddress.isReachable(timeout);
}
对于每次迭代,我只能 ping 一台计算机,其余的给出 false(所有计算机都在 LAN 上启动并运行)。 任何人都可以提出一个问题或有效的方法来做到这一点吗?
最佳答案
你在Linux上运行吗?如果是这样,只有当您以 root 身份运行时,它才会真正起作用,因为发送“ping”需要 root 权限(真正的 ping 命令被设置为以 root 身份有效运行)。
尽管听起来很糟糕,但最好的选择可能是生成“ping”命令并查看其退出代码。
关于java - isReachable 给出奇怪的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7767781/