2014-05-13 32 views
0

我正在使用InetAddress,并在尝试访问服务器时收到错误响应。服务器是当前的latop。以下是代码:Java InetAddress无法访问

public static void main(String[] args) { 
    InetAddress i = InetAddress.getByName("ip address of current machine"); 
    System.out.println(i.isReachable(0)); // prints false 
    System.out.println(i.getHostName()); 
} 

上面打印的是假的,然后是实际的主机名。如何检测主机名并且无法访问同一台机器。我究竟做错了什么?

+0

你是否尝试过非零超时以防万一? –

+0

是不是有点短暂的0超时? 1000(1秒)如何。另外,也许你的防火墙忽略了ICMP请求。 – nos

+0

是的。还是一样。 – user3189663

回答

0

主机名通过DNS解析。主持人不必为此工作。这就像电话簿。它至少每天24小时都会显示您的电话号码,即使您每天至少8小时都没有接听电话。