gpt4 book ai didi

java - 如何检查主机是否无法访问?

转载 作者:行者123 更新时间:2023-12-02 08:01:49 25 4
gpt4 key购买 nike

我正在尝试获取 ping 主机无法访问的情况,因为我分别只获得向上和向下的 (0,1) 值,我如何获得告诉我无法访问 ping 主机的任何条件“2”?

我的代码,

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

统计列描述。我想得到这个结果,因为我已经发布了我的代码,那么我如何获得该列“状态”?请记住,我正在对“n”个主机使用循环。

最佳答案

"Up" means host pinged "down" means tried to ping but fail because sys is off and "unreachable" means that it tried to ping but connection did not completed so that it would tell either the pinged host is "up" or "down"!

从技术角度来看,这没有任何意义,我怀疑这意味着您尝试做的事情也没有任何意义。

郑重声明:

  • Ping 不涉及建立连接。这是一个简单的请求和响应。发生的情况是发送 ICMP Echo Request 数据包,然后您等待几秒钟以查看是否收到 ICMP Echo Reply 数据包。

  • 如果数据包无法路由,您还可能会收到 ICMP 网络不可达或 ICMP 主机不可达的消息。

  • 你也可能什么也得不到。您无法可靠地区分“系统已损坏/关闭”、“数据包被网络丢失”、“数据包被过滤掉”和“系统不存在”。在某些情况下,这些都会给您...没有回复。

  • 如今,对 ping 的响应(或无响应)通常是由于防火墙阻止不需要的流量等原因造成的。

所以这一切意味着不可能可靠地区分“down”和“unreachable”......即使您可以提供具有技术意义的区别解释。

我们还没有讨论有多少信息返回到 Java 应用程序。

关于java - 如何检查主机是否无法访问?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8799040/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com