Foros del Web » Programación para mayores de 30 ;) » Java »

Equivalente a un ping

Estas en el tema de Equivalente a un ping en el foro de Java en Foros del Web. Hola a todos! He estado investigando acerca de como ejecutar un ping en java, pero he descubierto que java no tiene la capacidad de enviar ...
  #1 (permalink)  
Antiguo 28/01/2009, 16:58
 
Fecha de Ingreso: marzo-2008
Mensajes: 63
Antigüedad: 16 años, 2 meses
Puntos: 0
De acuerdo Equivalente a un ping

Hola a todos!

He estado investigando acerca de como ejecutar un ping en java, pero he descubierto que java no tiene la capacidad de enviar paquetes ICMP, por lo tanto la unica forma de ejecutar un ping es como un comando externo
Código:
Runtime r = Runtime.getRuntime();
Process p = null;
p = r.exec("ping 192.168.1.50");

BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = null;

while((line = input.readLine()) != null) 
{
    System.out.println(line);
}
alguno de ustedes conoce si hay alguna forma de saber si un host esta activo, en otras palabras utilizar algo similar a un ping y que devuelva si el equipo esta accesible o no, de ante mano gracias por sus respuestas.
  #2 (permalink)  
Antiguo 28/01/2009, 18:34
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Ubicación: por ahi!!!
Mensajes: 113
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Equivalente a un ping

fijate si te sirve algo asi.


public class TestInetAddress extends TestCase{

public void test(){
try {

// Get hostname by textual representation of IP address
InetAddress addr = InetAddress.getByName("java.sun.com");
// Get the host name
String hostname = addr.getHostName();
System.out.println(hostname);
// Get canonical host name
String canonicalhostname = addr.getCanonicalHostName();
System.out.println(canonicalhostname);
} catch (UnknownHostException e) {
}

}
  #3 (permalink)  
Antiguo 29/01/2009, 01:32
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: Equivalente a un ping

Aqui por ejemplo tienes dos formas de hacer algo parecido a un ping.

http://www.rgagnon.com/javadetails/java-0093.html

De todas formas hay que hacer notar que la ausencia de ping no indica que el host no esté o no esté en marcha, ya que muchos servidores lo tienen bloqueado.

Por ultimo, el código que muestra megajandro sólo comprueba que un nombre DNS esté definido, pero no dice nada sobre si el host está activo o no.

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.
  #4 (permalink)  
Antiguo 29/01/2009, 17:30
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Ubicación: por ahi!!!
Mensajes: 113
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Equivalente a un ping

es cierto solo faltaba esto
address.isReachable(3000).
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:14.