{{tag>serveur ftp dns}}
----
====== Les DNS Dynamiques (DDNS) ======
===== Présentation =====
Un DNS //(Domain Name System)// est le processus qui permet de lier un nom de domaine à une adresse IP (« %%www.ubuntu.com%% » à « 91.189.88.180 » par exemple).
Les DNS Dynamiques sont des noms de domaine (du type « monserveur.com ») reliés à une adresse IP dynamique. Ce système est extrêmement pratique quand il s'agit de créer un serveur web personnel, accessible rapidement via un nom de domaine, alors que votre adresse IP change généralement toutes les 24 heures (pour des raisons de sécurité).
===== Exemple =====
Je souhaite héberger un mini-site personnel sur mon ordinateur. Après [[:lamp|installation du serveur Web]], je mets en place mes pages et rends accessible mon site. À l'heure H, mon adresse IP est 122.122.122.122, et pour accéder à mon site personnel, un internaute doit entrer cette adresse dans un navigateur, ou entrer un nom de domaine (dans mon cas http://monserveur.com/) redirigé vers cette adresse.
Le problème est que mon fournisseur d'accès change mon adresse IP toutes les 24 h, pour éviter les risques de piratage, et pour des raisons de coûts qui se révèlent élevés. Le nom de domaine, redirigé à l'origine vers l'adresse IP 122.122.122.122, doit maintenant être redirigé vers ma nouvelle adresse IP 123.123.123.123, attribuée par mon FAI.
C'est exactement ce genre de service que propose les sites de DNS dynamiques (citons No-IP et DynDNS). Je devrai donc installer une petite application qui enverra ma nouvelle adresse IP dès que cette dernière changera. Ainsi, la redirection sera modifiée automatiquement, et je n'aurai plus à changer sans cesse les informations de mon nom de domaine.
[[http://dnslookup.me/dynamic-dns/|Liste complète de service de ce type]].
===== No-IP =====
Nous prendrons dans ce petit tutoriel le site No-IP comme fournisseur de DNS dynamiques.
Deux solutions s'offrent à vous :
* obtenir un nouveau nom de domaine du type « %%http://monserveur.noip.com/%% » ;
* garder votre nom de domaine et rediriger celui-ci vers une nouvelle adresse « %%http://monserveur.noip.com/%% ».
Dans tous les cas vous devrez créer un nouveau nom de domaine (dans notre cas un « sous-domaine », car ce dernier appartiendra à No-IP), donc inscrivez-vous sur [[https://www.noip.com/sign-up|cette page]].
==== Installation du client No-IP ====
Procédure officielle : [[https://www.noip.com/support/knowledgebase/installing-the-linux-dynamic-update-client-on-ubuntu/]]
Avec les [[:sudo|droits d'administration]] :
cd /usr/local/src/
wget https://www.noip.com/client/linux/noip-duc-linux.tar.gz
tar xf noip-duc-linux.tar.gz
cd noip-2.1.9-1/
make install
…
==== Configuration ====
Lancez la configuration de No-IP avec la commande suivante :
sudo noip2 -C
Et suivez les instructions suivantes :
Please enter the login/email string for no-ip.com:
## Entrez votre nom d'utilisateur (créé lors de l'inscription à No-IP)
Please enter the password for user 'your_login':
## Entrez votre mot de passe (créé lors de l'inscription à No-IP)
Please enter an update interval:[30]
## Entrez la fréquence de rafraichissement de l'adresse IP en minutes
Do you wish to run something at successful update?[N]
## Appuyez sur Entrée
==== Démarrer le client No-IP ====
No-IP est maintenant configuré, vous pouvez lancer l'application avec la commande suivante :
sudo noip2
==== Lancement au démarrage ====
Pour activer No-IP au démarrage de votre ordinateur, vérifiez que le service no-ip est lancé au démarrage.
Pour cela, vérifiez qu'un lien existe dans **/etc/rc2.d**.
cd /etc/rc2.d/
puis
ls
Si noip2 (//S20noip2//) apparaît dans la liste, c'est gagné, sinon il suffit de créer un lien du fichier « /etc/init.d/noip2 » vers « /etc/rc2.d/S20noip2 » en tapant la commande :
sudo ln -s /etc/init.d/noip2 /etc/rc2.d/S20noip2
Note : L'ancienne version du client s'appelait « no-ip ».
===== FreeDNS =====
Nous prendrons dans ce petit tutoriel le site https://freedns.afraid.org/ comme fournisseur de DNS dynamiques.
Deux solutions s'offrent à vous :
* obtenir un nouveau sous-domaine d'un nom de domaine parmi une [[https://freedns.afraid.org/domain/registry/|liste énorme de domaine]] du type « %%http://monserveur.undomain.org/%% » ;
* « offrir » votre nom de domaine et gérer les sous-domaines avec FreeDNS, pour vous ou en le partageant avec les autres utilisateurs.
Dans tous les cas vous devrez créer un nouveau sous-domaine, donc inscrivez-vous sur [[https://freedns.afraid.org/menu/|cette page]]
==== Domaine dynamique ====
FreeDNS sait gérer la MAJ de l'IP en analysant l'adresse IP source d'une requête HTTP. Il suffit de se rendre sur [[https://freedns.afraid.org/dynamic/|cette page]] pour trouver en bas un lien //Direct URL//. L'URL peut alors être utilisée avec une commande wget qui sera placée dans une tâche planifiée cron.
wget -q -O- --read-timeout=0.0 --waitretry=5 --tries=400 https://freedns.afraid.org/dynamic/update.php?WDJobXquelquechosequidependdevotreddns=
===== DynDNS =====
La politique d'utilisation de DynDNS a changé : le service fourni est maintenant exclusivement payant. Il vous faudra donc choisir un autre fournisseur si vous souhaitez obtenir un service gratuit.
Nous prendrons dans cette partie le site //dyndns.org// comme fournisseur de DNS dynamiques.
Deux solutions s'offrent à vous:
* obtenir un nouveau nom de domaine du type **%%http://votredomaine.dyndns.org/%%** ;
* garder votre nom de domaine et rediriger celui-ci vers une nouvelle adresse **%%http://votredomaine.dyndns.org/%%**.
Dans tous les cas vous devrez créer un nouveau nom de domaine (dans notre cas un « sous-domaine », car ce dernier appartiendra à DynDNS), donc inscrivez-vous sur [[http://www.dyndns.org|cette page]].
===== Installation de ddclient =====
→ Voir la page spécifique [[ddclient]].
Pour d'autres plateformes : http://www.dyndns.com/support/clients/
===== Redirection « propre » d'un nom de domaine =====
Vous possédez un nom de domaine tout beau tout neuf, **votredomaine.fr**, mais pas d'IP fixe et vous voudriez héberger votre site directement sur votre ordinateur personnel. Tout cela pour des questions financières, ou de commodité : configuration du serveur aux petits oignons, espace Web et SQL limités uniquement par la taille de votre disque dur, fierté d'avoir monté son serveur personnel, ou tout simplement parce que vous venez de visionner la vidéo [[http://www.fdn.fr/Internet-libre-ou-Minitel-2.html|Internet libre ou Minitel 2.0 ?]] de Benjamin Bayart lors des 8e Rencontres Mondiales du Logiciel Libre (RMLL) et que vous vous sentez l'âme d'un libriste convaincu qu'internet doit rester libre.
Quoi qu'il en soit, lorsque vous tentez de rediriger votre **votredomaine.fr** vers votre site, votre [[wpfr>Registrar|registrar]] ne vous propose que 3 ridicules choix :
* **une redirection permanente** : le client internet (ou le bot de référencement) reçoit la directive HTTP/1.1 301 MOVED PERMANENTLY.
* Ce qui lui indique que l'adresse demandée **votredomaine.fr** n'existe plus et qu'il faut se rediriger vers l'adresse indiquée, souvent vous y aurez configuré l'adresse d'un sous-domaine du type **votredomaine.dyndns.org**. Ce qui a pour principale conséquence que votre **votredomaine.fr** disparaît de la barre d'adresse du navigateur au profit de **votredomaine.dyndns.org** et ce sera donc ce dernier qui sera référencé par les moteurs de recherche. D'où l'utilité d'avoir acheté un nom de domaine... :-/
* **une redirection temporaire** : le client internet (ou le bot de référencement) reçoit la directive HTTP/1.1 307 TEMPORARY REDIRECT.
* Idem que précédemment, sauf que les moteurs de recherche reviendront de temps en temps vérifier **votredomaine.fr** au cas où ça aurait changé. Accessoirement, ils n'effaceront pas les anciens référencements.
* **une redirection par frame** : ici votre site internet est affiché dans un [[wpfr>Hypertext_Markup_Language#.C3.89l.C3.A9ments_de_HTML|cadre]] qui prend toute la fenêtre.
* Vous gardez **votredomaine.fr** dans la barre d'adresse, mais les moteurs de recherche ne référenceront pas ou alors très mal votre site avec ce genre de bidouillage.
La solution ici est de créer un CNAME (//Canonical NAME// ou sous-domaine) dans la gestion de vos [[wpfr>Domain_Name_System#Principaux_enregistrements_DNS|zones DNS]] qui fournira votre adresse IP dynamique par l'intermédiaire d'un service comme //dyndns.org//, et de faire une redirection permanente de **votredomaine.fr** vers le CNAME créé.
www 12345 IN CNAME votredomaine.dyndns.org.
(Si votre registrar vous propose d'éditer votre fichier de zone en mode texte, il ne faut pas oublier le point final !)
==== Résumé des étapes ====
- Créez une adresse du type //dyndns.org// que l'on appellera **votredomaine.dyndns.org**.
- Configurez le démon //ddclient// pour qu'il mette à jour votre adresse IP automatiquement.
- Faites une redirection permanente de **votredomaine.fr** vers **www.votredomaine.fr**.
- Créez le CNAME **www**, et faites-le pointer vers **votredomaine.dyndns.org**.
- Patientez.
La dernière étape est en fait due au système de cache des serveurs DNS. En effet ceux-ci, pour des raisons d'efficacité, gardent en mémoire l'adresse des noms de domaine sur lesquels ils ont fait des recherches récemment. Ce temps de vie (TTL: Time To Live) est en général de 3 heures. C'est donc la durée à attendre pour que tous les serveurs DNS de la planète prennent en compte votre nouveau CNAME dans leur mémoire.
Inspiré de la page : http://sebsauvage.net/comprendre/dns/index.html
===== Accès en local à votre site internet derrière un routeur ou une box =====
Si vous êtes derrière un routeur ou une box, et qu'à partir du réseau local vous tentez d'accéder à votre site en tapant son adresse internet, vous aurez sûrement la désagréable surprise de vous retrouver sur la page de configuration de votre routeur ou de votre box. Ce sont des choses qui arrivent et ce n'est pas grave. C'est juste que votre routeur/box ne vous autorise pas à sortir sur internet, pour revenir l'instant d'après sur votre réseau et accéder ensuite à votre site.
Pour contrer ce désagrément, il vous suffit d'[[:tutoriel:comment_modifier_un_fichier|ouvrir le fichier]] **/etc/hosts** sur la machine **CLIENTE** (celle qui tente d'accéder au serveur) et d'y ajouter la ligne suivante :
127.0.0.1 localhost
192.168.*.* votredomaine.fr <---- Ligne à ajouter
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
Les * sont à remplacer par l'adresse exacte en local de votre serveur. Celui-ci commençant la plupart du temps par « 192.168 ».
Vous pouvez y ajouter autant de lignes que d'adresses IP ou de noms de domaine dont vous avez besoin.
Le fichier [[wpfr>Hosts|hosts]] est en fait l'ancêtre des serveurs DNS, lorsqu'internet ne comptait que quelques machines reliées entre elles.
Deuxième solution((testé sous la //neufbox//)) : vous pourrez certainement ajouter une ligne de DNS dans la configuration de la box. Ainsi toutes les machines reliées à la box en réseau local auront accès au serveur. Pratique pour ne pas avoir à modifier tous les //hosts//.
===== Redirection des ports (Port Forwarding ou NAT) =====
Si vous êtes derrière un routeur et que vous voulez utiliser la redirection no-ip ou dyndns, n'oubliez pas de rediriger le port correspondant au service (par exemple le port 80 pour un serveur Web) vers la machine où tourne le serveur du service en question.
* [[wpfr>Network_address_translation|En savoir plus sur la redirection de port (NAT)]]
* [[wpfr>Liste_des_ports_logiciels|Liste des numéros de ports correspondants aux services]]
(au moins trois cents routeurs sont référencés et avec à chaque fois une explication détaillée pour beaucoup de logiciels différents)
----
//Contributeurs : [[https://wiki.ubuntu.com/DynamicDNS|Traduit]] et amélioré par [[utilisateurs:Kmeleon]].//