check_rdns: Reverse DNS/PTR Records monitoren

Achtung! Dieser Artikel ist älter als ein Jahr. Der Inhalt ist möglicherweise nicht mehr aktuell!

Frei nach dem Motto „Monitoren was geht“, habe ich wieder mal versucht, mit den Boardmitteln check_dig und check_dns meine Reverse DNS/PTR Records zu monitoren.

Leider geht das nicht so, wie ich mir das vorgestellt habe. Deshalb habe ich einen kurzen Check für diese Usecase geschrieben. Zu finden ist das gute Stück auf GitHub.

Das Script nimmer zwei Parameter:

Der Parameter „–address“ nimmt eine IPv4 oder IPv6 Adresse. Mit Hilfe von dem Kommando „dig“ wird der Reverse DNS Lookup durchgeführt und das Ergebnis mit dem Wert von „–expected“ verglichen. Das Ergebnis ist entweder ein Match oder eben kein Match.

Das benötigte CheckCommand liegt bei.

Ein Implementierungsentwurf für Icinga 2:

object Host "mineralwasser" {
   [...]

   vars.rdns["31-220-45-3"] = {
      rdns_address = "31.220.45.3"
      rdns_expected = "mineralwasser.veloc1ty.de"
   }

   vars.rdns["2a01-6f0-ffff-7e-dead-beef-0-3"] = {
      rdns_address = "2a01:6f0:ffff:7e:dead:beef:0:3"
      rdns_expected = "mineralwasser.veloc1ty.de"
   }
}

apply Service "rdns-" for ( entry => config in host.vars.rdns ) {
   import "10minute-service"
   import "no-perfdata"
   import "notification-enabled"

   check_command = "rdns"
   display_name = "RDNS: " + config.rdns_address

   vars += config
}


Du hast einen Kommentar, einen Wunsch oder eine Verbeserung? Schreib mir doch eine E-Mail! Die Infos dazu stehen hier.

🖇️ = Link zu anderer Webseite
🔐 = Webseite nutzt HTTPS (verschlüsselter Transportweg)
Zurück