java - "is not reachable"和 "unknown host"之间的区别

标签 java url ping

我有一个小的 java 代码来测试一堆无法访问的主机。
重要的部分是:

for (String host : hosts) {
    try {
        if (!InetAddress.getByName(host).isReachable(5000)) {
            System.err.println(host + " is not reachable!");
        }
    } catch (UnknownHostException e) {
        System.err.println(host + " is unknown");
    } catch (IOException e) {
        System.err.println(host + "throws IOException!");
    }
}

hosts 是一个 String[] - 包含要测试的 URL 的数组。当我运行它时,某些 URL 会出现“... 无法访问!”,有时会出现“... 未知”。

但这两者有什么区别呢?
无法访问 -> ping 5 秒后无应答
未知 -> 找不到要 ping 的主机

这些只是我的想法,我无法在谷歌中找到任何确认或改进。

最佳答案

未知主机 意味着它无法解析 DNS 条目,因此它不知道要联系哪个 IP 地址。

不可访问 表示它有一个 IP 并尝试联系它但失败了(因为超时或因为它收到了 destination unreachable 消息)。

关于java - "is not reachable"和 "unknown host"之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18782278/

相关文章:

java - 使用 JAVA (MULE) 访问有效负载

java - Spring Integration + 过滤器 + 向 REST Controller 发送 400 错误请求

c# - ASP .NET Web 应用程序 URL 中的随机数

url - 双斜杠 URL 样式在哪里合法? ( "//connect.facebook.net")

c++ - 从 C++ 代码检查互联网连接

java - Ping 以检查与域的连接

java - 如何阻止 jackson 的 YAML 编写器引用值

java - 退出一个线程将关闭所有线程

javascript - 如何在 javascript 中编码/解码 URL 参数?

Openshift 4 ping 到另一个 Pod 不起作用