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

Mic*_*idt 5 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!");
    }
}
Run Code Online (Sandbox Code Playgroud)

hosts是一个String[]完整的URL来测试.当我运行它时,一些URL会出现" ......无法访问! ",有时会出现" ......未知 ".

但这两者有什么区别?无法
访问 - > 5秒后没有应答ping
未知 - >没有主机发现ping

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

chr*_*ke- 11

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

无法访问意味着它有一个IP并尝试联系但失败(由于超时或因为它收到了目标无法访问的消息).