Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.
Scripts hosts activos, en linea.
Enviado por Andrés Bjou el día 13 de julio de 2005
Estoy haciendo un script que dados una serie de hosts, te diga si este host se encuentra online o en caso contrario offline, lo he estado haciendo con sockets, ya que ha sido la unica forma que se me ha ocurrido, pero no he conseguido llegar a nada, no me da siempre resultados correctos pero alguna vez ha funcionado correctamente :S
El script que llevo por el momento es este :
(Los datos de los hosts se encuentran en una matriz $maquinas que a su vez esta en el fichero datos.php por su larga extension)
solo que como yo solo verifico la conexion a un servidor la ip es estatica por eso te puse la variable $ip al principio pero no se si se puede insertar dentro del include.... yo digo que talvez si... el proceso se lleva unos pocos segundos y el include lleva un signo de @ para que no te marque error si el servidor no esta disponible, lo que quisiera hacer es poner un tiempo maximo de prueba de conexion pero no se como.. si lo haces me lo envias por correo o lo posteas
Una pregunta por que te vas por el puerto 580? no es mas facil verificar el puerto 80? ya que no todos tienen abierto los puertos y si hay un firewall te marcara que esta inactivo
Lo hago por el puerto 5800 porque es el puerto que utiliza un programa llamado VNC para conectarte a maquinas remotamente, .... la question es que todas las maquinas tienen el vnc instalado y consecuentemente el puerto abierto.
Por eso no me influira para nada probar con el 80.
Re: Re: Re: Re: Re: Scripts hosts activos, en linea.
Enviado por tgp el día 16 de julio de 2005
jejeje... la variable $i no la inicialice, ahora bien $array guarda los elementos devueltos por el ping... creo que no te sirven pero lo puse solo para que tuvieras la referencia y $ret guarda el valor de 1 o 0 dependiendo si esta activo o no el servidor... ahora bien la ventaja de usar ping es que no utiliza ningun puerto especifico solo prueba la conexion
/*La variable ip_new la tengo funcionando en una consulta de mysql si quieres la puedes cambiar por la ip que quieras*/
<?
$fp = fsockopen(\"tcp://$ip_new\", 5800, $errno, $errstr, 0.5);
if (!$fp)
echo \"<img src=\'imagenes/offline.gif\'><h4>$ip_new SIN LINEA</H4>\";
else {
echo \"<img src=\'imagenes/online.gif\'><H4>$ip_new EN LINEA</H4>\";
}
fclose($fp);
?>
La variable ip_new la tengo funcionando en una consulta de mysql si quieres la puedes cambiar por la ip que quieras
<?
$fp = fsockopen(\'tcp://$ip_new\', 5800, $errno, $errstr, 0.5);
if (!$fp)
echo \"<img src=\'imagenes/offline.gif\'><h4>$ip_new SIN LINEA</H4>\";
else {
echo \"<img src=\'imagenes/online.gif\'><H4>$ip_new EN LINEA</H4>\";
}
fclose($fp);
?>