Der beste Weg, um festzustellen, ob ein bestimmter Remote-Service aktiv ist, besteht darin, ihn zu bitten, eine Anfrage so zu bearbeiten, wie es beabsichtigt ist. Tatsächlich ist dies der einzige Weg, um wirklich zu wissen, dass etwas richtig funktioniert.
Als Beispiel fordere ich meine Load-Balancer immer auf, eine tatsächliche Antwort von unseren Webservern zu erhalten. Sie könnten dasselbe für eine kleine Auswahl an einer DB-Box tun, wenn Sie möchten oder was auch immer Ihr tatsächlicher Server bedient. Als Tipp können Sie eine 'online.txt' (oder einen beliebigen Namen, den Sie vergeben möchten) auf Ihren Webservern erstellen. Lassen Sie Ihre LBs versuchen, diese Datei abzurufen. Wenn dies fehlschlägt, wird der Server vom VIP entfernt Eine gute Möglichkeit, einzelne Server manuell aus Ihren VIPs zu entfernen, indem Sie einfach eine einzelne Datei umbenennen.
Ping testet nur die Fähigkeit, auf Pings zu antworten. Das ist also das Basisbetriebssystem, Teile des IP-Stacks und die physischen Links - aber das ist alles, alles andere könnte ausgefallen sein und Sie wissen es nicht.
Ich weiß, dass dies unten erwähnt wird, aber es lohnt sich, es immer wieder zu wiederholen.
ICMP-Echoanforderungen (auch bekannt als "Pings") (auch bekannt als ICMP-Typ 8) basieren auf der IP-Stack-Spezifikation, müssen jedoch weder implementiert noch verwendet werden. Tatsächlich gibt es eine große Anzahl von Internetanbietern, die sich weigern, diese weiterzuleiten, und diese Anforderungen stillschweigend ablehnen, da es sich um eine Form von Netzwerkangriffen handelt (sogenannte Pingfloods).
Wie oben erwähnt, wird dies vom Betriebssystem (speziell auf Netzwerkstapelebene) behandelt, und es liegt daher an der Betriebssystemkonfiguration, auf diese zu reagieren oder nicht. Wenn dies deaktiviert ist (aus Sicherheitsgründen?), Können Sie keine Ping-Antworten vom anderen Ende empfangen. Deshalb ist es nicht zuverlässig.