2014-05-13 31 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小時都沒有接聽電話。