dns
Ceci est une ancienne révision du document !
Table des matières
Installation et configuration d'un serveur DNS avec Bind9
1. Introduction
Un serveur DNS (Domain Name System) traduit les noms de domaine en adresses IP. Bind9 est la solution la plus répandue sous Linux.
Cas d'usage :
- Résolution de noms interne/externe
- Hébergement de zones DNS locales
- Cache DNS pour accélérer les requêtes
2. Prérequis
- Serveur Debian/Ubuntu
- IP statique configurée
- Accès root/sudo
3. Installation
3.1. Installation de Bind9
sudo apt update sudo apt install bind9 bind9utils dnsutils -y
3.2. Structure des fichiers
| Fichier | Description |
| `/etc/bind/named.conf` | Fichier de configuration principal |
| `/etc/bind/named.conf.local` | Zones locales personnalisées |
| `/etc/bind/db.local` | Exemple de zone |
4. Configuration de base
4.1. Configuration d'une zone forward (exemple pour "lan.intra")
Éditez le fichier de zones locales :
sudo nano /etc/bind/named.conf.local
Ajoutez :
zone "lan.intra" {
type master;
file "/etc/bind/db.lan.intra";
};
Pour le DNS Slave :
zone "lan.intra" {
type slave;
file "/var/cache/bind/zones/db.lan.intra";
masters { [ipDuMaster] ;};
};
4.2. Création du fichier de zone
Copiez le modèle :
sudo cp /etc/bind/db.local /etc/bind/db.lan.intra
Puis éditez-le :
;
; Zone DNS pour lan.intra
;
$TTL 86400
@ IN SOA ns1.lan.intra. admin.lan.intra. (
2024040101 ; Serial
3600 ; Refresh
1800 ; Retry
604800 ; Expire
86400 ) ; Minimum TTL
@ IN NS ns1.lan.intra.
ns1 IN A 192.168.1.10
router IN A 192.168.1.1
pc01 IN A 192.168.1.100
4.3. Configuration du résolveur
Pour utiliser ce serveur comme DNS local :
sudo nano /etc/resolv.conf
Ajoutez :
nameserver 192.168.1.10
5. Gestion du service
5.1. Redémarrer Bind9
sudo systemctl restart bind9 sudo systemctl enable bind9
5.2. Vérification
# Test de configuration sudo named-checkconf sudo named-checkzone lan.intra /etc/bind/db.lan.intra # Requête test dig ns1.lan.intra @localhost
6. Configuration avancée
6.1. Zone reverse (PTR)
Ajoutez dans `named.conf.local` :
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.192.168.1";
};
Créez le fichier :
;
; Zone reverse pour 192.168.1.0/24
;
$TTL 86400
@ IN SOA ns1.lan.intra. admin.lan.intra. (
2024040101
3600
1800
604800
86400 )
@ IN NS ns1.lan.intra.
10 IN PTR ns1.lan.intra.
100 IN PTR pc01.lan.intra.
6.2. Forwarders (pour Internet)
Éditez :
sudo nano /etc/bind/named.conf.options
Ajoutez :
forwarders {
8.8.8.8;
1.1.1.1;
};
7. Dépannage
7.1. Commandes utiles
| Commande | Description |
| `dig @localhost example.com` | Test de résolution |
| `nslookup pc01.lan.intra` | Vérification simple |
| `sudo journalctl -u bind9 -f` | Logs en temps réel |
7.2. Erreurs courantes
- SERVFAIL → Vérifiez les permissions sur `/etc/bind`
- NXDOMAIN → Zone mal configurée
- Refused → Bind9 n'écoute pas sur l'IP correcte
8. Sécurité
# Désactive la version DNS sudo nano /etc/bind/named.conf.options
Ajoutez :
version "none";
allow-transfer { none; };
9. Documentation complémentaire
<box warning|Important> Pensez à incrémenter le Serial (AAAAMMJJNN) à chaque modification de zone ! </box>
<box success|Astuce> Pour une interface graphique, installez Webmin :
sudo apt install webmin
</box>
dns.1758525064.txt.gz · Dernière modification : (modification externe)
