Rechner via PHP Pingen

Hier ein Script zum pingen (getestet unter Linux) eines Rechners. Hierbei ging es generell darum eine kleine Übersicht über Pools zu schaffen, bei der man auf einen Blick sieht, welche Rechner angeschalten sind und welche nicht.

Zusätzlich war noch geplant eine Abfrage per WMI zu machen um hier auch noch anzuzeigen, ob der Rechner belegt ist, oder nicht. Diese implementierung wird noch nachgeholt.

Prinzip:

Um dieses Script zu verwenden genügt es, die entsprechende php Datei im Tag als Source mit dem entsprechenden Rechnernamen (ohne suffix) anzugeben ( z.b. ).

Entsprechende Bilder die verwendet wurden sind im Anhang zu finden. Diese Bilder werden zur Laufzeit mit dem gewählten Font entsprechend mit dem angegebenen Rechnernamen beschriftet.

Vorsicht: Dieses script bedarf noch diverse Anpassungen (u.a. Security) um das Ausführen diverser Befehle auf einem evtl. unsicheren System zu vermeiden .

Anmerkung: Der WWW Benutzer muss natürlich über entsprechend Rechte verfügen das Programm “Ping” mit der Funktion “exec” auszuführen.

Datei: availability.php

$rechnername = strtoupper($_GET[“name”]);

$rechnername = addslashes($rechnername);

$address = gethostbyname($rechnername.".domainsuffix");

$command = “ping -c 1 -t 10 " . $address;

$r = exec($command);

if ($r[0]==“r”)

{

$socket = socket_create (AF_INET, SOCK_STREAM, 0);

if ($socket < 0)

{

$srcpic = “rechner.jpg”;

} else {

$srcpic = “rechner_on.jpg”;

}

}else{

$srcpic = “rechner.jpg”;

}

$img_handle = imagecreatefromjpeg($srcpic);

$font = ‘/path/to/FONT.ttf’;

$black = imagecolorallocate($img_handle, 0, 0, 0);

imagettftext($img_handle, 20, 0, 15, 62, $black, $font, $rechnername);

header (“Content-type: image/png”);

ImagePng($img_handle);

?>

Licensed under CC BY-NC-SA 4.0
Zuletzt aktualisiert am Apr 10, 2008 19:57 UTC
comments powered by Disqus
Developer / Inventor / Creator
Erstellt mit Hugo
Theme Stack gestaltet von Jimmy