Comment ne pas casser sa zone DNS (et son domaine) ?

21 Juil, 2020  - écrit par  dans Noms de domaine

La syntaxe du DNS est souvent considérée comme une sorte de connaissance ésotérique, transmise par des gourous et réservée à un groupe restreint d’initiés. Et pour cause : on a souvent l’impression qu’un seul faux mouvement peut endommager votre fichier de zone, mettre votre site web hors ligne et bloquer l’arrivée des courriels.

Soyez rassuré, votre zone DNS n’a rien de mystique : apprendre à modifier sa zone DNS et à gérer ses paramètres DNS est à la portée de tous.

Cela ne veut pas dire qu’il n’y a pas de pièges pour autant. Retour sur les erreurs les plus courantes afin de vous aider à les éviter.

La syntaxe est primordiale

Et c’est là qu’intervient ce qu’on appelle la syntaxe. Si vous êtes un passionné d’informatique ou de langues, vous savez probablement ce qu’est la syntaxe, mais au cas où vous ne le sauriez pas, considérez la syntaxe comme une grammaire pour le DNS. Et le système DNS est très stricte en terme de grammaire, aucune erreur n’est acceptée.

Une erreur de syntaxe DNS est à l’origine de la plupart de ces pièges. Vous pensez dire une chose, mais la grammaire intransigeante du DNS la rejette ou l’interprète autrement.

L’anatomie de l’enregistrement DNS

Décomposons très rapidement ce qui compose un enregistrement DNS.

Chaque enregistrement DNS est composé des éléments de base suivant :
  • Le nom est celui que vous définissez dans cet enregistrement DNS.
  • Le TTL est le « Time To Live ». Pour faire simple, il s’agit de la fréquence à laquelle un serveur DNS doit vérifier si cet enregistrement a changé. La durée est exprimée en secondes.
  • Le type est le type d’enregistrement dont il s’agit. Chaque type d’enregistrement a une fonction différente.
  • Un CNAME est également appelé un alias, et il vous permet de faire pointer un nom de domaine vers un autre.
  • Un enregistrement A vous permet de faire pointer un nom de domaine vers une adresse IPv4 (AAAA pour les nouvelles IPv6).
  • Un enregistrement MX fait pointer votre nom de domaine vers un serveur de mail.

Les erreurs DNS les plus courantes

Suite à cette courte mise au point, passons à la liste des erreurs courantes du DNS.

1. Le point est manquant

Lorsque vous faites pointer un domaine ou un sous-domaine vers un autre nom de domaine, celui-ci doit se terminer par un point (‘.’), sinon il ne fonctionne pas.

Syntaxe relative vs. syntaxe absolue ou Fully Qualified vs. Partially Qualified

Pourquoi ? Selon votre fournisseur ou votre interface DNS, vous aurez à utiliser soit une syntaxe relative soit une syntaxe absolue.

Quelle est la différence ?

Nous allons faire une analogie toute simple : pensez aux prénoms par rapport aux noms complets. Lorsque vous recherchez une personne, vous utiliserez à coup sûr son nom complet – prénom(s), nom de famille et, le cas échéant, nom de jeune fille – afin de vous assurer de trouver la bonne personne (et même alors, contrairement aux domaines, il peut y avoir des doublons).

Toutefois pour rechercher quelqu’un de votre propre famille, le prénom est suffisant.

C’est la même chose avec le DNS. Le nom complet d’un domaine – prénom(s), nom de famille – est appelé « Fully Qualified Domain Name » (ou FQDN). Cela signifie que vous devez inscrire le <i>nom de domaine complet</i>. Et c’est crucial – y compris le point.

Pourquoi le point ? Il représente « la zone racine ». C’est ce qui indique qu’il est question de DNS et non d’un autre système de nommage. Un nom de domaine peut être lu de droite à gauche (c’est ainsi qu’il est lu par les machines), hiérarchiquement selon l’ordre établi ci-dessus. Étudions le FQDN news.gandi.net. :

  • . – il est ici question du point le plus à droite de notre exemple : cela nous place dans le système de noms de domaine (DNS). Théoriquement, un nom de domaine pourrait être en dehors du DNS, mais n’allons pas jusque là.
  • .net – qui nous place dans la zone « .net » du DNS.
  • gandi – maintenant nous sommes dans la zone « gandi » de la zone « .net » du DNS.
  • news – et cela nous place dans l‘enregistrement « news » de la zone « gandi » de la zone « .net », du système DNS.

