Académique Documents
Professionnel Documents
Culture Documents
Service de resolution
de noms
DNS
25
Système de nom de domaine
• Nom d’hôte
La communication entre les hôtes sources et
destinations via Internet nécessite que chaque hôte
dispose d’une adresse IP valide.
Cependant, les milliers adresses IP v4, notamment
ceux utilisées par les serveurs sur internet, ne sont pas
simples à retenir pour les utilisateurs.
En général, les utilisateurs ne connaissent que le
nom des machines ou des services avec lesquels ils
veulent communiquer
(ex : www.goole.sn, www.facebook.com)
26
Système de nom de domaine
• Méthode de résolution
Puisque les machines n’établissent les
communications qu’à l’aide des adresses IP
Comment résoudre les noms des machines en
adresses IP ?
• A l’aide d’un fichier hosts
• En utilisant un service de résolution de noms DNS
27
Système de nom de domaine
• Fichier hosts
Au début d’Internet, la resolution de noms était basée sur
le fichier en clair appelé : HOSTS.TXT
Maintenance centralisée par le NIC (Network Information
Center) du Stanford Research Institute (SRI)
Les administrateurs réseau envoyaient les mises à jour par
e-mail
Dans l’idéal, tout le monde avait la dernière version du
fichier:
• Publié une fois par semaine
• Téléchargeable via FTP
28
Système de nom de domaine
• Fichier hosts
Se trouve dans tous les systèmes d’exploitation
mettant en œuvre TCP/IP
• Windows Seven/8/10
◦ %system%\System32\Drivers\etc
• Linux : dans le dossier /etc
• Mac OS X : /etc
29
Système de nom de domaine
• Fichier hosts
Fichier éditable avec n’importe quel éditeur de textes
Chaque entrée(ligne) contient une association
IP<>nom de machine
## /etc/hosts
# Host Database
#
127.0.0.1 localhost www.ddconsl.sn
255.255.255.255 broadcasthost
::1 localhost
10.157.20.112 visiobb.univ-thies.sn
41.82.212.196 www.univ-thies.sn
30
Système de nom de domaine
• Fichier hosts
Avantages:
• Fichier modifiable
• Rapide (traitement local)
Inconvénient:
• Difficile à mettre à jour pour internet
• Pas de centralisation de l’information
• Informations non vérifiables
31
Système de nom de domaine
• DNS (Domain Name System)
Protocole applicatif permettant de faire la
correspondance entre les noms utilisés par les
machines et les adresses IP utilisées pour
acheminer les paquets
‣ Modèle client / serveur (un émetteur interroge un serveur de noms)
‣ Port 53 / UDP
‣ Port 53 / TCP => transfert de fichiers de zones
‣ Le serveur doit posséder une adresse IP statique et le client doit
connaitre l’adresse IP du serveur
‣ DNS est utilisé par d’autres protocoles applicatifs
32
Système de nom de domaine
Ordre de résolution
1. Recherche d’une correspondance au nom
dans le cache local d’adresses (cache dns)
2. Recherche dans le fichier hosts
3. Requête vers le serveur DNS
‣ Cet ordre peut être modifié dans le fichier
# /etc/nsswitch.conf #/etc/host.conf
#
hosts: files dns order hosts, bind
multi on
33
Système de nom de domaine
• DNS, pourquoi pas un système centralisé
Un seul serveur contiendrait toutes les correspondances requises
par les applications de l’internet
‣ Beaucoup de correspondance à gérer,
‣ Nombre de requêtes importantes sur le serveur
‣ Vulnérable au pannes : si le serveur tombe en panne, tout
internet aussi
‣ Traffic impossible à supporter par un seul serveur
‣ Délai de réponse
‣ problème lié à la maintenance et aux mise à jour perpétuelle de
la base
34
Système de nom de domaine
• DNS, un système distribué
Si un serveur ne connait pas une correspondance, il interroge
un autre serveur jusqu’à atteindre le serveur détenant
l’information
Trois types de serveurs DNS
‣ Les serveur de noms locaux à qui s’adressent les requêtes
locales. Ils ont en charge de la résolution . Ex : serveurs
des FAI
‣ Les serveurs de noms racine qui sont censés savoir
comment se rapprocher de la réponse
‣ Les serveurs de noms de source autorisée qui
contiennent les correspondances officielles
35
Système de nom de domaine
• Espace de nommage DNS (1/2)
• La structure de la base de données DNS est un arbre inversé
appelé l’espace de nommage
• Chaque nœud a une étiquette
• Le nœud racine (et uniquement le nœud racine) a une étiquette
null
36
Système de nom de domaine
• Domaine DNS (1/2)
Un domaine est un sous-arbre entier de l’espace de nommage
37
Système de nom de domaine
• Domaine DNS (2/2)
Le FQDN (Fully Qualified Domain Name)
‣ Nom sans équivoque de la machine
38
Système de nom de domaine
• Domaine DNS (2/2)
Le premier niveau de l’arbre
‣ Top Level Domain (TLD), géré par l’ICANN (Internet Corporation
for Assigned Names and Numbers)
‣ deux types de TLD
• generic TLD : .com, .org, .gov, .net, .biz, .edu
• countries TLD : .fr, .sn, .uk
39
Système de nom de domaine
• Domaine DNS (2/2)
Zone DNS:
• Le système étant hiérarchisé, les machines qui composent cette
infrastructure n’ont qu’une connaissance partielle de l’espace de
noms (ce paramètre de connaissance est appelé zone):
• .
• sn.
• uidt.sn
• ept.sn
41
Système de nom de domaine
• Types de serveurs DNS
Serveurs de noms locaux
• Chaque organisation a un serveur de nom local :
• contient les correspondances relatives à la zone de l’organisation
• toutes les requêtes en provenance de cette organisation vont
vers ce serveur de nom local
Serveurs de noms racine
• existe 13 serveurs racines dans le monde : NASA, DoD, ICANN,
Verisign
• chaque serveur local connait un serveur de nom racine qu’il peut
interroger lorsqu’il ne connait pas une correspondance
• un serveur de nom racine connait au moins les serveurs de nom
de source autorisées de premier niveau : .fr, .sn, .com, .org
42
Système de nom de domaine
• Types de serveurs DNS
Serveurs de noms de source autorisée
• Chaque hôte est enregistré auprès d’au moins deux
« authoritative server» (le primaire et le secondaire) qui stockent
son adresse IP et son nom
• un serveur de nom est dit de source autorisée pour un hôte s’il
est responsable de la correspondance nom/@IP pour cet hôte
• un serveur de nom local n’est pas forcément de source autorisée
de premier niveau (.fr, .sn)
Cache DNS : Réduire le temps de réponse d’une résolution de nom
• Le serveur de nom stocke dans son cache les informations
récentes (TTL d’environ 2 jours)
• Un serveur DNS qui dispose d’un cache n’a pas autorité dessus :
« no authoritative server»
43
Système de nom de domaine
• Délégation
• En général, les serveurs des TLD ne connaissent que les
serveurs DNS des fils
• Par exemple, la zone sn. sait uniquement de univ-thies.sn.
que cette zone est gérée par ns.univ-thies.sn. .
• Si on veut connaitre l’adresse IP correspondant à www.univ-
thies.sn. , il faudra donc le demander à ns.univ-thies.sn. .
• L’objectif est pratique : le propriétaire du domaine univ-
thies.sn peut ainsi gérer l’intégralité de la zone DNS sur ses
serveurs sans avoir besoin de notifier le TLD. On dit le TLD a
délègué la zone
• À son tour, le propriétaire peut déléguer une partie de sa zone
à un tiers (qui gérera la zone etudiant.univ-thies.sn)
44
Système de nom de domaine
• Délégation
• Par exemple 2, la zone sn. sait de ept.sn. que cette zone est
gérée par ns1.kheweul.net. .
• Si on veut connaitre l’adresse IP correspondant à www.ept.sn.
, il faudra donc le demander à ns1.kheweul.net. .
45
Système de nom de domaine
• Fonctionnement de dns
Le service dns est formé de trois composants
• Le résolveur
• Le serveur DNS
• L’espace de denomination du domaine
46
Système de nom de domaine
• Le resolveur /etc/resolv.conf
Fichier /etc/resolv.conf
• Configure la résolution de nom
• Indique quel(s) serveur(s) DNS contacter
50
Système de nom de domaine
• Configuration basique d’un serveur DNS
Fichier /etc/bind/named.conf Fichier /etc/bind/named.conf.options
fichier principal de configuration de bind, permet de paramétrer les options du serveur dns,
contient des inclusions vers d’autres fichiers les serveurs de transferts, les serveurs autorisés à
communiquer avec le serveur DNS, créer des acl
include "/etc/bind/named.conf.options"; pour l’exemple, options {
include "/etc/bind/named.conf.local"; directory "/var/cache/bind";
include "/etc/bind/named.conf.zone"; auth-nxdomain no;
listen-on-v6 { any; };
Fichier /etc/bind/db.labut.th allow-query { };
fichier de configuration de la zone, //allow-recursion { };
forwarders { };
$TTL 604800 };
@ IN SOA ns.labut.th. root.labut.th. (
2014013101 ; Serial Fichier /etc/bind/named.conf.zone
604800 ; Refresh permet de déclarer la zone
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
zone "labut.th"{
; type master;
@ IN NS ns.labut.th. file "/etc/bind/db.labut.th";
@ IN A 192.168.1.254
ns IN A 192.168.1.254
};
dev IN A 192.168.1.3
lucas.labut.th. IN A 192.168.1.25
sauv IN CNAME dev.labut.th. 51