Vous êtes sur la page 1sur 31

Domain Name System

Plan
INTRODUCTION Principes Lespace nom de domaine Les noms de domaine Le domaine Domaines racines Dlgation Les serveurs de noms Types de serveurs de nom Resolvers Serveurs racines Rsolution inverse Enregistrements
     

SOA NS Adresses A, AAAA Alias CNAME PTR MX

Domaines virtuels Donnes caches Utilisation du DNS

Bibiographie : DNS and BIND, Paul Albitz & Cricket Liu - OReilly & Associates, Inc. Internet Networking with TCP/IP, Douglas Comer - Prentice Hall Autres sources : http://www.dns.net/dnsrd/

Introduction, le besoin
LInternet est constitu de rseaux (dizaines de milliers) Les rseaux sont constitus de sous-rseaux Les sous-rseaux sont constitus de machines, La technologie de base (TCP/IP) permet laccs aux machines par leur adresse IP, Il est pratiquement devenu impossible aux humains de connatre les adresses (IP) des machines auxquelles ils veulent accder. Le systme DNS permet didentifier une machine par un (des) nom(s) reprsentatif(s) de la machine et du (des) rseau(x) sur le(les)quel(s) elle se trouve ; exemple : www.lip6.fr identifie la machine www sur le rseau lip6.fr Le systme est mis en uvre par une base de donnes distribue au niveau mondial Les noms sont grs par un organisme mondial : linterNIC et les organismes dlgus : RIPE, NIC France, NIC Angleterre, etc.

Le principe
bas sur le modle client / serveur le logiciel client interroge un serveur de nom; typiquement :  lutilisateur associe un nom de domaine une application ; exemple : telnet m1.lip6.fr  lapplication cliente requiert la traduction du nom de domaine auprs dun serveur de nom (DNS) : cette opration sappelle la rsolution de nom  le serveur de nom interroge dautres serveurs de nom jusqu ce que lassociation nom de domaine / adresse IP soit trouve le serveur de nom retourne ladresse IP au logiciel client : 193.148.37.201 le logiciel client contacte le serveur (telnetd) comme si lutilisateur avait spcifi une adresse IP : telnet 193.148.37.201

Principe (illustration)
$ telnet
m1.lip6.fr

DNS serveur DNS serveur DNS

Demande de rsolution m1.lip6fr ???? client Rponse Telnet 193.148.37.201 193.148.37.201

serveur Telnetd

serveur DNS

Lespace Nom de domaine


Chaque unit de donne dans la base DNS est indexe par un nom Les noms constituent un chemin dans un arbre invers appel lespace Nom de domaine Organisation similaire un systme de gestion de fichiers

Chaque noeud est identifi par un nom Racine appele root, identifie par . 127 niveaux au maximum

Les noms de domaine


Un nom de domaine est est la squence de labels depuis le noeud de larbre correspondant jusqu la racine . fr M1.lip6.fr lip6 m1 Deux noeuds fils ne peuvent avoir le mme nom ==> unicit dun nom de domaine au niveau mondial

Le domaine
Un domaine est un sous-arbre de lespace nom de domaine Domaine complet fr Domaine fr lip6 inria m1 noeud m1.lip6.fr Domaine lip6

Des noeuds peuvent avoir les mmes noms dans des domaines diffrents : ns.lip6.fr et ns.renault.fr

Concepts, rsum et extension


Un domaine est un sous-arbre de lespace Nom de domaine Un domaine est constitu de noms de domaine et d autres domaines Un domaine intrieur un autre domaine est appel un sous domaine Exemple : le domaine fr comprend le noeud fr et tous les noeuds contenus dans tous les sous-domaines de fr Un nom de domaine est un index dans la base DNS; exemple :  m1.lip6.fr pointe vers une adresse IP  lip6.fr pointe vers des informations de routage de mail et ventuellement des informations de sous-domaines  fr pointe vers des informations structurelles de sous-domaines
Les machines sont relies entre elles dans un mme domaine logiquement et non par adressage. Exemple : 10 machines dun mme domaine appartiennent 10 rseaux diffrents et recouvrent 6 pays diffrents.

