Domain Name System

DEBIAN

bind9 / named

Les fichiers de configuration du service DNS se trouvent dans /etc/bind
mais les fichiers de base de données contenant les enregistrements de zone se trouvent dans /var/cache/bind

/etc/bind/ :

/etc/bind/named.conf
le fichier de configuration s’occupant de préciser le chemin des fichiers de configurations de zones, d’options de service DNS ainsi que des zones par défaut.

/etc/bind/named.conf.local
Ce fichier contient les configurations des types de zones à créer, ainsi que des fichiers de bases de données
qui accueilleront les entrées DNS et toutes les options de transfert de zone si besoin.

/var/cache/bind :
Ce dossier va contenir les fichiers de zone, dans lesquels les enregistrements vont être inscrits.
{nom_de_zone}.db

/etc/bind/
named.conf

include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";

named.conf.options

options {
    directory "/var/cache/bind";
    forwarders {
        212.27.40.240;
        212.27.40.241;
        1.1.1.1;
    };

    dnssec-validation no;

    allow-recursion { any; };

    listen-on { any; };
    listen-on-v6 { none; };
};

controls {
     inet 127.0.0.1 allow { localhost; };
};

Master DNS

named.conf.local

zone "michel-joly.fr" {
     type master;
     file "michel-joly.fr.zone";
     allow-query {127.0.0.1;192.168.42.0/24;192.168.1.0/24;};
};

zone "42.168.192.in-addr.arpa" {
     type master;
     file "reverse.michel-joly.fr.zone";
     allow-update {127.0.0.1; key "michel-joly.fr";};
};

/var/cache/bind/ michel-joly.fr.zone

$ORIGIN .
$TTL 86400  ; 1 day
michel-joly.fr      IN SOA  ns1.michel-joly.fr. joly_michel.outlook.com. (
                1967       ; serial
                604800     ; refresh (1 week)
                86400      ; retry (1 day)
                2419400    ; expire (4 weeks 3 minutes 20 seconds)
                604800     ; minimum (1 week)
                )
                NS  ns1.michel-joly.fr.
                A   192.168.42.254
                MX  10 mail.michel-joly.fr.
$TTL 86400  ; 1 day
mail            A   192.168.42.254
www             A   192.168.42.254
ns1             A   192.168.42.254

reverse.michel-joly.fr.zone

$ORIGIN .
$TTL 86400  ; 1 day
42.168.192.in-addr.arpa IN SOA  ns1.michel-joly.fr. joly_michel.outlook.com. (
                40         ; serial
                604800     ; refresh (1 week)
                86400      ; retry (1 day)
                2419200    ; expire (4 weeks)
                86400      ; minimum (1 day)
                )
            NS  ns1.michel-joly.fr.
$ORIGIN 42.168.192.in-addr.arpa.
$TTL 86400  ; 1 day
254         PTR ns1
            PTR mail
            PTR www

Syntaxe et Types d'enregistrement

  • $ORIGIN {nom de la zone, suivi d’un point si l’on est en haut de la hiérarchie de zones} On pourra remplacer les occurrences suivantes de $ORIGIN par @

  • TTL (Time To Live) : Le temps que le service gardera les enregistrements de ressources (RR) en mémoire.

  • SOA (Start Of Authority), Doit :
    → commencer par le nom de la zone que l’on souhaite créer
    → contenir le protocole qu’il utilise (IN pour Internet),
    → contenir l’adresse du serveur de nom (NS) principal de la zone,
    → contenir l’adresse mail de l’administrateur du domaine (à laquelle on remplacera le ‘@’ par un ‘.’, et si l’adresse mail contient des ‘.’, on les remplacera par ‘.’),
    → contenir aussi les valeurs des différentes variables qui caractèriseront notre service DNS :
    → numéro de série qui va augmenter à chaque changement (SERIAL),
    → l’intervalle de rafraîchissement des enregistrements (REFRESH),
    → l’intervalle de temps avant de réessayer un rafraîchissement si le précédent a échoué (RETRY),
    → l’intervalle de temps avant que la zone ne soit désactivée si les rafraîchissements consécutifs échouent (EXPIRE).
    Tous les intervalles de temps sont donnés en secondes.

  • A (Address) : Désigne un hôte auquel on associera adresse IP et nom d’hôte

  • NS (Name Server) : Un serveur de nom de la zone

  • CNAME (Cannonical NAME) : Permet d’attribuer un autre nom à une même adresse IP (alias)

  • MX (Mail eXchange) : Désigne le nom d'un hôte qui recevra les messages des protocoles de messagerie (Doit pointer vers un enregistrement de type A/AAAA)

Windows


    install-windowsfeature dns

    get-netadapter

    new-netipaddress -ipaddress 10.88.1.30 -prefixlength 8 -defaultgateway 10.255.255.254 -ifindex 12

    add-dnsserverprimaryzone -zonename tssr.labo -zonefile tssr.labo.dns
    add-dnsserverprimaryzone -networkid 10.0.0.0/8 -zonefile reverse.tssr.labo.dns

    add-dnsserverresourcerecordA -zonename tssr.labo -name msg -ipv4address 10.88.1.30 -createptr
    add-dnsserverresourcerecordmx -zonename tssr.labo -name msg -mailexchange msg.tssr.labo      -preference 10
    add-dnsserverresourcerecorda -zonename tssr.labo -name gw -ipv4address 10.255.255.254 -createptr
    add-dnsserverresourcerecorda -zonename tssr.labo -ipv4address 10.88.1.30 -createptr -name smtp
    add-dnsserverresourcerecorda -zonename tssr.labo -ipv4address 10.88.1.30 -createptr -name pop3
    add-dnsserverresourcerecorda -zonename tssr.labo -ipv4address 10.88.1.30 -createptr -name pop
    add-dnsserverresourcerecorda -zonename tssr.labo -ipv4address 10.88.1.30 -createptr -name imap

    set-dnsclientserveraddress -addresses 127.0.0.1

    get-dnsservercache -name 10.in-addr.arpa
    get-dnsserverresourcerecord -zonename 10.in-addr.arpa