Ich versuche, einen Host und haben den folgenden Codebeste Alternative für InetAddress.getByName (Host) .isReachable (Timeout)
if(!InetAddress.getByName(host).isReachable(TIMEOUT)){
throw new Exception("Host does not exist::"+ hostname);
}
Der Hostname ich in der Lage zu erreichen, bin aus den Fenstern pingen, und haben auch eine tracert darauf und es gibt alle Pakete zurück. Aber Java verwirft die Ausnahme "Host existiert nicht ::";
Der Timeout-Wert, den ich experimentierte von 2000ms, bis 5000ms. Ich habe auch 3000 probiert. Was ist die Ursache für dieses Problem, das ich nicht verstehen kann? Ich recherchierte im Internet und einige sagen, dass InetAddress.getByName (Host) .isReachable (Zeit) ist nicht zuverlässig und verhält sich entsprechend dem internen System.
Was ist die beste Alternative für das, wenn dies wahr ist. Bitte vorschlagen.
Der Host, mit dem ich teste, ist erreichbar und ich kann es in Windows anpingen. –