1 - Sn-Bretagne

publicité
1 SEN
Cours DNS
SERVEUR DNS
1. Introduction
Les ordinateurs connectés au réseau Internet communiquent en utilisant un protocole appelé TCP/IP. Chaque
ordinateur est identifié avec une adresse numérique de 32 bits, exemple : 195.56.22.223.
La notation numérique pour identifier les machines n'est pas commode pour l'utilisateur qui a du mal à retenir
une longue suite de chiffres. Il est plus aisé de leur attribuer des noms qui vont servir à les identifier.
www.wikipedia.fr est plus facile à retenir que 78.109.84.114.
Les machines ne communiquant entre elles qu'avec leurs adresses numériques, il est donc nécessaire de
disposer d'un service de mise en correspondance nom / adresse IP qui permette aussi bien de trouver l'adresse
IP d'une machine à partir de son nom (résolution de nom) que de retrouver le nom à partir de l'adresse IP
(résolution inverse). Ce service mis au point en novembre 1983 par Paul Mockapetris est le DNS (Domain
Name System)
Ce système propose :
Un espace de noms hiérarchique permettant de garantir l'unicité d'un nom dans une structure arborescente, à la
manière des systèmes de fichiers.
Un système de serveurs distribués permettant de rendre disponible l'espace de noms.
Un système de clients permettant de « résoudre » les noms de domaines, c'est-à-dire interroger les serveurs afin
de connaître l'adresse IP correspondant à un nom.
2. L’espace de noms
www.wikipedia.fr.
Le DNS considère le réseau comme une arborescence de domaines.
.
fr
de
it
…
edu
wikipedia onisep
www
www
Racine
org
net
com
…
Domaine de 1 niveau
TLD
Domaine de 2éme niveau
SLD
ftp
Lycée des Métiers Jacques Prévert Combs – la – Ville
Section de BAC PRO Systèmes électroniques numériques
Machines
1
1 SEN
Cours DNS
La racine (root) qui constitue le sommet de l'arbre ; elle est représentée par un point "."
Des nœuds qui représentent des domaines et sont identifiés chacun par un label (exemple : fr, nl, sn, com,
etc...). Les informations concernant les éléments de chaque nœud sont stockées dans une base de données
propre au nœud et gérée par celui-ci.
Un nom de domaine est obtenu par concaténation de labels de nœuds de l'arbre de nommage séparés par des
points ".". Les caractères autorisés pour les labels sont "A ... Z", "a ... z", "0 ... 9", "-"; aucune différence n'est
faite entre les caractères majuscules et minuscules. Le label d'un nœud de l'arbre doit être unique pour le niveau
dans lequel se situe le nœud. La longueur maximale permise pour un label est de 63 caractères, la profondeur
maximale de l'arborescence est de 127 niveaux, mais la longueur totale pour un nom de domaine est limitée
à 255 caractères.
L'ensemble des noms de domaine constitue ainsi un arbre inversé où chaque nœud est séparé du suivant par un
point " . "
L'extrémité d'une branche est appelée hôte, et correspond à une machine ou une entité du réseau. Le nom d'hôte
qui lui est attribué doit être unique dans le domaine ou sous-domaine considéré. A titre d'exemple le serveur
web d'un domaine porte généralement le nom www.
Le nom absolu correspondant à l'ensemble des étiquettes des nœuds d'une arborescence, séparées par des
points, et terminé par un point final. Appelé adresse FQDN (Fully Qualified Domain Name, soit Nom de
Domaine Totalement Qualifié). La profondeur maximale de l'arborescence est de 127 niveaux et la longueur
maximale d'un nom FQDN est de 255 caractères. L'adresse FQDN permet de repérer de façon unique une
machine sur le réseau des réseaux. Exemple : www.wikipedia.fr. représente une adresse FQDN.
3. Qui gère les noms de domaines
C’est l’organisme ICANN (Internet Corporation for Assigned Names and Numbers)
qui supervise l’attribution des noms de domaine de premier niveau TLD (Top Level
Domain)
Liste des TLD existants : http://www.iana.org/domains/root/db
Les TLD peuvent être subdivisés en deux catégories : les domaines de premier niveau nationaux
ou ccTLD (country-code TLD) et les domaines de premier niveau génériques gTLD (generic TLD).
gTLD
.com
Organisations commerciales
.edu
Écoles, universités (accréditées aux Etats-Unis)
.gov
Organisations gouvernementales américaines
.mil
Organismes militaires américains
.net
Organismes spécialisés dans les réseaux
.int
Organisations gouvernementales internationales
.org
Organismes à but non lucratif
( www.icann.org/tr/french.html )
.fr
.uk
…
ccTLD
france
united Kingdom
Pour la France, l’AFNIC (Association Française pour le Nommage Internet en
Coopération) est l’organisme en charge de la gestion administrative et technique des
noms de domaine en .fr et .re (Réunion) .yt, .pm, .wf ou .tf
Pour obtenir un nom de domaine , l’utilisateur final doit s’adresser à un bureau d’enregistrement (registrar en
anglais) qui est une société prestataire de service (fournisseur d'accès à Internet, hébergeur, agence web,
etc.) accréditée par l'Afnic pour la création des adresses Internet ou noms de domaine en .fr, .re, .yt, .pm,
.wf et .tf. Il est l’intermédiaire obligatoire entre le client final et l'Afnic pour toute demande de dépôt d’un nom
de domaine.
Lycée des Métiers Jacques Prévert Combs – la – Ville
Section de BAC PRO Systèmes électroniques numériques
2
1 SEN
Cours DNS
Il existe aujourd’hui environ 400 bureaux d'enregistrement accrédités par l’Afnic proposant l’achat de nom de
domaine en .fr, .re, .yt, .pm, .wf et .tf.
Exemple OVH.com, Gandi.net, Nordnet, 1&1.
Le registrar est responsable de la maintenance de la base de données des noms de domaine réservés auprès de
lui, ainsi que de la mise à jour de la base de données des registres qu'il représente. De ces mises à jour dépend le
fonctionnement du système DNS.
4. Les serveurs de noms
Chaque domaine possède un serveur de noms de domaines, appelé « serveur de noms primaire » (primary
domain name server), ainsi qu'un serveur de noms secondaire (secondary domaine name server), permettant de
prendre le relais du serveur de noms primaire en cas d'indisponibilité. Le serveur primaire contient toutes les
informations sur la zone qu’il gère, on dit qu’il fait : autorité
Chaque serveur de nom est déclaré dans un serveur de nom de domaine de niveau immédiatement supérieur, ce
qui permet implicitement une délégation d'autorité sur les domaines. Le système de nom est une architecture
distribuée, où chaque entité est responsable de la gestion de son nom de domaine
Registry
Registrar
Gestion des TLD
VeriSign.inc
1&1
13 serveurs racines
x serveur de 1er niveau
x serveur de 2eme niveau
Registry
ICANN
VeriSign.inc
Cogent
University California
NASA
US Army
.com
.net
…
…..
…
298 T LD
.com
.net
.org
.gov
…
…
.fr
.de
.be
.uk
..
lyceemetierscombs.net
….
….
www.lyceemetierscombs.net
=
213.165.76.214
Registry
Registrar
Afnic
Gandi
5 serveurs de 1er niveau
5 serveurs de 2éme niveau
.fr
.re
www.wikipedia.fr
=
78.109.84.114
Wikipedia.fr
….
Lycée des Métiers Jacques Prévert Combs – la – Ville
Section de BAC PRO Systèmes électroniques numériques
3
1 SEN
Cours DNS
Serveurs root / Serveurs racines
La racine (root) occupe une place fondamentale dans l'arbre de nommage ; elle contient les références de tous
les serveurs de domaines de premier niveau (TLD). Compte tenu de son importance primordiale pour le
fonctionnement d'Internet, la racine est réalisée à travers 13 serveurs répartis dans le monde et qui, par un
système de réplication, contiennent la même information. Les serveurs root sont identifiés par les lettres de A à
M et appartiennent tous au même domaine ROOT-SERVERS.NET
Le serveur d'origine est géré par VeriSign Global Registry Services
Les autres serveurs en sont des serveurs miroirs et sont administrés par les institutions suivantes :
Hostname
IP Addresses
Manager
a.root-servers.net
198.41.0.4, 2001:503:ba3e::2:30
VeriSign, Inc.(USA)
b.root-servers.net
192.228.79.201, 2001:500:84::b
University of Southern California (ISI) (USA)
c.root-servers.net
192.33.4.12, 2001:500:2::c
Cogent Communications (USA)
d.root-servers.net
199.7.91.13, 2001:500:2d::d
University of Maryland (USA)
e.root-servers.net
192.203.230.10
NASA (Ames Research Center) (USA)
f.root-servers.net
192.5.5.241, 2001:500:2f::f
Internet Systems Consortium, Inc. (USA)
g.root-servers.net
192.112.36.4
US Department of Defense (NIC) (USA)
h.root-servers.net
198.97.190.53, 2001:500:1::53
US Army (Research Lab) (USA)
i.root-servers.net
192.36.148.17, 2001:7fe::53
Netnod (Suède)
j.root-servers.net
192.58.128.30, 2001:503:c27::2:30
VeriSign, Inc. (USA)
k.root-servers.net
193.0.14.129, 2001:7fd::1
RIPE NCC (UK, Europe)
l.root-servers.net
199.7.83.42, 2001:500:3::42
ICANN (USA)
m.root-servers.net 202.12.27.33, 2001:dc3::35
WIDE Project (Japon)
Afin d’assurer le bon maintien du service, ces serveurs sont en réalité redondés, soit localement, soit de manière
répartie. Dans ce dernier cas, la technique de routage Anycast est utilisée afin d’associer l’adresse IP d’un
serveur racine à plusieurs machines éloignées géographiquement permettant de répartir la charge des requêtes
en toute transparence. Par exemple, le serveur racine « c.root-servers.org » est géré par la société Cogent et est
en réalité composé de 8 serveurs répartis sur la planète.
Pour plus d’information sur les serveurs roots vous pouvez consulter le site http://root-servers.org/
Tous les serveurs racines
Lycée des Métiers Jacques Prévert Combs – la – Ville
Section de BAC PRO Systèmes électroniques numériques
4
1 SEN
Cours DNS
Le serveur racine « c.root-servers.org »
Serveurs de 1er niveau gérés par l’Afnic
Serveurs de 2eme niveau gérés par le prestataire Gandi.net pour la zone fr
5. Les requêtes DNS
Le DNS étant une architecture distribuée, il y a deux approches pour un serveur quant à la façon de répondre
aux requêtes :
récursive : un premier serveur ne possédant pas la réponse à la requête qui lui est soumise prend la requête à
son compte, détermine un second serveur compétent et transmet la requête. Il continue ensuite de contacter
d'autres serveurs en fonction des réponses retournées, jusqu'à ce qu'il puisse apporter la réponse complète ;
itérative : un premier serveur ne possédant pas la réponse fournit au client la meilleure réponse qu'il connaisse.
Le client effectue alors lui-même de nouvelles requêtes pour résoudre.
Dans le mode récursif, le serveur prend tout le processus de résolution à sa charge pour apporter une réponse
définitive. Dans le mode itératif, le serveur ne fait qu'orienter le client vers d'autres serveurs adaptés.
Une interrogation DNS type implique de manière générale quelques acteurs ayant des rôles différents :
un client aussi appelé « résolveur » privilégiant une interrogation récursive vers un ou plusieurs serveurs caches
(configurés manuellement ou spécifiés dans un bail DHCP...) et d'interpréter leurs réponses. Il n'a pas
l'intelligence suffisante pour suivre les différentes réponses et laisse cette tâche aux serveurs de noms locaux ou
précisés dans la configuration réseau. Ces derniers feront alors les opérations nécessaires pour fournir une
réponse finale ;
un serveur de noms interrogé, obligé de répondre complètement à la requête envoyée par le client. Dans le cas
contraire, il doit envoyer une réponse précisant que la donnée requise ou le nom demandé n'existe pas.
Lycée des Métiers Jacques Prévert Combs – la – Ville
Section de BAC PRO Systèmes électroniques numériques
5
1 SEN
Cours DNS
Ce serveur ne fait pas nécessairement autorité sur les informations demandées et pose donc les questions à
d'autres serveurs (en mode itératif ou récursif). Dans le cas le plus complet, il demandera d'abord aux serveurs
racine, puisque par définition chaque serveur de noms connaît les noms et les adresses des serveurs racines.
un serveur de cache DNS qui est souvent commun au serveur récursif et qui prend en charge de fournir des
réponses complètes. Il a une bonne vue de l'ensemble des requêtes et donc des optimisations possibles ;
d'autres serveurs DNS, dont un serveur DNS autorité pour la ressource demandée dont la réponse sera transmise
au client par le serveur récursif précédent.
serveur DNS racine
(.)
3
4
5
serveur DNS de 1er niveau
6
Serveur DNS du FAI
7
8
9
2
serveur DNS de 2eme niveau
1
10
Serveur DNS
de l’entreprise
Ordinateur client
L’utilisateur veut consulter le site
www.wikipedia.fr
11
serveur web de wikipedia
Le schéma ci-dessus reprend le processus complet d'une résolution. Les étapes sont les suivantes :
Le serveur de noms de l’entreprise reçoit une requête récursive (1) en provenance d'un poste client pour
résoudre www.wikipedia.fr.
Comme il ne fait pas autorité pour la zone, et que l’adresse ne se trouve pas dans le cache DNS, il effectue une
demande récursive auprès du serveur DNS de cache de son fournisseur d’accès Internet (2).
Le serveur DNS du fournisseur d’accès Internet ne trouve pas l’adresse dans son cache, il effectue alors une
requête itérative auprès des serveurs racine (3).
Un serveur racine répond en disant de contacter le serveur gérant le premier niveau du domaine fr, car il est en
mode itératif, il lui fournit l’adresse IP du serveur (4).
Lycée des Métiers Jacques Prévert Combs – la – Ville
Section de BAC PRO Systèmes électroniques numériques
6
1 SEN
Cours DNS
Le serveur DNS du FAI continue le processus de résolution car il est en mode récursif et interroge donc le
serveur DNS de 1er niveau (5), pour résoudre www.wikipedia.fr ;
Le serveur DNS de premier niveau répond en disant de contacter le serveur gérant le second niveau du domaine
wikipedia.fr, il lui fournit l’adresse IP du serveur (6).
Le serveur DNS de cache contacte alors le serveur DNS de second niveau avec une demande itérative (7).
Le serveur DNS de second niveau répond avec autorité en fournissant l’adresse IP pour le nom
www.wikipedia.fr (8). L’adresse est maintenant résolue.
Le serveur DNS de cache du fournisseur Internet renvoie la réponse auprès du serveur de cache de l’entreprise
(9) après l’avoir stockée dans son cache. Elle sera utilisée pour les demandes ultérieures et restera dans le cache
pendant la durée de vie (TTL) de l’enregistrement.
Le serveur DNS de cache de l’entreprise renvoie la réponse auprès du client (10) après l’avoir stockée dans son
cache. Elle sera utilisée pour les demandes ultérieures et restera dans le cache pendant la durée de vie (TTL) de
l’enregistrement.
Le choix de ces modes de configuration est primordial et a de très fortes implications dans l'architecture DNS.
De manière générale, les serveurs racines ainsi que les serveurs publics doivent être en mode itératif, tandis que
des serveurs au cœur des réseaux d'opérateurs ou permettant de résoudre un nom depuis un Intranet doivent
offrir le service récursif pour les utilisateurs clients ou internes uniquement.
6. Les enregistrements
Le serveur primaire contient toutes les informations sur la zone qu’il gère, on dit qu’il fait : autorité
Chaque zone est configurée dans un fichier
$TTL 604800
; (1w)
$ORIGIN wikipedia.fr.
; Informations générales
@
IN
SOA a.dns.gandi.net.
1331295204
10800
3600
604800
10800 )
hostmaster.gandi.net (
; Serial
; Refresh
(3h)
; Retry
(1h)
; Expire
(7d)
; Negative Cache TTL
(1h)
;
; Enregistrements du domaine, des sous-domaines et correspondances IP
@
@
www
blog
10800
10800
10800
10800
IN
IN
IN
IN
NS
MX
A
CNAME
a.dns.gandi.net.
10 spool.mail.gandi.net
78.109.84.114
www
TTL : (Time to Live) Ce TTL est la durée pendant laquelle les informations sont conservées en cache. Ce délai
passé, une nouvelle demande devra être faite au serveur. Le TTL est défini ici sur 1 semaine
ORIGIN : est une variable qui définie la valeur de @
SOA : donne les infos de la zone, comme le serveur DNS principal, l'adresse mail de l'administrateur de la zone
NS : correspond au serveur de noms ayant autorité sur le domaine.
MX : (Mail eXchange) : correspond au serveur de gestion du courrier
A : il s'agit du type de base établissant la correspondance entre un nom canonique et une adresse
IP.
CNAME :(Canonical Name) : il permet de faire correspondre un alias au nom canonique. Il est
particulièrement utile pour fournir des noms alternatifs correspondant aux différents services d'une même
machine
Lycée des Métiers Jacques Prévert Combs – la – Ville
Section de BAC PRO Systèmes électroniques numériques
7
1 SEN
Cours DNS
7. Le serveur DNS BIND
Le serveur DNS BIND (Berkley Internet Naming Daemon), est le serveur DNS le plus utilisé sur Internet.
Il peut être utilisé de différentes manières. Les configurations les plus fréquentes sont :
Serveur cache
Serveur maître
Serveur esclave
Serveurs hybrides
Serveurs furtifs
Serveurs Récursifs / Non récursifs
Les fichiers de configuration de BIND sont stockés sous : /etc/bind/
8. Les commandes associées aux DNS
Commande dos
nslookup indique les enregistrements A et CNAME du domaine fourni en argument connus du serveur DNS
configuré.
ipconfig /flushdns vide le cache de la résolution DNS
ipconfig /displaydns affiche le contenu du cache de la résolution dns.
Lycée des Métiers Jacques Prévert Combs – la – Ville
Section de BAC PRO Systèmes électroniques numériques
8
Téléchargement