Comment puis-je réinitialiser ou réduire la série utilisée dans l'enregistrement SOA du serveur DNS BIND?

9

J'utilise BIND comme serveur DNS à la maison. Pour mon début d'autorité (enregistrement SOA), j'utilise toujours une série au format recommandé

YYYYMMDD ##

##est le compteur des changements ce jour-là.

Malheureusement, j'ai changé la série et ajouté 1 chiffre de plus par erreur. Après avoir mis à jour le nom-démon, je ne pouvais plus revenir en arrière.

Existe-t-il un moyen possible de réinitialiser le numéro de série / compteur dans les bibliothèques internes de BIND?

Maître de la célébration
la source
J'ai trouvé une solution sur serverfault.com/questions/158021/…
Master of Celebration

Réponses:

8

Les "bibliothèques internes de BIND" ne se soucient pas du numéro de série. Ce n'est que l'accord entre le serveur maître et les serveurs esclaves qui compte. En d'autres termes, BIND vous laissera volontiers diminuer le numéro de série dans un fichier de zone sans vous plaindre. C'est juste que les esclaves ne recevraient plus de mises à jour.

Les numéros de série des fichiers de zone sont des entiers 32 bits non signés et ils entourent le plus grand entier non signé 32 bits possible. Il existe donc un moyen de diminuer le numéro de série en l'incrémentant à plusieurs reprises jusqu'à ce qu'il se déplace et se rapproche de zéro. Il y a un montant maximum par lequel vous pouvez l'incrémenter à la fois, vous devez donc le faire de manière itérative en plusieurs étapes:

  • Augmentez le numéro de série d'un grand incrément, mais pas plus de 2147483647
  • Attendez que tous les serveurs esclaves se rattrapent et soient à jour avec la SOA actuelle.
  • Répéter

Vous pouvez toujours choisir un incrément de sorte que vous n'ayez pas besoin de répéter plus de deux fois.

Suivez ce HOWTO .

Celada
la source
13

Si vous avez un accès shell à tous les serveurs esclaves, il existe une solution plus simple:

Pour pouvoir décrémenter un numéro de série sur des serveurs esclaves, vous pouvez vous connecter au serveur esclave et exécuter rndc retransfer my.zone.name. Cela entraînera l'esclave à récupérer la zone du maître et à ignorer complètement le numéro de série.

Patrick
la source
2
Ouais, eh bien, c'est en supposant que vous avez accès à chacun des serveurs esclaves ou bien vous voulez demander à l'administrateur de chacun d'exécuter cette commande pour vous.
Celada
1
Très utile, ayez un vote positif! Pourtant, puisque l'autre réponse n'est ni inutile ni ancienne, vous voudrez peut-être changer votre première ligne en quelque chose comme "Il existe une solution plus simple si vous avez un accès shell à tous les serveurs esclaves:".
Heinzi