Sie sind hier : Homepage →  > hier stehen die veralteten Seiten→  l) Opensuse 13.2 News→  bind / named unter Opensuse 13.1

Hier stehen die veralteten Seiten

"bind" in opensuse 13.1 kann zum Wahnsinn treiben .....

Bei uns laufen der primary DNS und der secondary DNS Server in zwei virtuellen Maschinen (auf unterschiedlichen Servern) unter XEN , sodaß diese von der jeweiligen Server-Hardware abgekoppelt sind.

Dennoch gibt es in der opensuse 13.1 Macken, die so schon lange nicht mehr vorkommen dürften. Wenn der "named" Dienst nach einer (fehlerhaften) Änderung der Konfiguration offensichtlich nicht mehr startet oder nicht mehr funktioniert, sucht man vergebens nach den Log-Dateien.

Und wenn man den Dienst stoppt und der dennoch weiter läuft und man das nicht merkt, dreht man sich fürchterlich im Kreis.
.

Darum der Reihe nach - ein Fehler in (unserer) wichtigsten Zonen Datei : ipw.net.dns

Die Erkenntnis: Nutzen und Fluch der hochauflösenden Monitoren sind dicht beieinander. Und das Semikolon und der Doppelpunkt sind auf der Tastatur auch dicht beieinander.

Kommentiert man in einer DNS Zonendatei eine Zeile aus, bekommt die ein Semikolon am Anfang und alles ist ok. Tippt man aber irriger Weise einen Doppelpunkt, startet "bind" nicht mehr. Und nach 4 Stunden am PC mit vielen Änderungen sieht man auch beim dritten oder fünften Male Durchsuchen diesen Fehler nicht. Die Unterschiede dieser beiden Zeichen (;:) sind am Bildschirm marginal. Googelt man nach den Log-Dateien für "bind", findet man nur Workarounds. Doch davon später.
.

Neue ? Macken in dem "named" script von opensuse 13.1 ?

Am Tag vorher war mit schon aufgefallen, daß Änderungen in verschiedenen Zonendateien einfach nicht aktualisiert wurden. Alleine das Suchen, wo noch (im Internet) eventuelle DNS Caches aktiv sein könnten, dauerte Stunden.

Auf dem DNS Server geht es weiter mit einem (vermeintlichen) DNS Neustart.
Dazu gibt es in /etc/init.d/ einen "./named" Start-Stop Script. Auch kann man überall im Filesystem mit "rcnamed ......." den Dienst starten und beenden - jedenfalls vermeintlich. Da ich das seit ca. 15 Jahren so mache, ist es in der neuen opensuse Version 13.1 nicht aufgefallen, daß der STOP Befehl so nicht funktioniert.

Die (aller-) ersten drei Threads laufen nämlich einfach weiter und beim erneuten Start werden einfach drei neue Treads (zusätzlich) gestartet. Daß diese 3 neuen Threads aber nicht funktionieren, ist kaum zu merken, denn die bekommen zwar gesagt, daß der Netzwerk-Port "in use" sei, doch die drei allerersten Threads sind ja nach wie vor aktiv. Auf die Idee, daß auf einmal das Script nicht mehr funktioniert, muß man erst mal kommen, denn der Aufruf "./named status" zeigt an, der Dienst läuft oder läuft nicht (running oder unused).
.

Der Fehler war zwar indirekt hausgemacht - aber .....

Die Bedienung von "bind" über das "named" Kommando hat Macken, dicke Macken. Um die muß man herum schiffen, sonst wird man irre.

Wie habe ich das gelöst :
Kurz vor dem Sprung aus dem ersten Stock habe ich einen Tip gefunden, der sehr hilfreich war. Man solle den "bind" Dienst mal nicht als Dienst (daemon) starten, sondern als Programm im Vordergund laufen lassen, dann würden die Events und das Log angezeigt.
.

Das online Log von "named" in der Konsole anzeigen

Und das geht so : In /usr/sbin" kann man das Programm "./named -g" starten und sofort wird der Bildschirm mit den lange gesuchten Log-Einträgen "geflutet" !!

Sind die duchgelaufen, bei uns sind es etwa 2 x 280 Zeilen, kann man mit STRG C (Ctrl C) (die Ausgabe) abbrechen. Am Bildschirm wird zwar die Terminierung des "bind" Jobs angezeigt, aber der Job ist noch lange nicht weg oder beendet. Er läuft nämlich - erst mal unsichtabr - weiter.

Zumindest wird jetzt hier ganz klar und deutlich angezeigt, was dem "bind" Programm (oder Dienst) nicht gefallen hat - endlich mal ein wirklich hilfreicher Tip
.

Sie brauchen 2 oder 3 "putty" Fenster, möglichst große sogar.

Ohne daß Sie die Log-Ausgabe am Bildschirm gleichzeitig sehen können während Sie die bemängelten Änderungen vornehmen, wird es mühsam. 4 LCD Monitoren (am gleichen PC) - wie bei mir - sind da extrem hilfreich. Denn nur so geht die Zeile (die Fehlerzeile) mit drag and drop ab ins google und sofort hat man die Stelle, an der man verbessern muß.

Detailwissen - "rcnamed" contra "./named" (die start stop scripte)

Wenn Sie also in das wichtige "init.d" Verzeichnis wechseln mit "cd /etc/init.d" , können Sie dort mit "./named start" den Dienst starten und mit "./named stop" den Dienst beenden. Das funktioniert - hier jedenfalls.

Die Funktion "./named status" zeigt denoch - auch hier - immer Mist an !!!!. Egal was passiert ist, es wird "unused" angezeigt. - Das scheint eine opensuse 13.1 Macke zu sein.

Sie müssen unbedingt mit den Programmen "top" oder besser "htop" kontrollieren, ob der named Dienst - bzw. ein verhungerter Alt-Dienst - wirklich beendet ist. Sonst werden die Änderungen nicht ausgeführt, das heißt, Zone oder Domain- Neueinträge sind einfach nicht verfügbar. Mit "htop" können Sie zum Glück die verbliebenen "named" Dienste mit F9 ganz einfach killen.

Aufpassen mit "rcnamed stop". Dort wird der Dienst nämlich nicht beendet !!! Und bei "rcnamed start" wird eine neue Thread 4er-Gruppe oben auf die alten bereits laufenden 4 named Threads drauf gesetzt und nichts geht mehr richtig. Das ist ganz großer Mist.
.

Auch der "nscd" Dienst hat besondere Eigenarten

Der sogenannte "Name Service Cache Daemon" nscd wird irgendwie immer mit installiert und soll die DNS Einträge "cachen". Wie lange und wo - habe ich bislang nicht gefunden.

Eines ist auf jeden Fall wichtig. Wenn definitive Änderungen auf dem (eigenen) DSN Server nicht per "nslookup" sofort verfügbar sind, werden die alten Einträge irgendwo gecached. Das war bis opensuse 12.1 besser. Ich war es bislang nicht gewohnt, daß ich Änderungen in der "named.conf" bzw. in der "named.conf.include" nach dem Neustart des named Dienstes nicht auch sofort verfügbar hattte. Die waren immer sofort verfügbar. Eigentlich war das der Hauptgrund, eigene Nameserver zu betreiben.

Also mal sehen, ob  das alles bei der Version 13.2 zum Jahreswechsel 2014/2015 repariert wird oder wurde.
.

Startseite -- © 2001/2022 - Copyright by Dipl.-Ing. Gert Redlich / Germany - D-65191 Wiesbaden - Telefon-Nummer - Impressum