QUOTE (G.P. @ So 30.12.2007, 19:50)Ich moechte auf einen externen Server ein Skript laufen lassen, welches ueberprueft ob bestimmte Nutzer mit einer bestimmen IP Online sind (also mit dem Internet verbunden sind)
Wenn die Nutzer entweder den Dienst nicht laufen haben (also überhaupt nicht auf Ping reagieren) oder eine Firewall nutzen, die das unterbindet, dann geht das nicht.
In heutigen Zeiten kommt noch dazu: Wenn jemand einen Router (bsp. in Kombination mit DSL 16.000) nutzt, dann fängt das in der Regel bereits der Router ab, das Ping-Paket kommt gar nicht bis zum Rechner.
Ich habe aktuell die IP 87.162.99.63 (ändert sich in der Nacht), Web- und Datenbankserver haben die IPs 80.237.183.228 bzw. 80.237.183.226.
Wenn ich vom Webserver her meine aktuelle IP anpinge, kommt eine Zeitüberschreitung, ebenso umgekehrt von meinem PC auf Web- bzw. DbServer, trotzdem läuft auf dem Webserver der Http-Dienst und ist erreichbar (siehe Link unten Online-Kalender).
Pingt einfach einmal die drei Nummern an - es geht nicht, wenn ich es nicht explizit zulasse. Der Webserver kann natürlich den DbServer anpingen und umgekehrt - die Dienste laufen.
Und einen Dienst, der - analog zum Http-Dienst - auf jedem Rechner läuft und von außen her zugänglich ist, so daß man diesen per Telnet abfragen könnte, den gibt es glücklicherweise nicht.
Wenn sich die Nutzer einloggen müssen, kannst Du allerdings diesen Status in der Db speichern und ausgeben. Nach einer halben Stunde Inaktivität oder einer expliziten Abmeldung gilt dann der Nutzer als offline, genauer geht das auf diesem Level nicht.