====== Obtenir un nom de domaine ======
===== À quoi sert un nom de domaine ? =====
Sur Internet, un ordinateur est accessible par son adresse IP. La machine qui sert ce site a par exemple pour adresse ''2a01:e34:ee8f:150::12''. On fait plus sexy…
Pour éviter d'avoir à retenir ça, on utilise des noms de domaines, par exemple ''auto-hebergement.fr''. Ainsi, dont le sous-nom ''www.auto-hebergement.fr'' se //résout// en ''2a01:e34:ee8f:150::12''. Ces associations (nom, adresse) s'appellent des //enregistrements//, et l'ensemble du système de noms de domaine s'appelle le DNS (//domain name system//).
Pour beaucoup de services, il est //possible// de se passer d'un nom de domaine, en écrivant l'adresse IP //en dur// dans leur configuration; cependant :
* un serveur mail //peut// techniquement fonctionner sans nom de domaine (adresse du type ''johndoe@[192.2.0.42]''), mais il y a de fortes chances pour que les filtres anti-spam bloquent les mails envoyés par une telle adresse ;
* un serveur web peut fonctionner sans nom de domaine, mais il sera impossible d'utiliser des hôtes virtuels par noms de domaine (plusieurs sites sur le même serveur, distingués par leur nom, par exemple http://www.auto-hebergement.fr/ et http://wiki.auto-hebergement.fr/).
===== Achat =====
Les noms de domaine de niveau supérieur, comme ''fr'', ''com'', ''net'', ''eu'', ''name'' et compagnie sont gérés par des //registres// (ou //registers//) : ainsi, ''fr'' est géré par l'AFNIC. Pour disposer d'un nom de domaine, il faut l'acheter à l'année auprès d'un //bureau d'enregistrement// (ou //register//), qui se charge de le déclarer au registre concerné : ça coûte 5 à 15 euros par an, selon le domaine de niveau supérieur.
Vous devez donc vous rendre sur le site d'un bureau d'enregistrement, pour y acheter le domaine de votre choix. Parmi les bureaux d'enregistrement les plus connus :
* [[http://www.gandi.net/|Gandi]] ;
* [[http://www.ovh.com/|OVH]] ;
* [[http://www.1and1.fr/|1&1]] ;
* [[http://bookmyname.com/|BookMyName.com]]…
===== Les gratuits =====
Quelques registres de niveau supérieur et registres de niveau secondaire utilisant leur propre nom peuvent fournir gratuitement des noms de domaine (en ''.tld'' pour les registres de niveau supérieur, en ''.registre.tld'' pour ceux de niveau secondaire) :
* [[http://eu.org/|EU.org]] fournit des noms de domaine en ''.eu.org'' ou ''.fr.eu.org'' (la validation des demandes peut prendre du temps) ;
* [[http://fdn.fr/|FDN]] fournit des noms de domaine en ''.fdn.fr'' et ''.fdn.org'' pour ses membres ;
* [[http://dot.tk/|Dot TK]] fournit des noms de domaine en ''.tk'' gratuitement pourvu que vous ayez plus de 25 visiteurs par 90 jours (facile car les bots d'indexation semblent comptabilisés)((Voir aussi [[http://www.vanaryon.eu/2010/02/nom-de-domaine-gratuit-en-tk/|ce billet]])) ;
* [[http://www.azote.org/|Azote.org]] fournit des noms de domaine en ''.asso.st'', ''.biz.st'', ''.fr.nf'', ''.ze.cx'', ''.fr.cr'' ou ''.infos.st'' ;
* [[http://www.co.cc/|CO.CC]] fournit des noms de domaine en ''.co.cc'' ;
* [[http://za.net|ZA NiC]] fournit des noms de domaine en ''.za.net'' ou ''.za.org'' ;
* [[http://www.42registry.org/|42Registry]] fournit des noms de domaine en ''.42'' pour les utilisations non commerciales, résolvables uniquement par ceux qui le prennent en charge.
Les noms de domaine de niveau tertiaire, en ''.registre.tld'' fonctionnent comme tout nom de domaine, la seule différence étant la présence d'un niveau de plus dans le nom de domaine. Certains noms de domaine de niveau supérieur utilisent d'ailleurs systématiquement un niveau supplémentaire, par exemple ''uk'' avec ''co.uk'', ''org.uk'', ''net.uk''.
===== Utilisation =====
Vous avez acheté ''example.com''. Pour être utilisable, votre nom de domaine doit avoir des //serveurs de nom//, qui répondront aux demandes de résolution (« qui est ''www.example.com'' ? »). Pour commencer à utiliser votre domaine, votre bureau d'enregistrement prend en charge ce service, et vous permet de définir vos enregistrements depuis votre compte client. Plus tard, vous pourrez installer votre propre [[services:nom_de_domaine|serveur de nom]].
En fait, maintenant que vous êtes administrateur de ''example.com'', c'est vous qui définissez à votre gré tous les noms situés //en-dessous// de ce domaine (comme ''www.example.com'', ''mail.example.com'' ou ''tintin.example.com''), ainsi que le nom du domaine lui-même (''example.com''). Toutes ces définitions sont des ''enregistrements'' de votre domaine. Il existe plusieurs types d'enregistrements, dont voici les principaux :
* **A :** définit l'adresse IPv4 d'un ordinateur.
tintin.example.com. A 192.0.2.12
* **AAAA :** définit l'adresse IPv6 d'un ordinateur.
tintin.example.com. AAAA 2001:db8:4212:4212:4212:4212:4212:4212
* **MX :** définit le serveur de [[services:courrier_électronique|courrier]] associé à un nom de domaine (il doit pointer vers un nom qui a lui-même un enregistrement A ou AAAA (ou les deux)).
example.com. MX tintin.example.com.
listes.example.com. MX milou.example.com.
* **NS :** définit les serveurs de [[services:nom de domaine|nom]] pour une zone, c'est à dire les serveurs qui fournissent les enregistrements DNS situés sous ce nom (comme le MX, il doit pointer vers un nom qui a lui-même un enregistrement A ou AAAA). Initialement ces enregistrements pointent vers les serveurs de votre bureau d'enregistrement qui assure le service de votre nom de domaine, mais vous pourrez par la suite [[services:nom de domaine|assurer ce service vous-même]].
example.com. NS ns1.example.com.
example.com. NS ns2.example.com.
* **CNAME :** indique qu'un nom n'est en réalité qu'un //alias// vers un autre nom de domaine, appelé le nom canonique (d'où CNAME, //canonical name//). Tous les enregistrements (A, AAAA, MX… lorsqu'ils existent) du nom de domaine pointés par l'enregistrement CNAME seront ainsi « aliasés ». L'utilisation la plus intéressante dans le cadre d'un auto-hébergement est de faire pointer votre << vrai >> nom de domaine vers un nom de domaine chez DynDNS. Ainsi, votre nom domaine pointera toujours vers votre adresse IP, même si cette dernière change.
toto.example.com. CNAME toto.dyndns.org.
La norme qui définit le DNS interdit d'utiliser simultanément un CNAME et un autre enregistrement avec le même nom. En fait, il faut considérer qu'un CNAME définit un autre nom pour //tous// les enregistrements associés à un nom. Ainsi, dans l'exemple suivant, ''example.org.'', alias pour ''example.com.'', aura par conséquent le même NS et le même MX que ''example.com.'', et définir un MX spécifique pour ''example.org.'' serait une erreur :
example.com. NS tintin.example.com.
example.com. MX tintin.example.com.
example.org. CNAME example.com.
Une conséquence de cette restriction est qu'il n'est possible de faire d'un domaine complet un alias pour un domaine DynDNS que si votre bureau d'enregistrement vous autorise à retirer les enregistrements NS pour ne laisser qu'un unique enregistrement CNAME, ce qui n'est en pratique jamais le cas.
Après avoir acheté votre nom de domaine, votre bureau d'enregistrement a probablement déjà défini des enregistrements pointant vers ses propres serveurs, pour fournir un service minimal pour commencer. Pour pouvoir servir votre propre site, faites-les pointer vers l'adresse IPv4 publique de votre connexion et sur l'adresse IPv6 de votre serveur domestique.
==== Exemple de configuration ====
Voici un exemple de fichier de zone que vous pourrez soumettre à votre bureau d'enregistrement afin d'utiliser votre nom de domaine au plus vite. Cet exemple devra bien sûr être modifié pour utiliser votre adresse IPv4 publique et l'adresse IPv6 de votre serveur domestique si besoin. Vous pourrez vous en servir comme base pour y ajouter vos différents sous-domaines et, le cas échéant, d'autres machines.
; Déclaration de l'adresse IP du domaine
@ 3600 IN A 192.0.2.12
@ 3600 IN AAAA 2001:db8:4212:4212:4212:4212:4212:4212
; Déclaration des machines et des sous-domaines
; - Première machine, hébergeant un serveur Web et un SFTP
tintin 3600 IN A 192.0.2.12
tintin 3600 IN AAAA 2001:db8:4212:4212:4212:4212:4212:4212
; - Seconde machine, hébergeant une messagerie sur la même IPv4 publique
milou 3600 IN A 192.0.2.12
milou 3600 IN AAAA 2001:db8:1344:1344:1344:1344:1344:1344
; - Services Web et SFTP, sur la machine Tintin
www 3600 IN CNAME tintin
sftp 3600 IN CNAME tintin
; - Services de courrier, sur la machine Milou
@ 3600 IN MX milou
webmail 3600 IN CNAME milou
La partie numérique 3600 correspond à la durée de vie (//time to live//, exprimé en secondes) des enregistrements lors de leur mise en cache ; l'indication ''IN'' désigne la //classe// Internet, normalement implicite mais nécessaire pour certains sous-traitants, par exemple [[http://www.gandi.net/|Gandi]].
Lors de la mise en place de votre propre [[services:nom de domaine|serveur de nom]], il faudra ajouter les lignes SOA et NS décrites précédemment.