L'Afnic, le registre des domaines .fr, n'a autorisé les caractères accentués — é, è, ç, œ — dans les noms de domaine qu'à partir de 2012, bien après l'ouverture du .fr lui-même : jusque-là, un domaine comme café.fr était tout simplement impossible à déposer tel quel, faute d'un mécanisme pour le transmettre au DNS.
Ce que devient un accent dans le DNS
Un domaine comme café.fr est aujourd'hui encodé sous une forme xn--... avant de partir vers le DNS — la version affichée dans la barre d'adresse et celle qui transite réellement sur le réseau sont deux chaînes différentes. Le « é » lui-même n'existe nulle part dans la requête DNS effective ; seul son équivalent Punycode y circule.
Pourquoi ne pas simplement autoriser l'UTF-8 dans le DNS
Modifier le DNS pour qu'il accepte l'UTF-8 nativement aurait exigé une mise à jour synchronisée de tous les serveurs de noms de la planète. Punycode contourne ce problème : seuls le navigateur et le bureau d'enregistrement doivent comprendre l'encodage, pendant que l'infrastructure DNS sous-jacente continue de ne voir que de l'ASCII.
Cas d'usage courants
- Vérifier quel domaine réel se cache derrière une chaîne
xn--...reçue par e-mail ou message. - Convertir un domaine accentué en sa forme Punycode avant de le configurer dans un panneau DNS qui n'accepte que l'ASCII.
- Diagnostiquer des certificats ou adresses e-mail utilisant l'IDN.
Le risque des homoglyphes existe aussi en français
Le « а » cyrillique et le « a » latin sont visuellement identiques dans la plupart des polices, ce qui permet d'enregistrer des domaines comme « аpple.com » avec une lettre cyrillique pour imiter une marque légitime. En détectant ce mélange suspect d'alphabets dans une même étiquette, les navigateurs modernes affichent directement la forme xn-- plutôt que de la décoder, précisément pour éviter ce type de piège.