4 - Protocole DNS
Les activités précédentes nous ont montré que Internet pouvait presque se résumer à deux protocoles :
- Le protocole IP pour localiser les machines et savoir où tranmettre le paquet IP.
- Le protocole TCP pour découper le message en plusieurs sous-messages et vérifier qu'ils soient bien arrivés.
Nous allons aujourd'hui voir un protocole supplémentaire qui permet à ces communications de s'établir sans que l'utilisateur n'ai à fournir l'adresse IP du service à joindre : le protocole DNS.
Vous ne connaissez les adresses IP des sites sur lesquelles vous allez ?
Documents de cours :
1 - Adresses IP
Pour permettre au paquet IP de passer de machine en machine, il faut bien disposer d'une information permettant de faire l'un de ces trois choix :
Couche Réseau
Cette couche se charge de faire la liaison entre deux ordinateurs qui ne sont pas nécessairement sur le même réseau.
La couche Réseau communique avec une autre couche Réseau en passant par la couche inférieure Accès réseau en générant des communications qu'on nomme paquets.
Les ordinateurs sont identifiés par une adresse qu'on nomme adresse IP.
Une adresse en version IP v4 nécessite 4 octets en mémoire. On la présente comme un ensemble de 4 entiers séparés par des points. Exemple d'adresse IP v4 : 50.250.255.12
.
Une adresse en version IP v6 nécessite 16 octets en mémoire. On la présente comme un ensemble de 8 nombres hexadécimaux (il peut y avoir des a, b, c, d, e et f) séparés par des doubles points: Exemple d'adresse IP v6 : 2a01:cb0c:96c:d400:da8d:7fff:ffd8:a112
. On trouve parfois la présence de deux doubles points de suite sur certaines adresses.
Le protocole typique de cette couche est le protocole IP qui se charge de transporter les paquets IP de l'émetteur au récepteur en transmettant le paquet de machines en machines. Il se charge également de détruire les paquets qui traînent depuis trop longtemps sur le réseau.
A l'heure actuelle, les systèmes IPv4 et IPv6 cohabitent.
Couche Accès réseau
Cette couche se charge de faire la liaison entre deux cartes réseaux qui sont en communication directe sur le même réseau. Cette couche fait donc la liaison avec le monde physique.
La couche Accès réseau communique avec une autre couche Accès réseau en générant des communications qu'on nomme trames.
Une carte réseau est identifiée par une adresse qu'on nomme adresse MAC (Media Access Control).
Les adresses MAC nécessitent 6 octets. Elles se présentent sous la forme d'un ensemble de 6 chiffres hexadécimaux séparés par deux points doubles. Exemple : 5E:FF:56:A2:AF:15 .
Nous n'avons pas encore vu de protocole propre à cette couche.
2 - Nom et adresse IP
C'est bien beau tout ça mais vous n'avez jamais placé d'adresses IP dans la barre d'adresses de votre navigateur.
On y place simplement le nom du site qu'on veut joindre.
Comment votre machine parvient-elle alors à trouver l'adresse IP qu'il faut joindre ?
Première façon de faire : utiliser un site où quelqu'un a déjà tout programmé pour répondre à votre question !
01° Utiliser le site suivant (ou un autre offrant le même service de DNS Record Lookup) dnslookup.online/ ou www.whatsmyip.org/.
Lancer une demande sur un site de votre choix. Regarder si le site parvient à trouver l'adresse IP correspondante.
Voici la réponse que j'ai obtenu avec ce site sur une demande www.infoforall.fr.
On obtient ici une adresse IP v4 : 185.35.40.11
.
DNS veut dire Domain Name System. C'est ce système qui vous permet au navigateur de savoir que la requête pour www.infoforall.fr doit être transmise à l'adresse IP 185.35.40.11
.
Le système de noms de domaine est donc une sorte de tableau ayant deux colonnes : la première est le nom de domaine et la deuxième l'adresse Ip à utiliser.
Nom | Adresse |
---|---|
www.infoforall.fr | 185.35.40.11 |
Au tout début d'Internet, la résolution se faisait un peu comme ça. Un seul fichier texte contenait les adresses IP de grands services à connaître.
Depuis, Internet a un peu grossi et on ne peut plus faire comme cela.
Voyons d'abord comment trouver les adresses IP directement depuis votre ordinateur, sans passer par un site externe.
02° Version pour le système d'exploitation Windows. Utiliser un terminal et utiliser les commandes suivantes pour obtenir l'adresse IP du serveur HTTP du site www.infoforall.fr.
Sous Windows 10 : pour accéder à l'invite de commande : Start Menu / Menu Démarrer pour ouvrir le menu des programmes. Chercher Système Windows et Invite de Commande.
Une simple commande ping peut suffire mais nous allons voir d'autres manières de faire.
Pour rappel, la commande ping sert à la base à tester la qualité de la communication entre votre ordinateur et la destination.
C:\Users\moi>ping www.infoforall.fr
Envoi d’une requête 'ping' sur www.infoforall.fr [2a00:b6e0:1:20:2::1] avec 32 octets de données :
Réponse de 2a00:b6e0:1:20:2::1 : temps=23 ms
Réponse de 2a00:b6e0:1:20:2::1 : temps=28 ms
Réponse de 2a00:b6e0:1:20:2::1 : temps=22 ms
Réponse de 2a00:b6e0:1:20:2::1 : temps=35 ms
Statistiques Ping pour 2a00:b6e0:1:20:2::1 :
Paquets : envoyés = 4, reçus = 4, perdus = 0 (perte 0%),
Durée approximative des boucles en millisecondes :
Minimum = 22ms, Maximum = 35ms, Moyenne = 27ms
Deuxième possibilité : la commande nslookup (name service look up). Cette commande permet de voir l'adresse IP mais également de connaître le service qui a fourni cette réponse.
C:\Users\moi>nslookup www.infoforall.fr
Serveur : UnKnown
Address: fe80::da7d:7fff:fed7:a110
Réponse ne faisant pas autorité :
Nom : www.infoforall.fr
Addresses: 2a00:b6e0:1:20:2::1
185.31.40.11
On remarque donc ici que la réponse provient d'un serveur inconnu (UnKnown) d'adresse fe80::da7d:7fff:fed7:a110. Il s'agit d'une adresse locale (en IPv6, une adresse commençant par fe80 est une adresse locale).
Vous pouvez noter que la dernière réponse montre qu'on peut joindre le site soit en IP4, soit en IP6. Au choix.
03° Pour ceux qui ont un système d'exploitation Unix (Linux ou MacOS). Utiliser un terminal et utiliser les commandes suivantes pour obtenir l'adresse IP du serveur HTTP du site www.infoforall.fr.
Une simple commande ping peut suffire mais nous allons voir d'autres manières de faire.
Certaines peuvent ne pas fonctionner sur votre machine. Le tout c'est qu'au moins l'une d'entre elles fonctionnent.
Le ping est à stopper avec les touches CTRL + C
.
Pour rappel, la commande ping sert à la base à tester la qualité de la communication entre votre ordinateur et la destination.
rv@rv-HP2:~$ ping www.infoforall.fr
PING www.infoforall.fr(http1.paris1.alwaysdata.com (2a00:b6e0:1:20:2::1)) 56 data bytes
64 bytes from http1.paris1.alwaysdata.com (2a00:b6e0:1:20:2::1): icmp_seq=1 ttl=55 time=165 ms
64 bytes from http1.paris1.alwaysdata.com (2a00:b6e0:1:20:2::1): icmp_seq=2 ttl=55 time=187 ms
^C
--- www.infoforall.fr ping statistics ---
3 packets transmitted, 2 received, 33% packet loss, time 2003ms
rtt min/avg/max/mdev = 165.135/176.436/187.738/11.309 ms
Deuxième possibilité : la commande host. Elle permet de renvoyer l'adresse IP à partir d'un nom de machine. C'est pile poil ce qu'on veut. En plus, ça fournit les adresses IPv4 et Ipv6 si les deux sont possibles sur cette machine.
rv@rv-HP2:~$ host www.infoforall.fr
www.infoforall.fr has address 185.31.40.11
www.infoforall.fr has IPv6 address 2a00:b6e0:1:20:2::1
Troisième possibilité : la commande dig. Elle permet de faire beaucoup de choses en lien avec les DNS pour comprendre les dysfonctionnements. En version light, on peut obtenir l'adresse IP d'un site, si le DNS marche bien.
rv@rv-HP2:~$ dig www.infoforall.fr +short
185.31.40.11
Si vous voulez obtenir de l'IPv6 avec dig :
rv@rv-HP2:~$ dig aaaa www.infoforall.fr +short
2a00:b6e0:1:20:2::1
Enfin, vous pouvez également utiliser la commande nslookup (name server look up), mais ce programme n'est plus mis à jour sur Linux.
rv@rv-HP2:~$ nslookup www.infoforall.fr
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: www.infoforall.fr
Address: 185.31.40.11
Name: www.infoforall.fr
Address: 2a00:b6e0:1:20:2::1
On remarque donc que la réponse provient d'un serveur d'adresse 127.0.0.53. Il s'agit d'une adresse localhost.
Evitez d'utiliser cette dernière commande, il semble que le programme ne soit plus mis à jour. Les commandes dig et host font très bien le boulot.
Comme vous le voyez, on alterne entre IPv4 et IPv6 en fonction des commandes.
Vous pouvez noter que la dernière réponse montre qu'on peut joindre le site soit en IP4, soit en IP6. Au choix.
Comment ça marche alors ? Votre ordinateur ne peut pas contenir un tableau qui contient toutes les correspondances Nom - Adresse IP au monde.
Le nom du service qui permet de traduire un nom en lettres en adresse IP est DNS, Domaine Name Service. Et ce service utilise des programmes serveurs. Ce ne sont pas des serveurs HTTP mais des serveurs ... DNS.
En voici le principe.
DNS : Domain Name Service
Le service DNS veut dire Domain Name Service.
C'est lui qui fait le lien entre un nom de machine et son adresse IP. C'est donc une sorte d'annuaire.
Imaginons que vous vouliez aller sur https://www.infoforall.fr et que l'installation de votre ordinateur soit toute neuve : impossible pour lui d'avoir déjà un fichier contenant l'IP de ce site.
Dans ce cas, il va faire une requête DNS à un serveur DNS par défaut.
Le plus souvent, il s'agit du serveur DNS de votre fournisseur d'accès à Internet (provider) : Orange, Free...
Après avoir cherché dans ses données, le serveur DNS va répondre en fournissant l'adresse IP voulue.
Maintenant, votre machine sait que l'adresse Ip de www.infoforall.fr est 2a00:b6e0:1:20:2::1 . La machine va pouvoir envoyer sa requête HTTP au bon serveur HTTP.
04° Quelles informations le serveur DNS peut-il apprendre sur vous ? Comment un serveur DNS peut-il censurer le Net ?
...CORRECTION...
A chaque fois que vous voulez utiliser une ressource d'un site, le serveur peut donc stocker la demande, l'heure et le client qui a fait cette demande.
Il y a pire : si le propriétaire d'un serveur DNS veut interdire l'accès à un site, il lui suffit de ne pas répondre ou de fournir une mauvaise IP.
Le rôle fondamental des serveurs DNS dans le fonctionnement d'Internet en fait des cibles de choix
- pour ceux qui veulent censurer le Net (ne pas renvoyer de réponses DNS pour certains site, va empếcher les gens qui n'ont pas l'adresse IP de pouvoir s'y connecter),
- pour ceux qui veulent créer des arnaques diverses (prendre le contrôle d'un serveur DNS permet de rediriger les internautes vers de faux sites) ou
- pour ceux qui veulent récupérer un maximum d'informations sur un maximum de gens (on peut savoir qui veut voir quoi et qui se connecte à quoi).
En 2015, suite à une plainte pour violation répétée des droits d'auteurs, le Tribunal de grande instance de Paris permet d'imposer un blocage DNS de la plateforme The Pirate Bay auprès des fournisseurs d'accès à Internet français. Suite à cela, un nombre conséquent d'utilisateurs ont alors changé le DNS par défaut (celui du fournisseur de service) par ... le DNS de Google. Est-ce bien mieux ?
Mémoire cache DNS
La requête DNS prend du temps et crée des communications sur le réseau.
Pour limiter les demandes et les délais, il existe un système de mémoire-cache, soit dans votre navigateur (il mémorise temporairement les associations nom-adresse), soit dans votre système d'exploitation, soit dans le routeur de la Box (pour ceux qui ont une Box professionnelle par exemple).
Le vrai fonctionnement est donc plutôt :
- Votre navigateur va voir s'il connait l'adresse de ce nom de domaine dans son cache DNS
- S'il ne la connaît pas, on va voir dans la mémoire-cache du système d'exploitation (operating system OS) : il est possible qu'un autre programme ai déjà fait cette demande
- Sinon, on transmet à la Box (certains modèles disposent d'une mémoire-cache également) : il est possible qu'un autre utilisateur du réseau ai déjà fait cette demande
- Sinon, on part sur Internet et on fait la demande au serveur DNS de référence.
Le cache permet donc de gagner du temps et de limiter les demandes courantes. Par contre, cela pose problème si l'adresse mémorisée n'est plus la bonne. Les serveurs Web changent rarement d'adresse mais cela arrive : mise à jour, changement d'hébergeur, changement de technologie...
Pour limiter le nombre de mauvaises associations Nom-IP, les données en mémoire dans le cache ont une certaine durée de vie (TTL, Time To Live).
L'accès à la mémoire cache DNS du navigateur ou du système d'exploitation peut donc permettre de connaître les sites que vous avez consulté dernièrement. En fait, cette liste contient la liste de tous les sites à qui vous avez fait une demande. Imaginons que sur l'un des sites visités se trouve une image dans l'attribut source src pointe vers un second site. Votre navigateur va faire la demande au second site pour obtenir le code de l'image. Et le cache DNS va donc contenir la demande pour le premier site (pour le code HTML au moins) et pour le second site (pour le code de l'image).
Sur Windows, l'accès à ce cache DNS est très simple :
C:\Users\moi>ipconfig /displaydns
Si vous êtes sur Windows, vous pouvez essayer. Vous allez voir que la confidentialité n'est pas au rendez-vous...
Sur Linux, cette fonctionnalité n'existe pas de base. Par contre, les navigateurs ont bien une mémoire cache DNS.
On peut bien entendu supprimer assez facilement ces mémoires-cache. Il existe de nombreux articles en parlant sur le Web.
Il existe un nom qui identifie l'ordinateur sur lequel on se trouve : localhost. L'adresse IP associée est toujours 127.0.0.1
en IPv4 ou ::1
en IPv6.
Bien. Il nous reste à voir quel est le serveur DNS de référence de votre ordinateur.
3 - DNS de référence
05° Taper les instructions suivantes dans votre terminal pour voir l'adresse IP du serveur DNS local utilisé par votre ordinateur.
Windows : tapez ceci
C:\Users\rv>ipconfig
Linux et autres Unix : tapez ceci
rv@rv-HP2:~$ nmcli dev show |grep DNS
Pour Windows, vous devriez avoir un affichage qui ressemble à ceci :
h:\>ipconfig/all
Configuration IP de Windows
Nom de l'hôte : e301-poste12
Carte Ethernet Connexion au réseau local :
Suffixe DNS propre à la connexion : lycee.home
Description : Broadcom NetXtreme Gigabit Ethernet
Adresse physique : 25-CE-55-28-72-CE
DHCP activé : Oui
Configuration automatique activée : Oui
Adresse IPv6 de liaison locale : ad41::fe80:b1b1:fe80:fe80%13(préféré)
Adresse IPv4 : 192.168.2.78(préféré)
Masque de sous-réseau : 255.255.0.0
Bail obtenu : jeudi 4 mai 2017 10:58:30
Bail expirant : vendredi 5 mai 2017 10:58:29
Passerelle par défaut : 192.168.0.250
Serveur DHCP : 192.168.0.250
IAID DHCPv6 : 270843397
DUID de client DHCPv6 : 00-01-00-01-17-BD-7B-ED-24-BE-05-10-C2-C2
Serveurs DNS : 192.168.0.253
Serveur WINS principal : 192.168.0.253
NetBIOS sur Tcpip : Activé
Avec Linux, l'instruction devrait vous montrer quelque chose proche de cela :
rv@rv-HP2:~$ nmcli dev show |grep DNS
IP4.DNS[1]: 192.168.1.1
IP6.DNS[1]: 2a01:cb0c:96c:d400:da8d:7fff:ffd8:a112
IP6.DNS[2]: fe80::da8d:7fff:ffd8:a112
Pourquoi a-t-on 3 adresses DNS sur le deuxième exemple ?
En fait, c'est trois fois le même serveur DNS local qu'on peut joindre de plusieurs façons.
La première est son adresse IP v4 locale. Locale car elle commence par 192.168
: on ne peut pas vous joindre depuis l'extérieur de votre réseau avec cette adresse.
La deuxième est son adresse IP v6.
La troisième est son adresse IP v6 en version locale. Local car elle commence par fe80::
: si vous regardez bien, les deux dernières finissent de la même manière. Il n'y a que le début qui change.
A moins que quelqu'un ai modifié votre réseau local et configuré un serveur DNS personnel, l'adresse que vous venez d'obtenir est certainement celle de votre Box. Votre ordinateur va donc se connecter à votre Box lorsqu'il doit faire une requête DNS.
Sur un réseau d'entreprise, comme celui du lycée par exemple, le DNS n'est pas nécessairement situé dans la passerelle. Si vous regarder l'exemple Windows, effectué dans un lycée, on voit que le DSN est situé
en 192.168.0.253
alors que la passerelle (la Box) est situé en 192.168.0.250
.
Pour aller plus loin, il faudrait vous connecter à votre Box avec les identifiants administrateurs et aller fouiller dans les différents menus.
A titre d'exemple, dans une Livebox, il faut cliquer sur le menu de configuration (l'icone engrenage), choisir l'onglet Information Système, aller dans le menu Internet.
Ici, on voit donc que notre Box est configuré pour aller d'abord voir le serveur DNS d'adresse 80.10.246.7
.
S'il est en panne, la Box va transmettre vos demandes au serveur DNS secondaire, d'adresse 81.253.149.14
.
En réalité, il y a deux serveurs pour répartir les charges. Chacun d'entre eux récupère ainsi en moyenne 50% des demandes. Et en cas de panne, l'autre peut prendre temporairement le relais, au prix d'une augmentation du temps de réponse bien entendu.
06° Utiliser la commande ci-dessous en fonction de votre système d'exploitation pour obtenir le nom du service.
Attention, il est possible que les adresses aient changé ou que ce service soit en maintenance. C'est d'ailleurs pour cela qu'il y en a plusieurs.
Unix : Linux, MacOS
rv@rv-HP2:~$ host 81.253.149.14
Host 14.149.253.81.in-addr.arpa. not found: 3(NXDOMAIN)
rv@rv-HP2:~$ host 80.10.246.7
7.246.10.80.in-addr.arpa domain name pointer dns-rtc-gpe2-a.wanadoo.fr.
Windows
C:\Users\moi>nslookup 80.10.246.7
C:\Users\moi>nslookup 81.253.149.14
Comme vous le voyez, on retrouve bien une connexion vers un serveur DNS, ici de chez wanadoo.fr, l'ancien nom de la société, avant Orange.
Et que fait ce serveur pour connaitre les associations (site, adresse IP) ? Il a téléchargé tous les noms possibles des sites sur Internet ? Ben non.
S'il ne la connaît pas, il va poser la question à un serveur DNS au dessus de lui, par exemple le serveur DNS de votre provider.
Et si votre DNS provider ne connaît pas ?
Pareil, il va demander au dessus. Nous allons maintenant voir le fonctionnement de ce système DNS.
4 - L'organisation du DNS
Comme ce système est très important pour le fonctionnement d'Internet (sinon, nous devrions tous connaître par coeur les adresses des serveurs), les personnes qui l'ont créé sont partis depuis un bon moment sur un système décentralisé. De cette façon, on ne peut pas facilement le détruire puisqu'il n'existe pas de centre à proprement parlé.
Vous vous souvenez de la façon dont on écrit une adresse de serveur dans URL :
Décomposition d'une adresse
www.infoforall.fr
.
www
est un sous-domaine : on peut créer autant de sous-domaine qu'on veut lorsqu'on possède un domaineinfoforall.fr
est le nom de domaine qui est composé :- d'un nom de domaine de deuxième niveau :
infoforall
- d'un nom de domaine de premier niveau (TDL, top-level domain en anglais) :
fr
✎ 07° Pour les adresses ci-dessous, fournir :
- Le nom de domaine de premier niveau
- Le nom de domaine de deuxième niveau
- Le sous-domaine
Adresse A : www1.ac-lille.fr
Adresse B : www.onisep.fr
Adresse C : K.root-servers.net
08° A quoi fait référence www ? Un site présent sur le Web doit-il nécessairement avoir ce sous-domaine ?
...CORRECTION...
www pour World Wide Web.
Un site Web peut très bien ne pas avoir ce sous-domaine. Chacun fait comme il veut.
C'est juste une indication. Vous pouvez rendre vos pages Web accessibles depuis mail.infoforall.fr, mais c'est un peu tordu.
Pourquoi parler de cela pour le DNS ? Simplement car cette structure est à la base de la réponse d'un serveur DNS lorsque l'adresse demandée ne figure pas dans sa mémoire-cache.
Structure des noms de domaines
Un serveur DNS ne peut pas connaître les adresses de tous le monde sur Internet. Voici comment les concepteurs du système ont géré le problème.
En haut de la structure, on trouve le serveur racine (root en anglais). On le symbolise souvent par un point.
Le serveur-racine connait l'adresse de tous les serveurs DNS du domaine de premier niveau (TDL, top-level domain en anglais).
Pour connaître la racine, il faut donc
- Joindre le serveur-racine pour qu'il transmettre l'adresse du serveur responsable du domaine de premier niveau fr
- Utiliser la réponse pour joindre le serveur fr et lui demander de fournir l'adresse du serveur DNS qui gère le nom de domaine de deuxième niveau infoforall
- Utiliser la réponse pour demander à ce serveur DNS de fournir la bonne adresse finale !
Explications :
Vous demandez une ressource située à cette adresse www.infoforall.fr
Etape 1 : Votre navigateur va commencer par voir s'il possède cette adresse en mémoire-cache.
Première connexion donc le cache du navigateur ne connaît pas votre site.
Etape 2 : on lance une requête DNS à notre serveur DNS par défaut.
Pas de chance. Personne n'a démandé à accéder à www.infoforall.fr
dernièrement. La mémoire-cache de ce serveur ne contient pas non plus l'adresse du site.
Etape 3 : le serveur DNS va alors lancer lui-même une requête DNS. A qui ? A l'un des serveurs racines d'Internet. Le serveur DNS du provider doit donc avoir son adresse en mémoire. Que lui demande-t-il ? Il lui demande de lui fournir l'adresse d'un serveur Top-Level-Domain gérant les adresses en .fr
.
On dit que les serveurs racines sont des serveurs d'autorité pour fournir les adresses des serveurs TLD.
Une fois que le serveur racine a répondu, notre serveur DNS connaît maintenant une adresse valide correspondant à un serveur gérant le domaine de premier niveau fr
.
Etape 4 : le serveur DNS utilise l'adresse du serveur gérant le domaine fr
pour lancer une requête DNS sur le domaine de deuxième niveau infoforall
.
Le serveur TDL fr est un serveur d'autorité pour fournir les adresses des serveurs de deuxième niveau des noms de domaine finissant en fr.
Une fois la réponse reçue, le serveur DNS du provider connaît l'adresse du serveur DNS gérant les adresses commençant par infoforall.fr
.
Etape 5 : le serveur DNS utilise l'adresse du serveur gérant le domaine infoforall.fr
pour lancer une requête DNS sur le sous-domaine www
.
Ce serveur fait autorité sur les adresses des serveurs répondant à un nom qui finit par infoforall.fr
.
Une fois la réponse reçue, le serveur DNS connaît enfin l'adresse du serveur hébergeant www.infoforall.fr
.
Etape 6 : Ouf. C'est presque fini. Il ne reste plus au serveur DNS du provider qu'à renvoyer la réponse DNS qu'il vient de recevoir au client originel.
Et tout au dessus, il y a les 13 serveurs DNS racines.
Etape 7 : On retrouve le fonctionnement habituel : le client va envoyer une requête HTTP vers le serveur HTTP de www.infoforall.fr maintenant qu'il connaît son adresse !
On voit donc que pour une pauvre requête HTTP, nous avons provoqué un trafic important. Et encore : la réponse HTTP fournie risque de comporter des images qui sont hébergées, elles, par doc.infoforall.fr
...
09° Votre navigateur connaît maintenant l'adresse du serveur correspondant à www.infoforall.fr
. Cela veut-il dire qu'il connaît l'adresse de doc.infoforall.fr
?
...CORRECTION...
Et non. Ce n'est pas le même nom. Il est possible que le serveur soit le même (même nom de domaine) ou pas...
10° Votre navigateur ne connaît pas doc.infoforall.fr
. Décrire ce qui va se passer de façon à ce qu'il recoive cette adresse.
...CORRECTION...
Le navigateur va provoquer l'envoi d'une requête DNS au serveur DNS par défaut.
Ce serveur DNS va alors faire une requête DNS sur un serveur racine, puis un serveur TLD gérant fr
puis sur un serveur gérant infoforall.fr
.
Votre navigateur va donc recevoir une seconde adresse et pouvoir télécharger les images présentes sur la page en provoquant de nouvelles requêtes HTTP.
11° Tout ce processus de requêtes DNS va-t-il encore avoir lieu lorsque vous voudrez atteindre la page suivante sur ce site ?
...CORRECTION...
Non, tant que l'entrée de ce site reste dans le cache DNS de votre navigateur, il n'aura pas besoin de refaire une demande.
5 - Serveur racine
Le but de toute cette structure assez complexe est la décentralisation : on fait tout ce qui est possible pour qu'il n'y ai pas de machine centrale unique qui pourrait provoquer la chute du réseau Internet en cas de panne.
Ainsi, on parle de mais en réalité, il n'est vraiment pas unique.
Il existe 13 structures indépendantes gérant les serveurs de ce type. Ces 13 structures sont gérées par 12 institutions ou sociétés différentes. Le nom d'un serveur root est de la forme Le nom de ces 13 serveurs racines, leurs adresses IP (le 28 Avril 2020) et la structure que les gèrent sont : La coordination de ces différents organismes est assurée par l'ICANN (qui gère également le système de la racine L et supervise l'attribution du niveau TLD). D'un point de vue historique, la création de la structure telle qu'elle est actuellement est explicable ... si on a le temps. Une recherche sur Wikipedia par exemple peut vous en apprendre beaucoup. Les enjeux étant importants, les pressions sont bien entendu importantes également. ✎ 12° D'un point de vue géopolitique, quelle impression vous donne le tableau ci-dessus ? ✎ 13° Utiliser le lien suivant qui mène vers le site présentant les serveurs racine à travers le monde : Question : Après avoir zoomé sur la France, combien trouve-t-on de serveurs racine autour Si on regarde en détail les noms des différents serveurs, on peut voir que : Autour de Paris, on trouve des serveurs des roots A, C, D, E, F, I, J, K, L*2, M. Autour de Lyon, on trouve des serveurs des roots D, E, L et K. Autour de Marseilles, on trouve des serveurs des roots D, E, L et F. ✎ 14 - version Linux / Unix / MacOS° Utiliser un terminal et utiliser la commande suivante pour obtenir l'adresse IP du serveur DNS racine Une simple commande ping peut suffire en réalité. Question : comparez l'adresse obtenue avec l'adresse obtenue sur l'image des serveurs root autour de Paris. ✎ 15 - version Windows° Utiliser un terminal et utiliser la commande suivante pour obtenir l'adresse IP du serveur DNS racine Une simple commande ping peut suffire en réalité. Question : comparez l'adresse obtenue avec l'adresse obtenue sur l'image des serveurs root autour de Paris. Cette adresse correspond à l'un des serveurs délivrant les adresses de la racine K. 16° Utiliser le lien ci-dessous (ou dans le tableau des 13 racines). Question : Quelle est la zone la mieux desservie par la structure K, gérée par RIPE NCC ? Pour rappel, RIPE NCC est également le RIR (Registre Internet régional) qui gère les adresses IP pour la zone européenne. Vers le site de la racine K : RIPE NCC Il s'agit clairement de l'Europe. La plupart des opérateurs travaillant sur le réseau Internet utilisent ainsi des synergies pour rendre leur travail plus performant. RIPE NCC peut ainsi se prévaloir d'une expertise importante sur l'Internet européen. Les noms de domaines permettent donc aux utilisateurs de ne pas se soucier des adresses IP réelles, aux sites de changer de serveurs sans perdre leurs clients (car le nom de domaine reste inchangé même si l'adresse IP réelle change) et permet à Internet d'être très stable : pour que le système de nom de domaines s'écroule, il faudrait que tous les serveurs des 13 structures de racine soient en panne en même temps.Serveurs DNS racine (root)
lettre.root-servers.net
Collection / Table
Attributs ou Descripteurs
Nom
Adresses
IPv4
IPv6Gestionnaire
A (USA)
A.root-servers.net
198.41.0.4
2001:503:ba3e::2:30
Verisign
B (USA)
B.root-servers.net
199.9.14.201
2001:500:200::b
University of Southern California
C (USA)
C.root-servers.net
192.33.4.12
2001:500:2::C
Cogent Communications
D (USA)
D.root-servers.net
199.7.91.13
2001:500:2d::d
University of Maryland
E (USA)
E.root-servers.net
192.203.230.10
2001:500:a8::e
NASA
F (USA)
F.root-servers.net
192.5.5.241
2001:500:2f::f
Internet Systems Consortium
G (USA)
G.root-servers.net
192.112.36.4
2001:500:12::d0d
US Department of Defense
Defense Information Systems Agency
H (USA)
H.root-servers.net
198.97.190.53
2001:500:1::53
US Army
U.S. Army Research Laboratory
I (Suède,UE)
I.root-servers.net
192.36.148.17
2001:7fe::53
Netnod
J (USA)
J.root-servers.net
192.58.128.30
2001:503:c27::2:30
Verisign
K (UE, Pays-Bas)
K.root-servers.net
193.0.14.129
2001:7fd::1
RIPE NCC
L (USA)
L.root-servers.net
199.7.83.42
2001:500:3::42
ICANN
M (Japon)
M.root-servers.net
202.12.27.33
2001:dc3::35
WIDE Project
K.root-servers.net
.
rv@rv-HP2:~$ dig K.root-servers.net +short
193.0.14.129
K.root-servers.net
.
C:\Users\moi>ping K.root-servers.net
...CORRECTION...
6 - Top Level Domain TLD
Les domaines du premier niveau (Top Level Domain) sont également très importants pour le fonctionnement global du système. Une panne de la gestion du TLD com
et c'est tout une partie du commerce électronique qui s'effrondre.
Les noms de domaines de ce type sont répartis en plusieurs grandes catégories :
- Un domaine spécial,
arpa
, gérée par l'IANA (qui gère les adresses IP), une branche de l'ICANN. Ces adresses permettent de localiser les serveurs servant à gérer la résolution des adresses IP en nom de domaine (l'inverse du DSN donc). - Des domaines géographiques (même si rien n'oblige un serveur en
fr
à travailler sur le marché Français). - France
fr
- Belgique
be
- Allemagne
de
- Italie
it
- Espagne
es
- Luxembourg
lu
- Suisse
ch
- Union Européenne
ue
- Des domaines génériques, qui donnent une indication de la nature du site (mais comme pour la géographie, ça reste indicatif) :
com
pour le commercenet
pour les sites liés aux réseaux et/ou à la télécommunicationorg
pour les sites des organisations à but non lucratifinfo
pour les sites liés à un service d'informationmil
pour les sites militairesedu
pour les sites liés aux institutions éducatives reconnuesgov
pour les sites gouvernementaux
Exemples de domaines sans contrainte d'enregistrement (si ce n'est financier)
Exemples de domaines avec contrainte d'enregistrement
Le site de l'IANA https://www.iana.org/domains/root/db répertorie les différents organismes qui gèrent les TLD sous délégation de l'IANA.
✎ 17° Faire une recherche sur le site précédent pour trouver les sociétés gérant les domaines fr
et com
. L'un des deux gère-t-il aussi des Roots ?
Comme vous le voyez, il y a un nombre très important de société participant à la gestion d'Internet et du Web.
Si on résume et complète :
- Rappel : 12 structures gérent les serveurs DSN "Racine" qui contiennent les données pour contacter les serveurs DNS TLD (Top-Level-Domain).
- Rappel : plusieurs sociétés gérent les serveurs DNS TLD qui permettent de contacter les serveurs DNS de deuxième niveau.
- Nouveau : certaines sociétés nommées registraires de nom de domaine, registrars en anglais permettent de s'inscrire dans le registre des noms de domaines des serveurs DNS TLD. Ces sociétés permettent donc d'acheter un nom de domaine pour une pédiode donnée (souvent un an au moins). Certaines proposent d'utiliser leurs serveurs DNS (on parle alors d'hébergeurs de noms de domaine) pour stocker les informations sur vos noms de domaines. D'autres vous demandent de fournir l'adresse IP de votre propre serveur DNS de second niveau.
- Nouveau : certaines sociétés nommées hébergeurs de sites Web vous proposent de louer de leur louer des machines-serveurs sur lequels vous pouver alors placer vos propres programmes-serveurs, notamment des serveurs HTTP pour créer un site Web.
- Nouveau : certaines sociétés nommées FAI, fournisseurs d'accés à Internet, permettent elles de fournir un accès au réseau Internet en passant par leur réseau propre.
- Nouveau : certaines sociétés nommées opérateurs réseaux travaillent elles à la réalisation et la maintenance d'un réseau physique de façon à y faire passer des commuications. Nous en reparlerons lors de la dernière activité.
A titre d'exemple, donnons quelques noms de sociétés françaises travaillant dans ces domaines.
- OVH est une société faisant officer d'hébergeur Web, DNS et registrars. Vous pouvez donc acheter chez eux un pack : ils hébergent à la fois votre site Web et gèrent votre DNS. Elle gère également la téléphonie IP ou des solutions de type Cloud dont nous parlerons un peu dans la dernière activité.
- Alwaysdata est une société de ce type également : Hébergeur Web, DNS et registrats. Infoforall.fr, le site Web et le nom de domaine sont ainsi gérée pour l'instant par cette société par exemple.
- Orange ou Free sont des FAI. Elles travaillent également dans la téléphonie et les télécommunications en tant qu'opérateurs réseaux.
- RIPE NCC est un RIR (Regional Internet Registry) : elle gère la distribution des adresses IP sur la zone Europe. Elle s'occupe également du serveur root K et du DNS. Or, RIPE NCC est en réalité une organisation de droit privée dont les membres sont ... les FAI et opérateurs réseaux de la zone Europe !
Comme vous pouvez le voir, c'est un peu fouilli dans la mesure où les sociétés ont souvent plus d'un rôle et ont de nombreuses interactions avec les autres.
La dernière activité parlera un peu plus justement du réseau en lui-même. Pour l'instant, nous avons vu qu'Internet est un ensemble de programmes plutôt indépendants du support sur lequel il tourne. IP, TCP et DSN ne sont en fin de compte que des programmes.
Mais bon, les paquets IP doivent bien passer à travers des machines. Il n'y a pas un fil unique entre le client et le serveur. Ce sera le thème de la dernière activité Internet. Nous verrons par où "passe" Internet...
7 - FAQ
Les adresses www.infoforall.fr et doc.infoforall.fr par exemple pointent-elles sur la même adresse ?
Les trois cas de figure possibles :
Deux réseaux différents : les deux serveurs HTTP sont situés sur des ordinateurs qui sont sur deux réseaux différents. Ils n'ont pas la même adresse.
Même réseau mais deux machines : les deux serveurs HTTP sont situés sur des ordinateurs différents mais du même réseau. Du point de vue de l'extérieur, ils ont ou pas la même adresse. C'est le propriétaire du réseau qui gère les choses comme il veut.
Même machine : les deux serveurs HTTP sont situés sur la même machine physique. Du point de vue de l'extérieur, ils ont surement la même adresse, mais ce n'est pas certain. C'est le propriétaire du réseau qui gère les choses comme il veut.
Activité publiée le 03 05 2020
Dernière modification : 03 05 2020
Auteur : ows. h.