DNS - Système des noms de domaine

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.

Fonctionnement du système des noms de domaine (Source: Wikipedia)

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.

Choix d'un serveur DNS

Voici une liste de serveurs DNS que vous pouvez librement utiliser :

Centralisé :

  • Résolveurs DNS ouverts du FDN : DNS français contre la censure de l'association French Data Network, association bien connue et de confiance.
  • UncensoredDNS : DNS danois contre la censure
  • OpenNIC Project est une organisation qui dirige un réseau alternatif de DNS. OpenNIC est détenu et exploité par la communauté OpenNIC. L'adhésion est ouverte à tous ceux qui partagent un intérêt à garder DNS gratuit pour tous les utilisateurs. L'objectif est de vous fournir des services DNS rapides, neutres et fiables et l'accès à des domaines qui ne sont pas administrés par l'ICANN. OpenNIC offre une résolution à tous les domaines de l'ICANN ainsi que les TLDs propres à OpenNIC comme : .bit, .chan, .geek, .parody, .oss, .null

Décentralisé :

  • CoDoNS Cooperative Domain Name System

Configuration d'un DNS graphiquement

La configuration d'un DNS se fait dans les paramètres système.

Capture sélection réseau Capture IPv4

  1. Dans la section Réseau cliquez sur l'engrenage à droite de la connexion active – Connectée (ou celle dont vous souhaitez personnaliser les DNS).
  2. Dans l'onglet IPv4, désélectionnez DNS Automatique et entrez les adresses des serveurs DNS IPv4 de votre choix, séparées par des virgules.
  3. Vous pouvez en faire de même avec l'onglet IPv6 si les serveurs DNS proposent aussi des résolveurs IPv6.
Il est aussi possible de définir des DNS personnalisés au niveau du serveur DHCP. Il s'agit généralement de la box Internet, à condition que le FAI le permette (c'est le cas de Free, mais pas de Orange par exemple). C'est toujours le cas sur un routeur dédié.

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).

Configuration d'un DNS avec le terminal

Les méthodes en lignes de commande sont à effectuer sur les versions serveur d'Ubuntu, pour les versions desktop il est préférable de passer par l'utilitaire graphique (voir la section Configuration d'un DNS graphiquement).

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 :

Voir aussi certains projets d'OS indépendants dont c'est le rôle exclusif, tels que Pi-hole.

Vider le cache DNS

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.

Utilisation d'un serveur DNS local

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.

  • dns.txt
  • Dernière modification: Le 25/05/2025, 23:37
  • par krodelabestiole