在Java中ping IP地址时响应超时
下面是我用来ping IPv4地址和记录实际响应时间(毫秒)的方法。 不幸的是,我从未得到有效的答复。。请求总是超时。始终返回0。 请帮忙:)在Java中ping IP地址时响应超时,java,ip,ping,inetaddress,Java,Ip,Ping,Inetaddress,下面是我用来ping IPv4地址和记录实际响应时间(毫秒)的方法。 不幸的是,我从未得到有效的答复。。请求总是超时。始终返回0。 请帮忙:) 用Java创建一个进程并在其中执行ping命令。已知isReachable方法不起作用 有关更多详细信息和代码示例,请参见答案。您是否尝试过 isReachable(网络接口netif、int-ttl、int-timeout) 测试该地址是否可访问 您的生存时间可能很短,因此连接永远无法到达目的地。请尝试在操作系统外壳中执行ping操作。远程主机上的防火
用Java创建一个进程并在其中执行ping命令。已知
isReachable
方法不起作用
有关更多详细信息和代码示例,请参见答案。您是否尝试过
isReachable(网络接口netif、int-ttl、int-timeout)
测试该地址是否可访问
您的生存时间可能很短,因此连接永远无法到达目的地。请尝试在操作系统外壳中执行ping操作。远程主机上的防火墙可能会阻止ping。通过cmd ping可以工作。这两种方法的可能重复都没有帮助我。I ping-an IP地址不是URL。即使有25跳,它也不会成为真的。
private long pingHost(String host, int port) {
try {
Inet4Address inet4 = (Inet4Address)InetAddress.getByName(host);
long start = System.currentTimeMillis();
if(inet4.isReachable(5000)){
long end = System.currentTimeMillis();
long total = end-start;
System.out.println(total);
return total;
}
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return 0;
}