Erreichbarkeit der Endgeräte prüfen und auswerten.

Hallo,

ich habe beschäftige mich seit einigen Tagen mit IP-Symcon. Mein Ziel ist es, mehrere Allnet ALL3075V2 zu schalten und die Stromaufnahme zu überwachen. Da sich die Netzwerksteckdosen an anderen Orten befinden, spreche ich Sie über DynDNS und Ports an. Das klappt auch alles super.

Jetzt würde ich aber in der Visualisierung gerne noch die Erreichbarkeit jeder Netzwerksteckdose anzeigen lassen.
Meine Idee wäre jetzt, dass ich einen Ping auf die Dose ausführe und das Ergebnis mit Schaltflächen („grün“ online) oder („rot“ offline) darstelle. Nur leider hapert es an der Umsetzung.

Hätte jemand eine Idee, wie ich an das Problem herantreten kann oder vllt. auch ein paar Zeilen Code?

Mit freundlichen Grüßen

Micha

Schau mal hier: http://www.ip-symcon.de/forum/threads/21651-(W)LAN-Watch-Dog?highlight=*Sys_Ping* :slight_smile:

paresy

Danke für die schnelle Antwort.

Leider komme ich damit noch nicht so wirklich zurecht. Ich habe es aber dennoch geschaft einen funktionierenden Code zusammen zu basteln. Bin mir aber nicht sicher, ob der wirklich zuverlässig funktioniert.

<?


function ping($host, $port, $timeout)
{
  $tB = microtime(true);
  $fP = fSockOpen($host, $port, $errno, $errstr, $timeout);
#  if (!$fP) { return "down"; }
  $tA = microtime(true);
  return round((($tA - $tB) * 1000), 0)." ms";
}
#
#//Echoing it will display the ping if the host is up, if not it'll say "down".
$ergebnis = ping("192.168.1.189", 80, 2);

#echo $ergebnis;

# $ergebnis ist der Pingwert in ms

if ($ergebnis < 190) {
SetValueBoolean(13853 /*[Köthen\Koethen_Weiß\Erreichbarkeit]*/  , true);
} else {
SetValueBoolean(13853 /*[Köthen\Koethen_Weiß\Erreichbarkeit]*/  , false);
}

?>

Hallo
Willst du wirklich den Port 80 ( Webinterface ) abfragen ob der antwortet?
Oder nur ein Ping ?
Ich wuerde es mit IPS-Bordmittel ( IPS_Ping ) machen.

	$ip = '192.168.10.8';
	$timeout = 1000;
	
	$ok = Sys_Ping($ip,$timeout);
	
	if ( $ok )
	   echo "Teilnehmer erreichbar";
	else
	   echo "Teilnehmer nicht erreichbar";

http://www.ip-symcon.de/service/dokumentation/modulreferenz/system-informationen/sys-ping/

Das mit dem Port ist eigentlich nicht blöd weil ein Endgerät durchaus noch auf einen Ping antworten kann obwohl ein Dienst nicht mehr funktioniert.

Geb dir Recht.

Das mit Port 80 war auch nur für einen internen kleinen Test.

Ich spreche die zu überwachenden Netzwerksteckdosen über andere Ports an. Und somit kann ich jetzt auch mehrere Dosen hinter einem Router über das Internet anpingen :smiley: