Datenhaufen zu IT und Elektronik.

Monat: Oktober 2012

IPv6 / Default Route / DNS /DHCP

Nun arbeite ich schon seit einigen Jahren, privat wie im Berufsleben, mit IPv6. Was mir bei vielen Schulungen, Einführungen, Netzumstellungen usw… auffällt ist dass es vielen Admins schwer fällt zu verstehen wie der Client nun an seine Netzwerkkonfiguration kommt. Da in der letzten Zeit immer mehr Fragen zu dem Thema bei mir landen (scheinbar müssen viele jetzt noch „auf den letzten Drücker“ IPv6 lernen), versuche ich es hier mal grob aufzuschlüsseln.

Im Grunde ist es ganz einfach:
–    Bei IPv6 verteilt der DHCPv6 Server keine Default Route, das macht der Router!
–    Der DHCPv6 kann DNS Server, NTP-Server usw. verteilen und für eine automatische Eintragung des Clients am DNS Server sorgen. Er kann natürlich auch zusätzliche IPv6 Adressen verteilen.
–    Der Router verteilt sein Präfix per RA (Router Advertisment).
      o    Der Client kümmert sich um die Generierung einer IP-Adresse.
      o    Im RA kann der Client aufgefordert werden einen DHCPv6 Server nach weiteren Informationen zu fragen.
      o    Im RA kann ein DNS Server an den Client übergeben werden (RDNSS)

Erst einmal ist also für eine vollständige Autokonfiguration des Clients kein DHCPv6 Server mehr nötig. Denn der Client hat immer und direkt eine IPv6 Adresse vom scope link (fe80:….). Diese Adresse hat der Client sobald er einen Netzwerklink hat und wird aus der eigenen MAC-Adresse per EUI (Extended Unique Identifier) erstellt. Nun sendet der Client im einfachsten Fall ein RS (Router Solicitation) an die Multicast Adresse, auf welche ALLE Router hören, ins Netzwerk (ff02::2). Der Router antwortet dann mit einem RA und übermittelt dem Client das IPv6-Präfix. Der Client baut dann aus diesem Präfix und EUI wieder eine Adresse vom scope global. Sowie bei aktivierten Privacy Extensions eine gewürfelte Adresse. Der Client hat nun mindestens zwei IPv6 Adressen bei aktivierten Privacy Extensions sogar bereits drei IPv6 Adressen, sowie eine Default Route über den Router welcher uns den RA verpasst hat.

Ist am Router die Option RDNSS gesetzt wird dem Client zum Präfix auch noch ein DNS Server übergeben. Dieses ~verstehen~ leider noch nicht alle Clients. Damit wäre der Client schon in der Lage vollständig am „Internetleben“ teil zu nehmen.
Ist am Router das Other Config Flag gesetzt, wird der Client angewiesen einen DHCPv6 Server nach weiteren Einstellungen/Informationen zu fragen.

Nun kommt der DHCPv6 Server ins Spiel. Wird dieser vom Client nach weiteren Einstellungen/Informationen gefragt wird er die gewünschten Informationen an den Client übermitteln. Was nicht bedeutet dass der Client damit eine weitere IPv6 Adresse bekommen muss. Es ist auch möglich nur wins, ntp, dns usw.. an die Client zu übermitteln. Der Client muss dazu über einen DHCPv6-Client verfügen. Dieser ist bisher noch nicht bei allen Clientsystemen per Default vorhanden bzw. aktiviert!

Natürlich kann man seinen DHCPv6 Server auch so konfigurieren dass er zusätzlich noch eine dritte bzw. vierte (oder mehr) IPv6 Adresse an den Client übermittelt. Damit wäre der DHCPv6-Server zusätzlich in der Lage diese IPv6 Adressen einem DNS Server bekannt zu machen.

Wie auch beim Thema NAT bei IPv6 gibt es Vorschläge dem DHCPv6 Server wieder die Option Route zu spendieren, ich denke es ist nicht nötig / sinnvoll… Hier kann man sich streiten!

