【发布时间】:2012-01-10 05:41:20
【问题描述】:
我正在尝试获取 ping 主机的不可达条件,因为我分别获得了 up 和 down 的 (0,1) 值,我将如何获得任何条件“2”,它告诉我不可达 ping 主机?
我的代码,
import java.net.InetAddress;
public class PingExample
{
public static void main(String[] args)
{
try
{
InetAddress address = InetAddress.getByName("172.16.2.0");
// Try to reach the specified address within the timeout
// periode. If during this periode the address cannot be
// reach then the method returns false.
boolean reachable = address.isReachable(10000);
System.out.println("Is host reachable? " + reachable);
} catch (Exception e)
{
e.printStackTrace();
}
}
}
什么是主动和被动状态?如何查看?
编辑:参见此链接第 26 页 http://nagios.sourceforge.net/docs/ndoutils/NDOUtils_DB_Model.pdf
stat 列描述。我想得到这个结果,因为我已经发布了我的代码,那么我将如何获得该列“状态”?请记住,我正在为“n”个主机使用循环。
【问题讨论】:
-
我无法理解你的问题。
-
@STephen 我可以通过我的这段代码启动或关闭我怎么知道主机无法访问??
-
你对我来说仍然没有意义。您问题中的代码测试是否可以访问主机。请仔细阅读
InetAddress.isReachable()方法的javadoc ...。 -
@Stephen 是的,我正在按照您上面所说的那样做,但主要是任何一个主机都可以访问或不可以访问,所以我可以使用这两个条件来显示任何一个主机都会启动或关闭怎么样主机无法访问我将如何显示该主机无法访问??
标签: java networking ping icmp