Outils pour utilisateurs

Outils du site


netadmin:configurer_la_resolution_de_nom

:TODO_DOCUPDATE:

Configuration de la résolution de nom

La résolution de nom est le processus en charge de faire correspondre les noms logiques (plus simple à utiliser pour désigner des ressources réseau) aux adresses IP nécessaire aux communications.

En amont de l'usage du service DNS, le système peut utiliser des fichiers locaux pour résoudre des noms de machine : l'ordre de consultation des services de résolution est définit dans le fichier de configuration /etc/nsswitch.conf

Configuration statique des DNS

Traditionnellement le fichier de configuration statique permettant de définir quels serveurs de noms (DNS) doivent être utilisés par le système est /etc/resolv.conf

Dans sa forme la plus simple, le fichier peut avoir le contenu suivant:

resolv.conf
nameserver 208.67.222.222

Dans ce premier exemple un seul serveur de nom est déclaré, il est possible d'en déclarer un deuxième qui sera utilisé par le système si le premier n'est pas accessible:

resolv.conf
nameserver 208.67.222.222
nameserver 208.67.220.220

La directive search permet de définir un ou plusieurs nom de domaines à accoler à un nom qui n'est pas pleinement qualifié.

search example.lan lan
nameserver 127.0.0.1

Dans certains cas, il peut être utile d'interdire la modification du fichier:

chattr +i /etc/resolv.conf

Après arrêt et redémarrage de l'interface via les commandes ifdown et ifup, le client DHCP ne peut plus modifier le fichier /etc/resolv.conf, un message de la forme suivante est retourné

mv: cannot move '/etc/resolv.conf.dhclient-new.39068' to '/etc/resolv.conf': Operation not permitted
bound to 192.168.1.33 -- renewal in 34120 seconds

Si on affiche

# Le fichier resolv.conf n'est pas modifié mais le fichier temporaire existe toujours:
ls /etc/resolv.*
/etc/resolv.conf  /etc/resolv.conf.dhclient-new.39068
 
# contenu du fichier temporaire
cat /etc/resolv.conf.dhclient-new.39068 
nameserver 192.168.1.1

Pour éviter la création de fichiers temporaire a chaque renouvellement du bail DHCP, il faut modifier le fonctionnement du client DHCP.

Le client DHCP invoque un script lui permettant de configurer les interfaces réseaux. Ce script a pour rôle de demander une adresse IP au serveur, de tester la connectivité et de finaliser les paramétrages. Son fonctionnement est critique pour le service, il ne doit pas être directement modifié. Si des paramétrages spécifiques doivent être apportés localement, ils peuvent être apportés grâce aux fonctions d'accroche fournies (hooks). Ces hooks permet à l'utilisateur de redéfinir le comportement du client DHCP qui par défaut crée un fichier /etc/resolv.conf lorsqu'il démarre via une fonction shell nommée make_resolv_conf. Pour éviter la modification du fichier resolv.conf on va redéfinir la fonction dans le

vim /etc/dhcp/dhclient-enter-hooks.d/no-dns-update
no-dns-update
!/bin/sh
make_resolv_conf(){
        :
}

Rendre le script exécutable

chmod go+rx no-dns-update

Références

netadmin/configurer_la_resolution_de_nom.txt · Dernière modification : 2024/01/27 13:37 de yoann