Ich möchte eine Website entwickeln welche mehrere PC's anpingt und deren Status bestimmt, ob sie Online sind oder nicht.
Ebenfalls sollte man neue PC's über die Website hinzufügen können.
Welche Programmiersprache wäre die geeignetste hierfür?
Wie kann ich einen Ping befehl auslesen, sodass der Wert den Status auf Online/Offline setzt?
Wie soll die Funktion aussehen einen neuen PC hinzuzufügen, meine Idee wäre nur über die MAC-Adresse
Ich hoffe du bist dir über die Topologie des Internets im Klaren, ansonsten wird dieses Projekt eine ziemliche Enttäuschung für dich.
Für und brauchst du raw sockets. , , , , ... gibt viele die das können. Alternativ kannst du auch einfach das ping-programm vom Betriebssystem ausführen (siehe z.B. PHP , , ). Dann musst du dich nicht um Netzwerkkram kümmern.
Wenn du den PC anhand der MAC hinzufügen willst, brauchst du ARP. Ansonsten kommst du nicht an die IP.
Mein Tipp: Führ erstmal den Ping Befehl aus und werte die Ausgabe aus.
Geheimtipp: ExitCode / ErrorLevel
Ich hoffe du bist dir über die Topologie des Internets im Klaren, ansonsten wird dieses Projekt eine ziemliche Enttäuschung für dich.
Für und brauchst du raw sockets. , , , , ... gibt viele die das können. Alternativ kannst du auch einfach das ping-programm vom Betriebssystem ausführen (siehe z.B. PHP , , ). Dann musst du dich nicht um Netzwerkkram kümmern.
Wenn du den PC anhand der MAC hinzufügen willst, brauchst du ARP. Ansonsten kommst du nicht an die IP.
Mein Tipp: Führ erstmal den Ping Befehl aus und werte die Ausgabe aus.
Geheimtipp: ExitCode / ErrorLevel
Ich dachte mir das es gut realisierbar wäre mit einem Backend das die PC's anpingt und ein HTML Frontend das es anzeigt.
Geht es hier nicht größtenteils nur um den Rückgabewert des Pings den ich auslesen muss und mit einer If/else die den Status auf Grün/Rot setzt?
Front und Backend trennen ist auf jeden Fall eine gute Idee. Jenachdem wie viele Hosts du hast dauert das natürlich zu laden.
Und ja, im Endeffekt gehts nur um das Auswerten des Pings. Im Hintergrund noch irgendwas Datenbankähnliches und dann nen Cronjob der zyklisch IPs anpingt.
Das Problem mit den MAC-Addressen ist halt, das diese an Routern "verloren" gehen. Sobald ein Router dazwischen ist, siehst du die MAC-Adresse des PCs nicht mehr und hast auch keine (wenig) Chancen damit noch was sinnvolles anzufangen. Eine MAC kann man auch nicht wirklich pingen. Zumindest gibts kein Tool dafür. Mit arp -a kommst du an die ARP-Table, da müssen aber nicht zwingend alle MACs drinstehen.
Theoretisch könntet ihr auch ein Monitoringtool wie Nagios oder Zabbix einsetzen. Das macht genau das was du entwickeln möchtest (und noch viel mehr). Wenns nur um Ping geht ists natürlich overkill. Aber wenn ihr plant evtl. noch andere Sachen zu monitoren wäre das mal einen Gedanken wert.
Front und Backend trennen ist auf jeden Fall eine gute Idee. Jenachdem wie viele Hosts du hast dauert das natürlich zu laden.
Und ja, im Endeffekt gehts nur um das Auswerten des Pings. Im Hintergrund noch irgendwas Datenbankähnliches und dann nen Cronjob der zyklisch IPs anpingt.
Das Problem mit den MAC-Addressen ist halt, das diese an Routern "verloren" gehen. Sobald ein Router dazwischen ist, siehst du die MAC-Adresse des PCs nicht mehr und hast auch keine (wenig) Chancen damit noch was sinnvolles anzufangen. Eine MAC kann man auch nicht wirklich pingen. Zumindest gibts kein Tool dafür. Mit arp -a kommst du an die ARP-Table, da müssen aber nicht zwingend alle MACs drinstehen.
Theoretisch könntet ihr auch ein Monitoringtool wie Nagios oder Zabbix einsetzen. Das macht genau das was du entwickeln möchtest (und noch viel mehr). Wenns nur um Ping geht ists natürlich overkill. Aber wenn ihr plant evtl. noch andere Sachen zu monitoren wäre das mal einen Gedanken wert.
Ich hab jetzt mal ganz billig ne .bat geschrieben welche die Rechner(Haben feste namen im System) anpingt und in eine .log datei schreibt.
Eine Website welche per Button das Script ausführt und die werte aus der Log datei grafisch darstellt wäre jetzt meine Idee dazu
Ich hab jetzt mal ganz billig ne .bat geschrieben welche die Rechner(Haben feste namen im System) anpingt und in eine .log datei schreibt.
Eine Website welche per Button das Script ausführt und die werte aus der Log datei grafisch darstellt wäre jetzt meine Idee dazu
Theoretisch kannst du die bat datei auch einfach zyklisch ausführen und damit die Webseite generieren. Am Besten in ne temporäre Datei und sobald es fertig ist die "live"-Datei austauschen.
Keine Ahnung wie viel Interaktion ihr wollt. Für nen einfachen Online/Offline anzeiger reichts.
Ich hab jetzt die Website fertig vom design her fertig gebaut..
Jetzt fehlt nur noch das beim Websiten aufruf ein script ausgeführt und das logfile eingelesen wird, was die Tabelle dynamisch erzeugen soll.
Wie soll ich das am besten anstellen?
Ich würde mir da keine unnötige Arbeit machen (parsen, cronjob und co), einfach eine vorhandene Lib nehmen z.B.
Dann kannst du beim aufrufen deiner Seite leicht ein ping an die Hosts senden z.B.
PHP Code:
$ping = new Ping("DEINE IP");
$latency = $ping->ping();
Wenn das ganze aktuell sein soll, sprich sich aktualisieren soll verfrachtest du das ganze in ein Script und dieses Script rufst du alle X Sekunden/Minuten via Ajax auf.
[Buying] &&&&&&&&&KAUFE STEAM ACCOUNT! &&&&&&&&& 06/07/2013 - Trading - 1 Replies Hallo, bin nicht hier um groß zu traden,sondern möchte einen Steam Account kaufen.
Fakten:
Biete maximal 60€ PaySafeCard
Es sollten viele kleine Spiele sowie COD enthalten sein
COD 7-9 sind Pflicht!
Kein VAC/TAC/Valve o.Ä Bann!
&&&&&&&&&KAUFE STEAM ACCOUNT! &&&&&&&&& 06/07/2013 - elite*gold Trading - 0 Replies Hallo, bin nicht hier um groß zu traden,sondern möchte einen Steam Account kaufen.
Fakten:
Biete maximal 60€ PaySafeCard oder kann es auch zu egold machen
Es sollten viele kleine Spiele sowie COD enthalten sein
COD 7-9 sind Pflicht!
Kein VAC/TAC/Valve o.Ä Bann!
[Buying] &&&&&&&&&KAUFE STEAM ACCOUNT! &&&&&&&&& 06/07/2013 - Steam Trading - 0 Replies Hallo, bin nicht hier um groß zu traden,sondern möchte einen Steam Account kaufen.
Fakten:
Biete maximal 60€ PaySafeCard
Es sollten viele kleine Spiele sowie COD enthalten sein
COD 7-9 sind Pflicht!
Kein VAC/TAC/Valve o.Ä Bann!