Failover via PRTG überwachen



  • Hallo zusammen

    Folgendes Problem habe ich und trotz Internetsuche habe ich keine Lösung gefunden.

    Folgende Umgebung habe ich:

    • Hauptsitz: pfSense mit OpenVPN-Server und mehreren WAN-Anschlüssen
    • Filiale: pfSense mit OpenVPN-Client und einem WAN-Anschluss und als Fallback ein LTE-Router

    Ich überwache mittels PRTG den VPN-Tunnel, in dem ich die Firewall in der Filiale anpinge.
    Nun habe ich ein Problem in einer Filiale, dass sich dort immer wieder der WAN-Anschluss verabschiedet und die Verbindung über das LTE stattfindet.

    Nun würde ich gerne im PRTG den LTE-Anschluss überwachen, dass heisst sobald der Gateway über den LTE geht soll er mir einen Alarm auslösen.
    Wie löse ich dies am besten?

    Grüsse
    ALCA74


  • LAYER 8 Moderator

    Frage dazu:

    • Wie schaltet die Filiale von WAN normal auf LTE um? Failover Gateway?
    • Ist der OVPN Tunnel (Client vermutlich) dann auch auf das FO Gateway konfiguriert, dass er dann die Verbindung wieder aufbaut via LTE?
    • Kannst du in PRTG sowas wie "custom checks" à la Icinga/Nagios bauen - also was Sinnvolles in Skriptform o.ä. was nicht nur ein stumpfer Ping ist?

    Gruß



  • Ich gehe davon aus, dass der Failover ausgelöst wird, wenn die WAN-Internetverbindung nicht mehr zur Verfügung steht. Eine Möglichkeit wäre es die IP des Routers zu pingen. Kommt hier keine Antwort, wir der Traffic ja über die Backup-Lösung laufen.
    Der Sensor Remote-Ping käme dafür in Frage.

    VG,
    Michael


  • LAYER 8 Moderator

    @Michael-at-Paessler said in Failover via PRTG überwachen:

    Ich gehe davon aus, dass der Failover ausgelöst wird, wenn die WAN-Internetverbindung nicht mehr zur Verfügung steht. Eine Möglichkeit wäre es die IP des Routers zu pingen. Kommt hier keine Antwort, wir der Traffic ja über die Backup-Lösung laufen.
    Der Sensor Remote-Ping käme dafür in Frage.

    VG,
    Michael

    Oh das PRTG-Team selbst liest mit? ;)

    Meine Frage zielte in eine etwas andere Richtung ab. Es wäre je nach Umsetzung des Tunnels nicht so schwer, den Status auszulesen. Wenn der Tunnel vom Client normalerweise via einer bestimmten statischen IP aufgebaut wird, dann könnte man einen Check selbst bauen/scripten, der ausliest, mit welcher Remote IP der Client auf Serverseite ankommt. Diese Info ist ja auf der OpenVPN Status Seite schon erkennbar. Man bräuchte somit lediglich ein kleines Skript auf Serverseite à la

    "Wenn Client-IP != 'feste-IP' Dann gib aus 'Warnung: Verbindung via <IP>, Tunnel via LTE aufgebaut!'"

    Wenn der Client natürlich mit dynamischer IP kommt, klappt das nicht, dann könnte man statt dessen den Status des Gateways auf Clientseite abfragen. Nur was genau man sinnvoll nutzen kann, dazu kommt es darauf an, wie die Clientseite aufgebaut/konfiguriert ist und was an Leitung (statische IP etc.) zur Verfügung steht. Natürlich könnte man - je nachdem wie WAN angebunden ist und ob es eine statische IP ist - auch mit Remote-IP die WAN Seite der pfSense pingen, wie @Michael-at-Paessler meint, allerdings klappt das nur semi-gut, wenn bspw. vor der pfSense noch ein anderer Router im Spiel ist. Eine Idee ist es aber auf alle Fälle!

    Wie gesagt, das "wie" steht und fällt mit dem "was haben wir denn alles?" ;)



  • @JeGr said in Failover via PRTG überwachen:

    @Michael-at-Paessler said in Failover via PRTG überwachen:

    Ich gehe davon aus, dass der Failover ausgelöst wird, wenn die WAN-Internetverbindung nicht mehr zur Verfügung steht. Eine Möglichkeit wäre es die IP des Routers zu pingen. Kommt hier keine Antwort, wir der Traffic ja über die Backup-Lösung laufen.
    Der Sensor Remote-Ping käme dafür in Frage.

    VG,
    Michael

    Oh das PRTG-Team selbst liest mit? ;)

    Meine Frage zielte in eine etwas andere Richtung ab. Es wäre je nach Umsetzung des Tunnels nicht so schwer, den Status auszulesen. Wenn der Tunnel vom Client normalerweise via einer bestimmten statischen IP aufgebaut wird, dann könnte man einen Check selbst bauen/scripten, der ausliest, mit welcher Remote IP der Client auf Serverseite ankommt. Diese Info ist ja auf der OpenVPN Status Seite schon erkennbar. Man bräuchte somit lediglich ein kleines Skript auf Serverseite à la

    "Wenn Client-IP != 'feste-IP' Dann gib aus 'Warnung: Verbindung via <IP>, Tunnel via LTE aufgebaut!'"

    Wenn der Client natürlich mit dynamischer IP kommt, klappt das nicht, dann könnte man statt dessen den Status des Gateways auf Clientseite abfragen. Nur was genau man sinnvoll nutzen kann, dazu kommt es darauf an, wie die Clientseite aufgebaut/konfiguriert ist und was an Leitung (statische IP etc.) zur Verfügung steht. Natürlich könnte man - je nachdem wie WAN angebunden ist und ob es eine statische IP ist - auch mit Remote-IP die WAN Seite der pfSense pingen, wie @Michael-at-Paessler meint, allerdings klappt das nur semi-gut, wenn bspw. vor der pfSense noch ein anderer Router im Spiel ist. Eine Idee ist es aber auf alle Fälle!

    Wie gesagt, das "wie" steht und fällt mit dem "was haben wir denn alles?" ;)

    Ich habe auch nur vermutet, wie die Lösung aussehen könnte. Bekanntermaßen führen ja viele Wege zum gewünschten Ziel.
    Ich kenne dieses Problem noch aus meiner Vergangenheit und konnte es mit dem Remote-Ping-Sensor auf einfache Art lösen.
    Gerne hilft auch unser support@paessler.com team weiter!

    Viele Grüße,
    Michael



  • Hallo zusammen

    Besten Dank für die Antworten bis jetzt.
    Anbei die gewünschten Informationen:
    WAN-Anschluss und LTE haben beide keine statische IP.
    WAN-Anschluss ist als Tier1 konfiguriert und der LTE als Tier2.
    Es gibt eine Gateway Gruppe, wo beide Gateways eingetragen sind und der Trigger Level ist "Paketverlust oder Hohe Latenzzeit".
    Der VPN-Tunnel ist auf der Filialseite beim Interface auf die Gateway Gruppe eingestellt.
    Bei unseren Test ist der VPN-Tunnel immer oben geblieben, wenn ein Wechsel von WAN zu LTE oder umgekehrt stattgefunden hat.

    Ich hoffe ich habe alle offenen Punkte angesprochen.
    Liebe Grüsse
    ALCA74


  • LAYER 8 Moderator

    Okay, dann klappt es mit einem simplen Ping wohl nicht so einfach, da die IP fehlt. Check gegen definierte IP fällt auch raus, weil sich beide IPs ändern können.
    Hmm...

    Eventuell wäre es eine Möglichkeit, einfach die Gateway-Status von den beiden Lines (vllt. mit SNMP) zu prüfen. Also ob bspw. GW_WAN noch erreichbar ist oder down, wie das GW_LTE aussieht etc. Also prinzipiell sowas wie Status>Gateway in PRTG abzubilden, damit man sieht "Aha, bei Remote Standort #1 ist GW_WAN down, Tunnel läuft damit auf LTE - meh!" ;)

    Kann man bspw. relativ einfach abfragen, indem man direkt die dpinger Sockets der Gateways mit simplem 'cat' abfragt. Bspw.

    cat /var/run/dpinger_GW_WAN~<someIP>.sock

    Dort stehen dann der Name des GWs, die ms für RTT und RTTsd sowie an dritter Stelle der Loss des GWs. Alles >0 ist dann ein Problem bzw. bei 100 der garantierte Totalausfall. Kann man somit auch ganz gut monitoren, wann das anfing und wie lang es dauert (oder auch wenn die Leitung generell mal Paketverluste hat)



  • Mein Vorschlag wäre es auch gewesen, dann direkt am GW anzusetzen. Wer ist denn der Hersteller des Gateways?

    Gibt es eventuell MIB Files die eingesetzt werden können? Oder vielleicht sogar schon fertige Sensoren wie zum Beispiel für Cisco devices?

    VG,
    Michael



  • Hier mal ein Ansatz (nicht getestet).

    Die Filiale baut 2 Tunnels mit dem Server auf.
    1 X WAN
    1 X LTE

    Auf dem Server konfiguriere "Client Specific Overrides" und vergebe eine "Statische IP" fuer jeweils WAN & LTE VPN Client.

    https://wpcomputersolutions.com/pfsense-set-static-ip-specific-openvpn-client/

    Ping diese IP's mit PRTG. (nicht die public IPs, sondern die private VPN client IP's)

    Failover wird dann fuer die 2 VPN tunnel konfiguriert ( nicht LTE & WAN).



  • Hallo zusammen

    Hatte in der letzten Woche sehr viel um die Ohren und kam deshalb nicht zum weiterforschen und testen.
    Die pfSensse läuft auf einem "apu4c2" (Produktelink).

    Was mir auch aufegefallen ist, wenn der WAN-Anschluss down ist, wird der Gateway sofort auf LTE umgestellt. Wenn dann der WAN-Anschluss wieder da ist, schaltet er nicht sofort zurück oder er bleibt auch auf dem LTE.

    Liebe Grüsse
    ALCA74



  • Hallo zusammen

    Ich bräuchte nochmals Eure Hilfe, ich komme nicht weiter bei der Konfiguration im PRTG.

    Die Firewall kann ich via SNMP nun abfragen. Nun sollte ich die OIDs rausfinden um den Gateway rauszufinden.

    Die Datei dpinger_GW_WAN.... ist bei mir immer leer und somit kann ich dies nicht testen. Da stellt sich mir die Frage, wie kann man dies automatisieren?

    Wünsche Euch einen guten Rutsch ins neue Jahr.
    Liebe Grüsse
    ALCA74



  • https://www.slideshare.net/NetgateUSA/monitoring-pfsense-24-with-snmp-pfsense-hangout-march-2018

    Slide 9

    "Note that some common requested items cannot be obtained via SNMP out of the box, such as:

    • Gateway Status"


  • Besten Dank für den Link.

    Hat jemand noch eine Idee wie man mein Problem lösen könnte?

    Im Moment komme ich nicht mehr weiter und alles was ich bis jetzt gefunden habe, zeigt mir nur den Status des Interfaces an.



  • Das ist zwar schon ein älterer Beitrag, aber vielleicht hilft das weiter:

    https://kb.paessler.com/en/topic/43903-monitoring-pfsense-cpu-and-memory

    Viele Grüße,

    Michael



  • Leider hat es auch mit dem genannten KB nicht geklappt.

    Liebe Grüsse
    ALCA74



  • Ich habe noch dieses Video hier gefunden, welches Monitoring mit SNMP erklärt und auch auf MIB files eingeht:

    https://www.netgate.com/resources/videos/monitoring-pfsense-24-with-snmp.html

    Viele Grüße,

    Michael



  • Hallo zusammen

    Der Tipp von @JeGr hat mich nach Probieren und vertieftem Einlesen weitergebracht.

    Aktuell lese ich mittels dem CAT-Befehl die beiden Socks-Dateien aus und lasse diese in zwei Dateien um usr/local/www reinschreiben. diesen Befehl lasse ich mittels einem CRON-Job jede Minute laufen.

    Wie kann ich den CRON-Job alle 30 Sekunden laufen lassen?
    Jetzt stehe ich aktuell wieder an, wie bekomme ich diese Daten ins PRTG? Bei diesem Punkt habe ich ein einen Sensor für HTTP mit XML gefunden. Die erstellte Datei hat nur eine Textzeile und keine Strukturierung, somit geht dies nicht.
    Muss ich die Dateierstellung auf der pfSense anpassen oder einen anderen Sensor verwenden?

    Die Daten werden folgendermasse abgelegt:

    • LAN1_xxx_xxxx 31401 4367 0

    @Michael-at-Paessler : Dieses Video habe ich auch gesehen, bringt mich aber leider nicht weiter, da der Gateway-Status nicth ausgelsen werden kann.

    Liebe Grüsse
    ALCA74


  • LAYER 8 Moderator

    @ALCA74 said in Failover via PRTG überwachen:

    Wie kann ich den CRON-Job alle 30 Sekunden laufen lassen?

    Das geht nicht, Cron läuft nur jede Minute.



  • Hallo zusammen

    Nachdem ich nun mich immer weiter in die Materie eingearbeitet habe, suche ich noch eine Lösung für mein Gateway-Problem.

    Kann man via 'sysctl' eventuell etwas machen und dann diesen Wert an PRTG weitergeben?
    Der Paketverlust kann ich mittels SNMP recht genau erfassen, via SOCKS-Datei ist es natürlich genauer.

    Leider hagbe ich es im PRTG noch nicht hinbekommen, dass ich die SOCKS-Datei korrekt einlesen kann.

    Liebe Grüsse
    ALCA74



  • Hallo @ALCA74,

    in diesem Knowledgebase Artikel geht es um das Auslesen der Temperatur via sysctl:

    https://kb.paessler.com/en/topic/75990-ssh-script-with-pfsense-for-temperature-monitor

    Vielleicht hilft das abgewandelt weiter.

    Viele Grüße,
    Michael


Log in to reply