Comment fonctionne un alias
La RFC 1035 définit le CNAME comme le nom canonique d'un alias : la valeur est le nom principal, le nom de l'enregistrement est l'alias. Quand un résolveur rencontre un CNAME, il recommence sa recherche avec le nom canonique, jusqu'à trouver une adresse.
boutique.exemple.fr. 3600 IN CNAME magasin.plateforme.exemple.
Ici, boutique.exemple.fr n'a pas d'adresse propre : il prend celle de magasin.plateforme.exemple. Si la plateforme change de serveur, votre sous-domaine suit sans que vous touchiez à votre zone.
Quand l'utiliser
- Un sous-domaine qui doit pointer vers un service externe : une boutique, un outil de prise de rendez-vous, un centre d'aide hébergé ailleurs. Le service vous donne alors un nom cible à mettre en CNAME.
- Les vérifications de propriété ou de messagerie que certains fournisseurs demandent sous forme de CNAME, par exemple pour la signature DKIM des courriels.
- « www » vers le domaine nu, pour n'entretenir qu'une seule adresse IP.
Pour pointer un nom vers une adresse IP connue, un enregistrement A suffit et évite une recherche supplémentaire : voir les enregistrements DNS.
La règle qui cause la plupart des erreurs
Un nom qui porte un CNAME ne peut porter aucun autre enregistrement. La RFC 2181 le formule ainsi : un nom a soit un CNAME (accompagné au plus d'enregistrements DNSSEC), soit d'autres enregistrements, jamais les deux.
Deux conséquences pratiques :
- Le domaine nu ne peut pas être un CNAME. exemple.fr porte forcément des NS et un SOA, et souvent des MX et des TXT. Y ajouter un CNAME est interdit, et la plupart des interfaces le refusent. Pour le domaine nu, on utilise un enregistrement A. Certains gestionnaires DNS proposent un équivalent maison (ALIAS, ANAME ou « CNAME flattening ») qui résout la cible à votre place et publie des A : ce n'est pas un CNAME standard.
- Un MX ne doit pas viser un CNAME. La même RFC exige que le serveur désigné par un MX ait ses propres adresses. Voir l'enregistrement MX.
Créer un CNAME
- Relevez le nom cible que vous donne le service (par exemple magasin.plateforme.exemple). C'est un nom, jamais une adresse IP.
- Ouvrez la zone DNS chez le gestionnaire du domaine.
- Vérifiez que le sous-domaine ne porte rien d'autre. S'il a déjà un enregistrement A ou TXT, supprimez-le : le CNAME ne pourra pas coexister.
- Ajoutez l'enregistrement : nom « boutique », type CNAME, valeur le nom cible. Selon l'interface, terminez la valeur par un point ou laissez l'outil l'ajouter.
- Vérifiez avec
dig boutique.exemple.fr CNAME +short, qui doit renvoyer le nom cible. Les options dedigsont décrites dans sa page de manuel.
Les pièges courants
Oublier le point final
Dans un fichier de zone, une valeur sans point final est complétée par le nom du domaine : magasin.plateforme.exemple deviendrait magasin.plateforme.exemple.exemple.fr. Les interfaces web corrigent en général seules ; un fichier de zone écrit à la main, non.
Enchaîner les alias
Un CNAME peut viser un autre CNAME, mais chaque étape ajoute une recherche et un point de panne. Visez directement le nom final quand vous le connaissez.
Un certificat qui ne suit pas
Le visiteur voit l'adresse boutique.exemple.fr, pas celle de la cible. Le service doit donc présenter un certificat valable pour votre sous-domaine : la plupart le génèrent seuls une fois le CNAME en place, à condition de déclarer le sous-domaine chez eux.
Chez Hubspace
Pour un site hébergé chez nous, le domaine nu et « www » pointent par deux enregistrements A vers l'adresse que nous vous communiquons, aujourd'hui 217.160.215.186. Un CNAME n'est utile que pour un sous-domaine qui doit suivre un autre service. La recherche de nom de domaine vous permet d'enregistrer un domaine à votre nom.
Questions fréquentes
www doit-il être un CNAME ou un A ?
Les deux fonctionnent. Un A vers la même adresse que le domaine nu évite une recherche ; un CNAME vers le domaine nu évite de modifier deux lignes le jour où l'adresse change.
Pourquoi mon interface refuse-t-elle le CNAME ?
Le plus souvent, le nom porte déjà un autre enregistrement, ou vous essayez de le poser sur le domaine nu. Supprimez l'enregistrement en conflit, ou utilisez un A.
Un CNAME ralentit-il le site ?
D'une recherche DNS supplémentaire, gardée en cache comme les autres. La différence est imperceptible pour un visiteur.
Articles liés
- Enregistrement DNS : A, AAAA, CNAME, MX et TXTLes enregistrements DNS d'un domaine expliqués : A, AAAA, CNAME, MX, TXT et NS, à quoi chacun sert et comment pointer un domaine vers un site.
- Enregistrement MX : le lire, le modifierL'enregistrement MX désigne les serveurs qui reçoivent le courrier de votre domaine : priorité, valeurs, modification pas à pas et erreurs à éviter.
- Propagation DNS : délai, vérification, remèdesCe qu'est la propagation DNS, pourquoi un changement met de quelques minutes à 48 heures à être vu partout, comment la vérifier avec dig et comment l'accélérer.