Toutefois, dans une zone DNS, vous pouvez simplement utiliser la syntaxe relative, c’est-à-dire que vous utilisez le nom de domaine « partiellement qualifié » pour simplifier les choses. Ainsi, dans la zone gandi.net, « news » peut être un nom de domaine partiellement qualifié, qui est facilement assimilable au nom de domaine pleinement qualifié news.gandi.net.

Le piège est ici de faire pointer un sous-domaine vers un autre nom de domaine. C’est généralement avec un enregistrement CNAME, ANAME, ou MX. Si vous ne faites pas pointer votre sous-domaine vers le Fully Qualified Domain Name, alors une zone utilisant une syntaxe relative pensera simplement que vous vouliez dire le sous-domaine de la zone dans laquelle vous vous trouvez.

Ainsi, si nous créons un CNAME qui pointe news.gandi.net vers le nom de domaine gandi.net, mais que nous oublions de mettre le point à la fin pour en faire gandi.net., l’enregistrement sera lu comme pointant news.gandi.net vers gandi.net.gandi.net.

2. Ne pas utiliser le @

Cette erreur est l’inverse de la précédente. Dans la colonne Nom, vous renseignez généralement le sous-domaine que vous essayez de définir, donc « www » si vous souhaitez définir « www » dans la zone pour gandi.net, ou en d’autres termes, si cet enregistrement est pour www.gandi.net.

Mais que faire si vous voulez juste mettre un enregistrement pour gandi.net, mais sans www ? Pour représenter votre nom de domaine, utilisez le symbole @.

L’erreur consiste alors à utiliser autre chose, généralement à taper le nom de domaine lui-même, au lieu du @.

3. Dupliquer les enregistrements MX

Avant d’ajouter de nouveaux enregistrements MX pour un nouveau service de mail sur votre nom de domaine, assurez-vous de supprimer les enregistrements MX du service de mail existant. Sinon, vous finirez par créer des enregistrements MX en double qui pointent vers des endroits différents.

Cette erreur vient du fait qu’il est possible d’avoir plusieurs enregistrements MX dans votre zone DNS en cas de besoin d’un serveur de secours, de sorte que si votre serveur de messagerie de première priorité n’est pas disponible, le mail que vous recevez sera tout de même délivré à un serveur de messagerie de secours, vous permettant de recevoir votre email.

Mais si vous avez des enregistrements MX pointant vers deux services de messagerie différents, vous finirez par recevoir une partie de vos mails avec un service de messagerie et une autre partie avec un autre.

Cette erreur se produit également lorsque des personnes veulent rediriger leurs mails vers un autre service de messagerie et essaient d’ajouter de nouveaux enregistrements MX dans l’espoir que le mail soit distribué aux deux services de messagerie.

4. Modifier le TTL

Cette erreur découle avant tout d’une mauvaise appréhension du TTL plus que d’une erreur de syntaxe. Pour rappel, TTL signifie Time To Live, littéralement, Temps à vivre.

Le problème réside dans le fait que, précédemment, le TTL sur un enregistrement DNS a été réglé sur une valeur importante, ou du moins plus longue que vous le souhaiteriez.

L’administrateur du domaine veut alors modifier l’enregistrement dans l’espoir de le faire se propager rapidement.

Le TTL contrôle essentiellement la durée de mise en cache d’un enregistrement. Nous garderons l’explication des résolveurs DNS pour une autre fois, mais il suffit de dire que, sur internet, les serveurs DNS ne vérifient pas constamment tous les enregistrements DNS pour les mettre à jour chaque fois qu’ils en ont besoin. Au lieu de cela, les enregistrements DNS sont mis en cache pendant un certain temps et ce temps est contrôlé par le TTL.

Voici donc l’astuce : lorsque vous établissez un nouveau TTL sur un enregistrement, ce nouveau TTL doit également se propager sur internet, ou plutôt, se propager sur tous les serveurs DNS primaires. Et les serveurs DNS ne vérifieront même pas la nouvelle TTL avant que leur cache actuel n’ait expiré.

Cela signifie qu’un administrateur de domaine voudra mettre à jour son nouvel enregistrement en mettant un TTL plus court et en pensant que la propagation sera de ce fait plus courte.

Mais en réalité, il n’y a rien à faire pour permettre à vos enregistrements de se propager plus rapidement. Si vous aviez un long TTL, alors vous devrez attendre l’expiration de celui-ci pour que les DNS commencent à aller chercher le nouvel enregistrement.

Bien entendu, d’autres erreurs sont sources de problèmes sur les enregistrement DNS, mais celles abordées ci-dessus sont les plus courantes.

Nous espérons que vous vous sentez déjà plus à même d’éviter ces pièges. Si toutefois vous avez besoin d’aide pour la gestion de vos DNS chez Gandi, n’hésitez pas à contacter notre service clientèle.