Domaines racine
Le systme DNS impose peu de rgles de nommage :  noms < 63 caractres  majuscules et minuscules non significatives  pas de signification impose pour les labels Le premier niveau de lespace DNS fait exception la rgle :  7 domaines racines prdfinis :  com : organisations commerciales ; ibm.com  edu : organisations concernant leducation ; mit.edu  gov : organisations gouvernementales ; nsf.gov  mil : organisations militaires ; army.mil  net : organisations rseau Internet ; worldnet.net  org : organisations non commerciales ; eff.org  int : organisations internationales ; nato.int  arpa : domaine reserv la rsolution de nom inverse  organisations nationales : fr, uk, de, it, us, au, ca, se, etc.

Domaines racine (suite)


Nouveaux domaines racine en cours de normalisation:  firm, store, web, arts, rec, info, nom Certaines organisations nationales peuvent tre gres administrativement par un consortium : RIPE Les divisions en sous-domaines existent dans certains pays et pas dans dautres :  edu.au, com.au, etc.  co.uk, ac.uk, etc.  ca.ab, ca.on, ca.gb  pas de division du .fr

Lecture des noms de domaine


A linverse de ladressage IP la partie la plus significative si situe gauche de la syntaxe : sun2.ethernet1.lip6.fr
vers le plus significatif

193.148.37.201
vers le plus significatif

sun2. ethernet1. lip6.fr


domaine franais (.fr) domaine de lorganisation lip6 sous-domaine lip6 machine sun2 du domaine ethernet1. lip6.fr

Dlgation
Le systme DNS est entirement distribu au niveau plantaire; Le mcanisme sous-jacent est la dlgation de domaine A tout domaine est associ une responsabilit administrative Une organisation responsable dun domaine peut  dcouper le domaine en sous-domaines  dlguer les sous-domaines dautres organisations :  qui deviennent leur tour responsables du (des) sous-domaine(s) qui leurs sont dlgu(s)  peuvent, leur tour, dlguer des sous-domaines des sous-domaines quelles grent Le domaine parent contient alors seulement un pointeur vers le sousdomaine dlgu; exemple :  lip6.fr est dlgu lorganisation lip6  La socit lip6 gre donc les donnes propres ce domaine.


lip6.fr (en thorie seulement) pourrait tre gr par lorganisation responsable du domaine .fr (NIC France) qui grerait alors les donnes de lip6.fr

Les serveurs de noms


Les logiciels qui grent les donnes de lespace nom de domaine sont appels des serveurs de nom (name servers) Les serveurs de nom enregistrent les donnes propres une partie de lespace nom de domaine dans une zone. Le serveur de nom autorit administrative sur cette zone. Un serveur de nom peut avoir autorit sur plusieurs zone. Une zone contient les informations dun domaine sauf celles qui sont dlgues. ca fr

bc

ab

on

q b

domaine zone

Types de serveurs de nom


Serveur de nom primaire : maintient la base de donnes de la zone dont il a lautorit administrative Serveur de nom secondaire : obtient les donnes de la zone via un autre serveur de nom qui a galement lautorit administrative  interroge priodiquement le serveur de nom primaire et met jour les donnes Il y a un serveur primaire et gnralement plusieurs secondaires La redondance permet la dfaillance ventuelle du primaire et du (des) secondaire(s) Un serveur de nom peut tre primaire pour une (des) zone(s) et secondaire pour dautre(s).

Resolver
Les resolvers sont les processus clients qui contactent les serveurs de nom Fonctionnement :  contacte un name serveur (dont l (les) adresse(s) est (sont) configures sur la machine excutant ce resolver)  interprte les rponses  retourne linformation au logiciel appelant  gestion de cache (dpend de la mise en uvre) Le serveur serveur de nom interroge galement dautres serveurs de nom, lorsquil na pas autorit sur la zone requise (fonctionnement itratif ou rcursif) Si le serveur de nom est en dehors du domaine requis, il peut tre amen contacter un serveur racine ( ne pas confondre avec un domaine racine)

