ajout infos pour mettre à jour serial
This commit is contained in:
parent
46d8dd20ad
commit
5935d490bf
22
HowtoBind.md
22
HowtoBind.md
|
@ -610,4 +610,26 @@ server 192.0.2.53 { edns no; };
|
||||||
|
|
||||||
Voir <https://kb.isc.org/docs/aa-00726>
|
Voir <https://kb.isc.org/docs/aa-00726>
|
||||||
|
|
||||||
|
### Mise a jour du serial
|
||||||
|
|
||||||
|
Vous devez repérer un pattern unique sur la ligne du serial, par exemple `; serial`
|
||||||
|
|
||||||
|
|
||||||
|
On peut ainsi mettre à jour le serial d'une zone :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
$ serial=$(date "+%Y%m%d%H")
|
||||||
|
$ sed -i "s/^\([ \t]*\)[0-9]\{10\}\([ \t]*; serial\)/\1$serial\2/" db.example.com
|
||||||
|
~~~
|
||||||
|
|
||||||
|
Si l'on doit automatiser, on utilisera les commandes suivantes pour prendre en compte plusieurs modifications le même jour :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
zonefile=db.example.com
|
||||||
|
serial=$(grep -E '[ \t]*[0-9]{10}\s*; serial' $zonefile | sed "s/[ \t]*\([0-9]\{10\}\)[ \t]*; serial/\1/")
|
||||||
|
if [ `date "+%Y%m%d%H"` -gt $serial ]; then serial=$(date "+%Y%m%d%H"); else serial=$(( $serial + 1 )); fi
|
||||||
|
sed -i "s/^\([ \t]*\)[0-9]\{10\}\([ \t]*; serial\)/\1$serial\2/" $zonefile
|
||||||
|
~~~
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue