
Ich verwende BIND als DNS-Server zu Hause. Für meinen Start Of Authority (SOA-Eintrag) verwende ich immer eine Seriennummer im empfohlenen Format
JJJJMMTT##
wo ##
sich der Zähler für Änderungen an diesem Tag befindet.
Leider habe ich die Seriennummer geändert und versehentlich eine weitere Ziffer hinzugefügt. Nach dem Update des Name-Daemons konnte ich dies nicht mehr rückgängig machen.
Gibt es eine Möglichkeit, die Seriennummer/den Zähler in den internen Bibliotheken von BIND zurückzusetzen?
Antwort1
Wenn Sie Shell-Zugriff auf alle Slave-Server haben, gibt es eine einfachere Lösung:
Um eine Seriennummer auf Slave-Servern dekrementieren zu können, können Sie sich beim Slave-Server anmelden und ausführen rndc retransfer my.zone.name
. Dadurch ruft der Slave die Zone vom Master ab und ignoriert die Seriennummer vollständig.
Antwort2
Die Seriennummer ist den „internen Bibliotheken von BIND“ egal. Wichtig ist nur die Vereinbarung zwischen Master-Server und Slave-Servern. Mit anderen Worten: BIND lässt Sie die Seriennummer in einer Zonendatei ohne Beanstandungen verringern. Die Slaves erhalten dann nur keine Updates mehr.
Seriennummern von Zonendateien sind vorzeichenlose 32-Bit-Ganzzahlen und werden um die größtmögliche vorzeichenlose 32-Bit-Ganzzahl herumgeführt. Es gibt also eine Möglichkeit, die Seriennummer zu verringern, indem man sie wiederholt erhöht, bis sie umschlägt und sich Null nähert. Es gibt einen Höchstbetrag, um den Sie sie auf einmal erhöhen können, also müssen Sie dies iterativ in mehreren Schritten tun:
- Erhöhen Sie die Seriennummer um einen großen Betrag, jedoch nicht mehr als 2147483647
- Warten Sie, bis alle Slave-Server aufgeholt haben und mit der aktuellen SOA auf dem neuesten Stand sind.
- Wiederholen
Sie können immer ein Inkrement auswählen, sodass Sie nicht mehr als zweimal iterieren müssen.
Folgendieses HOWTO.