Prüfen, ob URL erreichbar

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von Snickbrack.

    Prüfen, ob URL erreichbar

    Ausgelagert aus Prüfen, ob URL erreichbar

    Hallo erstmal, bin ein Neuer hier...
    habe ein ähnliches Problem:
    In meinem Fall sind es mehrere Webserver in einem Frontend-Backend-Szenario. (Also tausende User, die auf mehrere verteilte Frontend-Server zugreifen, die alle mit einem Backend-Server kommunizieren..)
    Auf allen Servern laufen Tomcats. Die Server mögen zwar erreichbar sein, aber die Tomcats eben mitunter nicht!
    Selbst die Abfrage, ob die dazugehörigen Dienste laufen, sagt noch nichts darüber aus, ob diese Server per http, oder https erreichbar sind!
    Der Ping-Befehl wird leider etwas überschätzt: Der kann bestenfalls darüber Auskunft geben, ob ein bestimmter Rechner erreichbar ist, aber keinesfalls etwas darüber, ob auf diesem Rechner ein bestimmter Dienst einen "Listener" auf einen bestimmten Port geöffnet hat!
    Zudem wird in vernünftig gehärteten Systemen das ICMP-Protokoll (zu dem der Ping-Befehl gehört) von so gut, wie allen Routern und Firewalls geblockt! Denn der kann sehr effektiv dazu missbraucht werden, angreifbare Rechner aufzufinden..
    Ein Ping sagt also erstmal gar nichts aus...
    Ein Telnet auf einen bestimmten Port hilft da jedoch mitunter schon weiter...
    Es geht hier also nicht darum ob ein Rechner verfügbar ist, sondern darum, ob ein ganz bestimmter Port auf diesem Rechner einen sogenannten "Listener" aufgemacht hat...
    Und da stehe ich gerade auch etwas auf dem Schlauch, wie ich in einem Programm auf die Schnelle erfassen kann, welcher meiner 90 Webserver gerade verfügbar ist, und welcher nicht, und das auch noch auf jeweils zwei unterschiedlichen Ports: Einmal auf Port 80, und einmal auf Port 8443.
    Port 80 ist http, Port 8443 ist https.
    So könnte ich z.B. erkennen, ob es ein Problem mit dem Zertifikat gibt: Auf Port 80 erreichbar, aber nicht auf Port 8443...

    Also etwas komplizierter das Ganze als es die Ping-Fraktion hier erklären will...

    Gruß Oreus

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Dann mach dir ein separates System auf den Rechnern das über PHP läuft und auf Anfrage die Verfügbarkeit der jeweiligen Dienste ausgibt.

    Alternativen:
    Sollte das Betriebssystem der Server Windows sein, so kannst du dir auch mal die WMI anschauen.

    Darüber kannst du laufende Prozesse und Anwendungen abgreifen und ausgeben. Wahrscheinlich auch die laufenden Ports und Bindings darauf.

    Sowas ähnliches gibt es auch für Linux-basierte Systeme: Hier