“无法访问”和“未知主机”之间的区别

时间:2013-09-13 09:00:23

标签: 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出现“ ...无法访问!”,有时会出现“ ...未知”。

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

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

2 个答案:

答案 0 :(得分:11)

未知主机表示无法解析DNS条目,因此无法知道要联系的IP地址。

无法访问表示它有一个IP并尝试联系但失败(由于超时或收到destination unreachable消息)。

答案 1 :(得分:3)

未知主机 - 没有足够的信息可以与主机联系/它不知道要联系的主机
无法访问 - 有足够的信息可以与主机联系,但由于某种原因(网络错误,超时主机没有按时响应,权限问题等),联系方式没有发生。