The three most painfull IP protocolls

Während meiner IT Laufbahn, die nun immerhin bereits ca. 13 Jahre währt, gab es immer wieder Anwendungsfälle, die einem fast in den Wahnsinn treiben. Ein beliebtes Problem was uns ITlern wohl bis zur flächendeckenden Einführung von IPV6 immer wieder begegnen wird, ist das eine oder andere Internet Protokoll ordentlich über eine NAT Firewall zu bekommen. Gerade verzweifele ich mal wieder an einem hierzu prädestiniertem Kandidaten. Wer designed eigentlich diese Protokolle? Leben die in einer anderen Welt? Vermutlich kommen die Informatiker, denen wir das zu verdanken haben von irgendwelchen Unis die aus historischen Gründen noch ein /8 Netz mit öffentlichen IPs haben und jeden Uni Rechner mit einer public IP versorgen. Wie auch immer hier nun meine persönlichen Top 3 der nervigsten Internet Protokolle:

  1. SIP – Wer käme auch schon auf Idee sein IP Telefon zu Hause nicht als einziges Gerät an seinem Internetanschluss zu verwenden, damit man kein NAT verwenden muss.
  2. IPSEC – Vielen Dank für dieses unnötig komplizierte Protokoll. Natürlich nicht hinter NAT Firewalls zu verwenden. Gott sei Dank gibt es OpenVPN
  3. FTP – Dank der prima Idee zwei verschiedene Ports zu verwenden und diese in entgegengesetzter Richtung kommunizieren zu lassen

Falls Ihr eine andere Top 3 Liste habt: Schreibt doch nen Kommentar.

Voice Alarming mit Nagios und Asterisk

Bei besonders kritischen Services reicht es nicht aus eine Mail als Alarm zu erhalten. Ein Telefonanruf ist hier deutlich besser geeignet. Sein Handy hat man immer dabei und via Tonwahl lassen sich ggf. gleich Aktionen im Nagios ausführen (ACKNOWLEDGE, disable notficications). Eine kurze Internetrecherche hat mich zu einer Lösung von Netways zu diesem Problem geführt. Die dort beschriebene Lösung habe ich dann noch etwas angepasst, so dass die Anrufe von Asterisk über SIP an eine beliebige Telefonnumer geschickt werden. Hierzu rufe ich das Perlscipt call.pl wie folgt auf:

/usr/bin/printf "%b" "$MESSAGE" | /usr/lib/nagios/contrib/nagios2asterisk/call.pl -n $CONTACTPAGER -c 110 -C "SIP/$CONTACTPAGER@sipgate-out"

Im Asterisk ist unter sipgate-out die Verbindung zu meinem VoIP Provider (in diesem Falle sipgate) definiert. In $CONTACTPAGER steht die anzurufende Telefonnummer und in $MESSAGE die vorzulesende Nachricht. Damit die Alarme vom Nagios etwas besser verständlich werden, habe ich um das ganze noch ein wrapper script drum rum gebaut. Dieses schickt dann in Abhängigkeit vom Nagios Alarmtyp unterschiedliche Nachrichten ans Telefon. Zu den verwendeten Text2Voice Tools (MBROLA, TXT2PHO) gibt es auch einige Anmerkungen: Damit die MBROLA Binaries auf meinem Ubuntu x64 System laufen, musste ich erst noch (auch bei der x64 Version von MBROLA) das Paket libc6-i386 installieren. Ein . (Punkt) im vorzulesenden Text erzeugt eine Pause. Dieses Element sollte man durchaus nutzen um die Nachrichten verständlicher zu gestalten. Ich nutze zum Vorlesen die Stimme de5, da ich diese für am verständlichsten halte.