Die Idee bei IPv6 möglichst viel Arbeit auf den Client zu verlagern ergibt meist erst auf den zweiten Blick Sinn. Bei IPv4 war es bisher so dass der Client als erstes ins Netzwerk herumbrüllt ob den ein DHCP Server da ist, dann gab es einen regen Austausch zwischen diesen Systemen und am Ende hatte der Client alle seine Informationen. Denkt man aber nun daran dass im größten IPv4 Netzausbei maximal (24^2)-2 Hostadressen herausspringen und beim IPv6 im kleinsten Netzausbau minimal (64^2)-2 Hostadressen herausspringen… Ja dann ahnt man schon, wenn sich hier ein Router noch ums Popo abwischen kümmern muss, dann ist nicht mehr viel mit Netzwerk.

Noch Fragen? Dann fragen….

Legal Obst „klauen“

Ich habe da vor kurzem etwas interessantes gefunden…..

Nimmt man einem Landwirt einfach seine Produkte vom Feld, mag es für einen Selbst ein Kavaliersdelikt sein. Man nimmt ja auch nur einen Apfel mit…. Aber wenn sich 100 Leute dieses denken, dann ist mehr als nur ein Baum leer und der Landwirt kann nichts verkaufen.

Nun zu meinem Fund… Es gibt da eine Webseite in welcher jeder seinen oder öffentliche „Bäume“ eintragen kann. Hier kann nun jeder suchen welche Sorte es bei ihm in der Nähe gibt und dort hinflitzen und sich sein Eimerchen voll machen. Genau beschrieben ist dieses alles direkt auf der Seite und diese nennt sich Mundraub.org und hier ist zu finden:
http://www.mundraub.org/

So long….

 

Windows Server Backup mit Nagios überwachen

Möchte man die Windows Server Sicherung seines Microsoft Windows Server 2008 oder jünger per Nagios überwachen gibt es viele Wege….
Ich habe einen sehr einfachen gesucht und leider konnte Google mir auf Anhieb keinen nennen.
Auf den zu überwachenden Systemen ist jeweils eine voll (Bare Metal) Sicherung eingerichtet. Diese startet 1 bis x mal am Tag. Ist man auf dem Server angemeldet kann man einfach in der Management Console in die Windows Server-Sicherung schauen und den Zustand der letzten Sicherungen sehen. Natürlich auch ob gerade eine Sicherung läuft, wohin gesichert wird, wie viele Kopien vorhanden sind usw. usw…

Alles Dinge die mich erst einmal nicht interessieren. Der für mich spannende Punkt ist, wann war die letzte erfolgreiche Sicherung und ist diese älter als drei Tage? Warum, weshalb, wo, wie, was… Ist mir im ersten Schritt egal. Ich möchte nur informiert sein, wenn es keine aktuelle Datensicherung gibt.
Nun bin ich eher in der Unixwelt zuhause aber die Windows PowerShell sollte da doch was können, richtig?
Wie ich gesehen habe gibt es ein Snapin für das Windows ServerBackup. Wenn ich dieses hinzufüge kann ich über Get-WBSummary mir eine Art Zusammenfassung anschauen.
In dieser finde ich unter dem Punkt LastSuccessfulBackupTime das Datum der letzten erfolgreichen Sicherung. In meinem Fall also jeweils das Datum meiner letzten Vollsicherung. Daraus kann man doch sicher was basteln, oder?
Ich habe mir also ein kleines Script zusammengeworfen welches folgendes tut:
Es greift sich die Information über die letzte erfolgreiche Sicherung ab und vergleicht sie mit dem aktuellen Datum. Ist es gleich, war die letzte Sicherung heute und alles ist gut. Ist es von gestern, ist auch noch alles gut und Nagios bekommt ein OK zurück. Wenn es aber älter ist (2 – 3 Tage) gibt es eine Warnung an Nagios zurück und wenn es älter ist als 3 Tage gibt es die Meldung critical an Nagios weiter. Nagios kümmert sich dann wie gewohnt darum mich passend zu informieren.
Aktuell greift das Script keinerlei Exeptions ab und es ist nicht… sagen wir mal schön 😀 Ich werde es, je nach Zeit, immer mal etwas erweitern. Seine eigentliche Aufgabe erfüllt es denn noch jetzt schon!

Download:
>>Das Script kann hier in der letzten Version heruntergeladen werden<<

