On veut changer le TTL de toutes les zones d’un serveur bind en prévision d’une migration. Donc nous allons fixer le TTL à 300 pour un propagation DNS plus rapide.
Puis il nous faut changer le serial de la zone en l’incrémentant de 1.
Variables :
chemin des zones = /etc/bind/pri
Script :
#/bin/bash
#on parcours tous les fichiers .hosts
for file in /etc/bind/pri/*.hosts
do
#On récupère le serial (a la ligne 3) puis on enlève les caractères « vide »
serial=$(sed -n ‘3p’ « $file » | awk ‘{$1=$1}{ print }’)
#On incrémente notre serial
new_serial=$((serial+1))
#test pour récupérer le TTL
ttl=$(awk ‘NR==1{print $1,$2}’ « $file »)
echo « $file »
echo « Ancien serial = « »$serial »
echo « Nouveau serial = « »$new_serial »
echo « TTL = « »$ttl »
#On remplace le ttl par le nouveau
sed -i ‘s/$ttl 86400/$ttl 300/g’ « $file »
#On remplace le serial par le nouveau
sed -i « s/$serial/$new_serial/g » « $file »
done
Voilà il ne reste plus qu’a redémarrer le service bind.