J'ai déjà parlé ici du serveur de noms
nsd, le logiciel actuellement le plus rapide pour servir des
zones
Avec la version 4, NSD dispose enfin d'un logiciel de contrôle,
% sudo nsd-control status
version: 4.0.1
verbosity: 1
ratelimit: 200
Mais on peut aussi avoir des informations par zone. Un des serveurs de
nom d'
% sudo nsd-control zonestatus eu.org
zone: eu.org
state: ok
served-serial: "2014022601 since 2014-02-26T09:43:38"
commit-serial: "2014022601 since 2014-02-26T09:43:38"
On a aussi des statistiques (ici, juste après un démarrage du serveur) :
% sudo nsd-control stats
num.queries=27
num.type.A=18
num.type.MX=4
num.type.TXT=1
num.type.AAAA=2
num.type.SRV=1
...
num.rcode.NOERROR=26
num.rcode.NXDOMAIN=1
...
num.edns=19
...
num.udp=24
num.udp6=3
num.tcp=0
num.tcp6=0
...
Mais tout ceci est en lecture seule. L'important est qu'on peut
aussi modifier la configuration du serveur en vol. Je modifie le
% sudo nsd-control reconfig
reconfig start, read /etc/nsd/nsd.conf
ok
% sudo nsd-control status
version: 4.0.1
verbosity: 1
ratelimit: 100
Et j'ai la nouvelle valeur.
Et si je veux ajouter une zone à servir ? On peut simplement
l'ajouter à
% sudo nsd-control reconfig
reconfig start, read /etc/nsd/nsd.conf
ok
% sudo nsd-control zonestatus
...
zone: example.com
state: refreshing
served-serial: none
commit-serial: none
Et, très peu de temps après :
% sudo nsd-control zonestatus example.com
zone: example.com
state: ok
served-serial: "2014022601 since 2014-02-26T10:17:27"
commit-serial: "2014022601 since 2014-02-26T10:17:27"
Et le serveur va alors répondre avec autorité aux requêtes DNS concernant cette zone.
Mais il existe une autre méthode, plus adaptée aux gens qui gèrent
plein de zones à la configuration identique. Avec cette seconde
méthode, on n'ajoute pas la zone dans
pattern:
name: personalslave
allow-notify: 2001:db8:cafe::1:53 NOKEY
request-xfr: AXFR 2001:db8:cafe::1:53 NOKEY
Et la création d'une zone qui ne sera pas dans
% sudo nsd-control addzone example.org personalslave
ok
% sudo nsd-control zonestatus example.org
zone: example.org
pattern: personalslave
state: ok
served-serial: "2014022400 since 2014-02-26T10:26:40"
commit-serial: "2014022400 since 2014-02-26T10:26:40"
La détruire est aussi simple :
% sudo nsd-control delzone example.org
ok
Il y a encore plein de choses à voir mais je vous laisse déjà vous amuser avec cela.