Damit einem nicht schon beim ersten Start des Scriptes die folgende Fehlermeldung anspringt:

Das Windows PowerShell-Snap-In „Windows.ServerBackup“ ist auf diesem Computer nicht installiert.

Muss über den Server-Manager ein weiteres Feature hinzugefügt werden. Hier sind unter Windows Server-Sicherungsfeatures noch die Befehlszeilentools zu installieren. Zusätzlich muss die Policy so geändert werden, dass dieses Script auch ausgeführt werden darf. Dazu einfach in die PowerShell folgendes eingeben:

# Set-ExecutionPolicy RemoteSigned

Ich lege das Script nun im Root des primären Filsystems in den Ordner c:\scripte\
Nun kann ich im NSClient++ die Sektion NRPE Handlers erstellen und dort ein Kommando für den Aufruf des Scriptes erstellen. Möchte man über den NSClient++ Windows PowerShell Scripte ausführen, schaut der Aufruf beim ersten hinschauen etwas seltsam aus:

[NRPE Handlers]
command[check_windowsbackup]=cmd /c echo C:\scripte\backuptest.ps1 | powershell.exe -command -

Natürlich muss der NSClient++ so konfiguriert sein, dass er auch als NRPE arbeitet:

[modules]
NRPEListener.dll
NRPEClient.dll
.....

[NRPE]
port=5666
command_timeout=120
allowed_hosts=1.2.3.4
socket_timeout=120
....

Nach einem Neustart des Clientdienstes sollte man nun auch schon vom Nagiossystem aus einen Test starten können:

$ check_nrpe -H 4.3.2.1 -p 5666 -t 120 -c check_windowsbackup
OK: Backup von gestern

Die restliche Einrichtung in Nagios sollte bekannt sein, sonst fragen 🙂


* UPDATE *

Die Version 0.2 fängt nun zusätzlich den Fehler ab, wenn die Befehlzeilentools nicht installiert sind. Ich dachte erst wäre nicht so wichtig… Aber nachdem ich es auf 10 Systeme gepackt hatte und immer nachgeschat habe 😛 Nun greift es dieses also ebenfals ab und gibt eine CRITICAL Meldung an Nagios weiter!


* UPDATE *

Die Version 0.3 fängt nun auch ab ob eine Sicherung über einen Tageswechsel hin noch läuft.

MOTDstat

Habe ich überhaupt schon von meinem neusten Lieblingsgimmik berichtet? Nein? Nö nö nö….. Es nennt sich MOTDstat und „ersetzt“ die bekannte Message of the Day.

Im Grunde ist es ein kleines bash Script welches einem ausgewählte Systeminformationen beim Login anzeigt. Es hat sogar die Möglichkeit einem im Fall der Fälle eine E-Mail zu schicken, dieses überlasse ich dann aber doch lieber Nagios 🙂

Nach dem Download installiert sich alles fast von allein.

$ make install

Damit alles regelmässig aktualisiert wird folgt man am besten dem Vorschlag der README und wird den folgenden Aufruf in seine crontab.

$ crontab -e
*/5 * * * * root /usr/bin/motdstat --generate 1>/dev/null 2>/dev/null

Damit wird der Zustand alle 5 Minuten aktualisiert und alle Infos zum CronJob landen im Nirwana!

Bei einem motdstat -g schiebt MOTDstat die eigentliche Datei /etc/motd in /etc/motd.ori und wirft den generierten Systemzustand in /etc/motd. Bei einem neuen Login wird diese nun gefolgt von der /etc/motd.ori augegeben. Testen lässt sich dieses mit einem:

$ motdstat -s

Einstellungen zum Script lassen sich unter /etc/motdstat vorneheme. Da ich meine Message of the Day so oder so immer anfasse um dort möglichst auffällig den Systemnamen erscheinen zu lassen (ich komme sonst mal schnell durcheinander), passt es ganz gut dazu. Es kann natürlich keine echte Überwachung ersetzten,ist aus meiner Sicht denn noch ein ganz nettes „Programm“.

So long…..

 

 

© 2025 -=Kernel-Error=-

Theme von Anders NorénHoch ↑