Le Domain Name System (ou DNS, système de noms de domaine) est un service permettant d'établir une correspondance entre une adresse IP et un nom de domaine.
Les réseaux informatiques sont composés d'ordinateurs qui communiquent entre eux à l'aide d'adresses numériques uniques, appelées adresses IP. Chaque adresse IP identifie un ordinateur (clients et serveurs). L'adresse numérique facilite grandement le traitement pour l'ordinateur. Or, pour un être humain, il est beaucoup plus facile de se souvenir d'une série de lettres et de mots que d'une suite de chiffres.
Le système des noms de domaine a été inventé pour pallier ce problème : il fait correspondre une adresse alphanumérique (ex. : www.ubuntu-fr.org
) à une adresse IP numérique (ex. : 88.191.119.240
). Cette correspondance – appelée résolution – s'effectue à l'intérieur d'un serveur spécialisé dédié à résoudre des noms de domaine, dit serveur DNS.
Voici une liste de serveurs DNS que vous pouvez librement utiliser :
Centralisé :
.bit
, .chan
, .geek
, .parody
, .oss
, .null
…Décentralisé :
La configuration d'un DNS se fait dans les paramètres système.
On définit ainsi des DNS personnalisés pour tout son réseau local (sauf pour les appareils Android qui utilisent par défaut les DNS de Google, et les appareils iOS qui utilisent ceux d'Apple, il faudra pour ceux-ci les changer manuellement et indépendamment).
La configuration des DNS peut se faire en éditant la connexion correspondante de netplan.
Par exemple pour utiliser les DSN du FDN :
nameservers: addresses: [80.67.169.12, 80.67.169.40]
Si vous avez la gestion d'une grosse infrastructure, vous pouvez être amené à installer et administrer vous-même un serveur DNS. Voici une liste de logiciels jouant le rôle de serveur DNS installables sur Ubuntu :
Même en tant qu'utilisateur, Ubuntu mémorise un cache DNS pour accélérer les accès aux sites. Lors d'un changement de serveur d'un site (surtout si vous administrez des sites web), ce cache peut ne pas se mettre à jour aussi vite que vous en avez besoin.
Pour le vider manuellement, lancer cette commande :
resolvectl flush-caches
La commande:
resolvectl statistics
avant et après le flush peut-être intéressante pour vérifier que le Current Cache Size est passé à 0.
Ubuntu intègre Dnsmasq, un cache DNS qui peut provoquer des perturbations dans la résolution DNS pour un réseau local reposant sur Bind9 par exemple. Le symptôme est simple, parfois l'infrastructure DNS fonctionne, parfois non. La solution peut être de désactiver Dnsmasq.