Files
BUT2/TP_SCR3.2/revision_scr3.2/TP4/TP04 – Dynamic DNS — Organisation par GRANDES PARTIES.md
2025-12-10 01:26:13 +01:00

6.7 KiB
Raw Blame History

TP04 Dynamic DNS — Organisation par GRANDES PARTIES


PARTIE 1 — Préparation de la topologie (ddns.imn)

Objectif :

Créer une topologie avec :

  • un serveur DNS : osiris

  • un serveur DHCP : isis

  • des clients (eno, owt, pc1, pc2…)

Ce que tu dois faire :

  1. Copier la topologie du TP22 (dns1.imn)

  2. Enregistrer sous ddns.imn dans :
    ~/SCR.3.2/TP04/

  3. Assigner :

    • osiris : serveur DNS

    • isis : serveur DHCP

    • Les autres machines : sans IP statique (elles utiliseront DHCP)

Pourquoi ?

Parce que :

  • DHCP doit distribuer IP + DNS + nom de domaine,

  • DHCP doit envoyer des mises à jour dynamiques au DNS.


PARTIE 2 — Préparation des fichiers DNS (osiris)

Objectif :

Créer les fichiers de zone que BIND pourra modifier dynamiquement.

Étapes :

(1) Copier les fichiers du TP22 dans TP04

Tu copies depuis ton dossier TP22 tout ce qui concerne DNS :

named.conf.local
db.tp.scr
db.1.168.192

Tu renommes :

osiris.named.conf.local
osiris.db.tp.scr
osiris.db.1.168.192

(2) Éditer les fichiers de zone

Le TP dit : garder seulement :

  • les enregistrements pour osiris,

  • ajouter ceux pour isis,

  • supprimer toutes les autres machines (eno, owt, pc1, pc2…).

tp04.SCR.3.2

Parce que ces autres machines recevront leurs enregistrements dynamiquement via DHCP, donc pas dans les fichiers statiques.

(3) Déplacer les fichiers dans /var/lib/bind/

Très important : BIND na pas le droit décrire dans /etc/bind/.

Les fichiers de zones finalisés doivent être placés dans :

/var/lib/bind/db.tp.scr
/var/lib/bind/db.1.168.192

Pourquoi ?

  • Parce que named tourne sous lutilisateur bind,

  • Il doit créer un fichier journal .jnl pour les mises à jour dynamiques,

  • /etc/bind nest pas modifiable par bind.

    tp04.SCR.3.2


PARTIE 3 — Génération et configuration de la clé TSIG (sécurité)

Objectif :

Permettre à DHCP (isis) de mettre à jour DNS (osiris) en toute sécurité.

Générer la clé sur osiris :

tsig-keygen -a md5 tp.scr-key > ddns.key

Installer la clé :

Sur osiris :

/etc/bind/ddns.key
chmod 640 ddns.key
chown root:bind ddns.key

Sur isis :

/etc/dhcp/ddns.key
chmod 640 ddns.key
chown root:bind ddns.key

Pourquoi ?

TSIG = Transaction Signature
→ sécurité = le DNS naccepte des updates que du DHCP, pas dun intrus.


PARTIE 4 — Configuration DNS dynamique (osiris)

Objectif :

Dire au serveur DNS de permettre les mises à jour dynamiques venant de isis.

Modifier /etc/bind/named.conf.local (renommé ici en osiris.named.conf.local)

Exemple :

include "/etc/bind/ddns.key";

zone "tp.scr" IN {
type master;
file "/var/lib/bind/db.tp.scr";
allow-update { key tp.scr-key; };
};

zone "1.168.192.in-addr.arpa" IN {
type master;
file "/var/lib/bind/db.1.168.192";
allow-update { key tp.scr-key; };
};

Pourquoi ?

  • allow-update { key ... } = autoriser DHCP uniquement.

  • Le fichier de zone est dans /var/lib/bind/ pour que BIND puisse écrire le .jnl.


PARTIE 5 — Configuration DHCP avec DDNS (isis)

Objectif :

Faire en sorte que DHCP :

  • attribue des IP aux clients,

  • génère automatiquement :

    • un enregistrement A (nom → IP)

    • un enregistrement PTR (IP → nom)

  • envoie les mises à jour signées au DNS.


Modifier /etc/dhcp/dhcpd.conf (fichier isis.dhcpd.conf)

Exemple minimal :

include "/etc/dhcp/ddns.key";

ddns-update-style standard;
update-static-leases on;

option domain-name "tp.scr";
option domain-name-servers 192.168.1.158; # osiris

zone tp.scr. {
primary 192.168.1.158;
key tp.scr-key;
}

zone 1.168.192.in-addr.arpa. {
primary 192.168.1.158;
key tp.scr-key;
}

subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.11 192.168.1.200;
option routers 192.168.1.254;
}


Pourquoi ?

Parce que DHCP doit :

  • savoir où envoyer les mises à jour DNS → directives zone {...};

  • les signer → directive key;

  • fournir lIP du DNS aux clients → option domain-name-servers.


PARTIE 6 — Lancement manuel des services en mode debug

Objectif :

Observer les transactions DDNS en temps réel.


Sur osiris (DNS) :

named -u bind -g

Cela garde named en avant-plan et affiche les mises à jour.


Sur isis (DHCP) :

dhcpd -d

Cela permet de voir :

  • DHCPDISCOVER

  • DHCPOFFER

  • DHCPREQUEST

  • DHCPACK

  • et surtout → la génération des messages DDNS


Pourquoi ne pas lancer via service bind9 start ?

Parce que tu ne verrais aucun log, et tu ne pourrais pas analyser les mises à jour dynamiques.
Le TP impose explicitement lexécution en mode debug.

tp04.SCR.3.2


PARTIE 7 — Tests fonctionnels

1. Avant la requête DHCP

Sur un client (eno par exemple) :

ip a
cat /etc/resolv.conf

→ pas dIPv4, pas de DNS.


2. Demande dadresse :

dhclient -v eth0

Observations :

Côté DHCP (isis) :

  • DHCPACK

  • "Added new forward map ..."

  • "Added reverse map ..."

Côté DNS (osiris) :

  • Validation TSIG

  • Écriture dans .jnl

  • Mise à jour A + PTR


3. Test DNS :

dig eno.tp.scr
dig -x 192.168.1.X

Résultat attendu :

  • le nom résout vers lIP DHCP,

  • lIP résout vers le nom.


PARTIE 8 — Cas derreur : mauvaise clé TSIG

Le TP demande de modifier légèrement la clé du DHCP pour provoquer une erreur.

tp04.SCR.3.2

Symptômes :

DHCP (isis) :

Continue à fonctionner normalement.

DNS (osiris) :

→ Rejette les mises à jour :

tsig verify failure (BADSIG)

Test DNS :

dig eno.tp.scr

→ Réponse : NXDOMAIN


Pourquoi ?

Parce que la requête DDNS est :

  • signée par DHCP,

  • vérifiée par DNS.

Si la signature ne correspond pas, DNS rejette la mise à jour → donc pas denregistrement.


RÉSUMÉ PARFAIT DU TP04

Partie Ce que tu fais Pourquoi
1 Créer ddns.imn Topo du TP
2 Préparer les zones Utilisation dynamique
3 Créer clé TSIG Sécurisation
4 Configurer DNS Autoriser mises à jour
5 Configurer DHCP Envoyer mises à jour
6 Lancer named & dhcpd en debug Voir les transactions
7 Tester DHCP + DNS Vérification du DDNS
8 Tester erreur de clé Comprendre TSIG