Serveurs racine
Les serveurs racine connaissent les serveurs de nom ayant autorit sur tous les domaines racine Les serveurs racine connaissent au moins les serveurs de noms pouvant rsoudre le premier niveau (.com, .edu, .fr, etc.) Pierre angulaire du systme DNS : si les serveurs racine sont inoperationnels ==> plus de communication sur lInternet  ==> multiplicit des serveurs racines  actuellement jusqu 14 parpills sur la plante  chaque serveur racine reoit environ 100000 requtes / heure Exemple de rsolution : m1.lip6.fr partir de ....edu resolver
m1.lip6.fr m1.lip6.fr 193.148.37.201 .fr NS

ROOT NS
m1.lip6.fr lip6.fr NS

fr NS
m1.lip6.fr

lip6 NS
193.48.184.201

Ns ....edu

Resolution inverse
Consiste a obtenir le nom de domaine partir de ladresse IP  pour faciliter la comprhension des humains  pour des raisons de scurit Plus dlicate que nom -> IP car le systme DNS est organis pour la rsolution de nom ==> recherche exhaustive ??? Solution : utiliser les adresses comme des noms :  le domaine in-addr.arpa  les noms des noeuds correspondent aux octets de ladresse IP en ordre inverse  le domaine in-addr.arpa a 256 sous-domaines,  chacun de ces sous-domaines a 256 sous-domaines,  chacun de ces sous-domaines a, son tour, 256 sous-domaines,  le 4me niveau correspond un NS connaissant le nom de domaine associ cette adresse IP

Resolution inverse (suite) .


arpa in-addr 0 193 255

148

255

37

255 m1.lip6.fr

201

255

Resolution inverse (suite)


le nom de domaine associ la rsolution inverse est not selon ladresse IP inverse :  car la rsolution dun nom de domaine se fait de droite gauche  exemple : 210.37.148.193.in-addr.arpa  rsolution :  in-addr.arpa -> A.ROOT-SERVER.NET  193.in-addr.arpa -> NS.RIPE.NET  148. 193.in-addr.arpa -> NS.RIPE.NET  37.148. 193.in-addr.arpa -> first.tvt.fr  Organismes grant les classes  Classe A et B -> internic US.  Classe C 192 : internic 193, 194, 195 RIPE avec dlgations nationales

Enregistrements dun serveur de nom


Les donnes dun serveur DNS sont enregistres dans une base identifie par les noms de domaine correspondants; exemple :  db. lip6.fr, lip6.fr.dns  db.193.148.37, 193.148.37.dns  db.127.0.0, 127.0.0.dns  db.cache, cache.dns Types denregistrements  SOA: dcrit lautorit administrative,  NS : liste de serveurs de nom pour ce domaine  A : correspondance nom -> adresse  PTR : correspondance adresse -> nom  CNAME : alias  TXT : texte  HINFO : description machine

Enregistrement : SOA
SOA = Start of Authority Spcifie que ce serveur de nom a autorit sur le domaine ; ; Database file lip6.fr.dns for lip6.fr zone. ; @ IN 64 3600 600 86400 3600 SOA ns.lip6.fr. ; serial number ; refresh ; retry ; expire ) ; minimum TTL fplaye.lip6.fr. (

Enregistrement : NS
spcifie les serveurs de nom ayant autorit sur ce domaine ; ; Zone NS records ; lip6.fr @ @ IN NS IN IN ns. NS NS

194.172.2.2 ntserver.

Enregistrements : adresses
hub3_ouest hub5_ouest intranet ism labo-reseau MODEM1 MODEM2 NETBUILDER_SUN next Ntserv ROUTEUR_MDT sunserv sunstation1 IN IN IN IN IN IN IN IN IN IN IN IN IN A A A A A A A A A A A A A 193.148.20.16 193.148.20.17 193.148.80.2 193.148.20.15 193.148.80.3 193.148.80.4 193.148.80.5 193.148.20.1 193.48.184.3 193.148.60.2 193.48.184.250 193.148.20.2 193.148.20.3

A pour ipV4 AAAA ipV6

canonical names

Enregistrements :alias
ftp gopher mail www IN IN IN IN CNAME CNAME CNAME CNAME intranet intranet intranet intranet

aliases of canonical names

Enregistrements : PTR
10.20.148.193.in-addr 11.20.148.193.in-addr 12.20.148.193.in-addr 13.20.148.193.in-addr 14.20.148.193.in-addr 2.20.148.193.in-addr 3.20.148.193.in-addr 4.20.148.193.in-addr 2.80.148.193.in-addr 3.80.148.193.in-addr 4.80.148.193.in-addr 5.80.148.193.in-addr IN IN IN IN IN IN IN IN IN IN IN IN

Canonical names

PTR PTR PTR PTR PTR PTR PTR PTR PTR PTR PTR PTR

sunstation8.lip6.fr. sunstation9.lip6.fr. sunstation10.lip6.fr. ultra1.lip6.fr. suntx1.lip6.fr. sunserv.lip6.fr. sunstation1.lip6.fr. sunstation2.lip6.fr. intranet.lip6.fr. labo-reseau.lip6.fr. MODEM1.lip6.fr. MODEM2.lip6.fr.

Enregistrement MX
MX = Mail eXchanger Permet ladressage Email sur la base du nom de domaine plutot que sur ladresse du (des) serveur(s) de mail :  fplaye@lip6.fr plutot que fplaye@m2.lip6.fr  permet lmetteur dignorer la machine serveur de mail  permet le deplacement du serveur de mail vers une autre machine  permet la gestion de plusieurs serveurs de mail avec priorit dans lordre de consultation des serveurs Lenregistrement MX est consult par les mailers (SMTP client) Tient compte des priorits; exemple
 

lip6.fr lip6.fr

IN IN

MX MX

8 99

sun1.lip6.fr next.lip6.fr

Dones caches : les serveurs racines


; ; Cache file:
. IN NS A.ROOT-SERVERS.NET. IN . IN NS B.ROOT-SERVERS.NET. IN . IN NS C.ROOT-SERVERS.NET. IN . IN NS D.ROOT-SERVERS.NET. IN . IN NS E.ROOT-SERVERS.NET. IN . IN NS F.ROOT-SERVERS.NET. IN . IN NS G.ROOT-SERVERS.NET. IN . IN NS H.ROOT-SERVERS.NET. IN . IN NS I.ROOT-SERVERS.NET. IN A.ROOT-SERVERS.NET. A 198.41.0.4 B.ROOT-SERVERS.NET. A 128.9.0.107 C.ROOT-SERVERS.NET. A 192.33.4.12 D.ROOT-SERVERS.NET. A 128.8.10.90 E.ROOT-SERVERS.NET. A 192.203.230.10 F.ROOT-SERVERS.NET. A 39.13.229.241 G.ROOT-SERVERS.NET. A 192.112.36.4 H.ROOT-SERVERS.NET. A 128.63.2.53 I.ROOT-SERVERS.NET. A 192.36.148.17

Domaines virtuels
Une machine peut grer plusieurs domaines (zones) sur un mme serveur DNS; lorsque ces domaines sont associs des adresses faisant dj partie dun autre domaine, ils sont dits virtuels. exemple  DNS 193.148.37.2  domaine lip6.fr  domaine dummy.fr  domaine bidon.fr

Utilisation du sytme DNS


Utiliser un serveur de nom  machine elle-mme serveur de nom : 127.0.0.1  machine non serveur de nom : spcfier un ou plusieurs serveur de nom : adresses IP obligatoirement. ventuellement son domaine.  sous UNIX : fichier /etc/resolv  sous NT, W95 : administration TCP/IP Administrer un serveur de nom  plateformes UNIX, NT  mmoire importante : mini 16/32 MB pour le service.  impratif : ne pas swapper  oprationnelle 24/24  laisser passer le port 53 sur UDP et TCP Debugging : Nslookup