INTERNET & RESEAUX Dino LOPEZ PACHECO lopezpac@i3s.unice.fr
Le modèle OSI
Le modèle OSI (cont)
Résolution et obtention d'adresses Démarrage et auto-configuration Ex. DHCP Recherche d'une adresse IP à partir d'un nom Ex. DNS Recherche d'une adresse MAC à partir d'une adresse IP Ex. ARP 4
Obtention d'un adresse IP 5
Auto configuration Pour profiter de services, l'interface réseau doit être configuré avec Une adresse IP Masque de réseau L'adresse IP du routeur (la passerelle) L'adresse du serveur DNS Le protocole DHCP offre un moyen de configurer l'interface réseau de façon automatique 6
Le protocole Dynamic Host Configuration Protocol DHCP initialement défini dans le RFC 1531 Mis à jour dans le RFC 2131, qui est aujourd'hui le document de référence (réseaux IPv4) DHCP utilise le protocole UDP sur les ports 67 (client serveur) 68 (serveur client) 7
Obtention d'une adresse IP DHCP Server 1 Client DHCP Server 2 DHCPDISCOVER DHCPOFFER DHCPOFFER Collecter et choisir un serveur (ex. 2) DHCPREQUEST DHCPACK 8
Diagramme d'état d'un client DHCP DHCP state diagram from Douglas E. Comer (2006). "Internetworking with TCP/IP Vol.1: Principles, Protocols, and Architecture", 5ed, Prentice Hall 9
Le serveur de noms DNS 10
Introduction Internet est un réseaux constitué par l interconnexion de plusieurs réseaux Les ordinateurs sont identifiés par leur adresses IP Difficile donc de connaître les adresses IP des machines auxquelles il accède. Le système DNS permet d identifier une machine par un (des) nom(s) représentatif(s) de la machine et du (des) réseau(x) sur le(les)quel(s) elle se trouve Il est plus facile de retenir www.google.fr que l'adresse IP d'un serveur 11
Introduction Le système est mis en ouvre par une base de données distribuée au niveau mondial Modèle Client-Serveur Les noms sont gérés par l ICANN (Internet Corporation for Assigned Names and Numbers) et les organismes délégués (generic Top Level Domain ou country-code Top Level Domain), qui accréditent un «registraire de nom de domaine» www.godaddy.com 12
L'espace nom de domaine Les noms constituent un chemin dans un arbre inversé appelé l espace Nom de domaine Organisation similaire à un système de gestion de fichiers Chaque noeud est identifié par un nom Racine appelée root, identifiée par «.» 13
Les noms de domaine 127 niveaux au maximum Taille maximale du domaine : 253o Un nom de domaine est la séquence de labels depuis le nœud de l arbre correspondant jusqu à la racine Deux nœuds fils ne peuvent avoir le même nom unicité d un nom de domaine au niveau mondial Un domaine est un sous-arbre de l espace nom de domaine Un domaine est constitué de noms de domaine et d autres domaines Un domaine intérieur à un autre domaine est appelé un sous domaine 14
Domaines racines Le système DNS impose peu de règles de nommage : noms < 63 caractères majuscules et minuscules non significatives pas de signification imposée pour les labels Le premier niveau de l espace DNS fait exception à la règle : domaines racines prédéfinis : Generic Top Level Domain (gtld) com: organisations commerciales ; ibm.com edu: organisations concernant l education ; mit.edu gov: organisations gouvernementales ; nsf.gov mil: organisations militaires ; army.mil net: organisations réseau Internet ; worldnet.net org: organisations non commerciales ; eff.org int: organisations internationales ; nato.int in-addr.arpa :domaine réservé à la résolution de nom inversée organisations nationales (cctld) : fr, uk, de, it, us, au, ca, se, etc. 15
Domaines racines Les divisions en sous-domaines existent dans certains pays et pas dans d autres : edu.au, com.au, etc. co.uk, ac.uk, etc. ca.ab, ca.on, ca.gb pas de division du.fr 16
Noms de domaine Les divisions en sous-domaines existent dans certains pays et pas dans d autres : edu.au, com.au, etc. co.uk, ac.uk, etc. ca.ab, ca.on, ca.gb pas de division du.fr A l inverse de l adressage IP la partie la plus significative se situe à gauche de la syntaxe : sun2.ethernet1.macweb.fr 193.148.37.201 vers le plus significatif vers le plus significatif 17
Délégation Le système DNS est entièrement distribué au niveau planétaire; Le mécanisme sous-jacent est la délégation de domaine A tout domaine est associé une responsabilité administrative Une organisation responsable d un domaine peut Découper le domaine en sous-domaines Déléguer les sous-domaines à d autres organisations : qui deviennent à leur tour responsables du (des) sous-domaine(s) qui leurs sont délégué(s) peuvent, à leur tour, déléguer des sous-domaines des sous-domaines qu elles gèrent Le domaine parent contient alors seulement un pointeur vers le sousdomaine délégué 18
Les serveurs de noms Les logiciels qui gèrent les données de l espace nom de domaine sont appelés des serveurs de nom (name servers) Les serveurs de nom enregistrent les données propres à une partie de l espace nom de domaine dans une zone. Le serveur de nom a autorité administrative sur cette zone. Un serveur de nom peut avoir autorité sur plusieurs zone. Une zone contient les informations d un domaine sauf celles qui sont déléguées. 19
Types de serveurs de nom Serveur de nom primaire: maintient la base de données de la zone dont il a l autorité administrative Serveur de nom secondaire: obtient les données de la zone via un autre serveur de nom qui a également l autorité administrative Interroge périodiquement le serveur de nom primaire et met à jour les données La redondance permet la défaillance éventuelle du primaire et du (des) secondaire(s) Un serveur de nom peut être primaire pour une (des) zone(s) et secondaire pour d autre(s). Cache du Serveur: Toute information récupérée par le serveur est mise en cache. Les entrées disparaissent du cache au bout d un certain temps (RFC 2136). 20
Serveurs racines Les serveurs ayant autorité sur un domaine connaissent les serveurs racine (zone obligatoire) Les serveurs racine connaissent au moins les serveurs de noms pouvant résoudre le premier niveau (.com,.edu,.fr, etc.) Pierre angulaire du système DNS : si les serveurs racine sont inopérationnels, il n'y aurait plus de communication sur l Internet multiplicité des serveurs racines 21
Résolution itérative d'un nom Resolver 23
Résolution récursive d'un nom Resolver 24
Résolution inverse Consiste à obtenir le nom de domaine à partir de l adresse IP le domaine in-addr.arpa les noms des noeuds correspondent aux octets de l adresse 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 sousdomaines, le 4ème niveau correspond à un NS connaissant le nom de domaine associé à cette adresse IP 25
Résolution inverse Ex. : in-addr.arpa -> A.ROOT-SERVER.NET 193.in-addr.arpa -> NS.RIPE.NET 148. 193.inaddr.arpa -> NS.RIPE.NET 37.148. 193.inaddr.arpa -> first.tvt.fr 26
Enregistrements d un serveur de nom Les entrées d un serveur DNS (enregistrements) sont enregistrées dans une BD. Bonne pratique utiliser les noms de domaine correspondants db. macweb.fr, macweb.fr.dns db.193.148.37, 193.148.37.dns db.127.0.0, 127.0.0.dns db.cache, cache.dns Types d enregistrements SOA, NS, A, MX, PTR, CNAME, TXT et HINFO 27
Types d'enregistrements d'un serveur DNS SOA NS A Spécifie le serveur DNS primaire Infos : Nom du domaine, Nom du serveur primaire, Adresse de l administrateur (Serial number, Rafraîchissement, Tentative, Expiration, miinttl) PTR spécifie les serveurs de nom primaires ou secondaires correspondance nom -> adresse correspondance adresse -> nom CNAME TXT Autre nom (alias) pour le nom de l équipement Permet d'associer un texte quelconque avec une machine HINFO Description de la machine 28
Enregistrements MX Permet l adressage Email sur la base du nom de domaine plutôt que sur l adresse du (des) serveur(s) de mail : mylogin@mydomain.com plutôt que mylogin@smtp.mydomain.com permet à l émetteur d ignorer la machine serveur de mail permet le déplacement du serveur de mail vers une autre machine permet la gestion de plusieurs serveurs de mail avec priorité dans l ordre de consultation des serveurs Le mail exchanger d'un domaine ne doit pas forcement être part de de ce domaine L enregistrement MX est consulté par les mailers (SMTP client) Tient compte des priorités macweb.fr IN MX 8 sun1.macweb.fr macweb.fr IN MX 99 next.macweb.fr 29
Format des paquets DNS Protocole DNS : requêtes et réponses au même format Identification : 16 bits pour l identification de la requête ou de la réponse correspondante Flags le bit QR le champ Opcode le bit AA le bit TC le bit RD le bit RA les champ Zero le champ RCODE le champ QDCOUNT le champ ANCOUNT le champ NSCOUNT le champ ARCOUNT 32 30
Le champ flags du paquet DNS ID : identifiant de la requête La réponse doit contenir le même ID QR : 0 requête 1 réponse OPcode : 0 requête standard, 1 requête inverse et 2 état de la requête AA : réponse d'un serveur avec autorité = 1 TC message divisé en plusieurs parties car il est trop long RD (Recursive Desired) Le serveur doit poursuivre la requête jusqu'à l'obtention de la réponse. RA champ égal à 1 dans une réponse si la récursivité est admis par le serveur Z non utilisé. 0 pour tous les requêtes et réponses. 31
Le champ RCODE du paquet DNS Rcode : code de la réponse 0 Pas d'erreur 1 Erreur : Le serveur n'a pas compris la requête 2 Server failure : Le serveur est en panne ou bien il y n'a pas eu une réponse après avoir renvoyé la requête 3 Name error : type d'erreur que seulement le serveur ayant autorité peut déclarer 4 Not implemented : le serveur n'implemente pas la fonction demandé 5 - Refused 32
Format de paquets Le champ question Nom Type Classe (1= Internet) La partie réponse Nom (longueur - nom du domaine et à la fin 00) Type Classe (1= Internet) TTL Rdlength Rdata Pointeur 32 33
Les champs d'un paquet DNS Les «Type» sont (RFC 1035) A (1) NS (2) MX (15) SOA (6) CNAME (5) TXT (16) Pointer : Pour effets de compression, un pointeur peut être utilisé pour référencer un même donnée répété plusieurs fois. On trouve les pointeurs dans le champ Nom. Un pointeur est identifié en mettant les derniers bits les plus significatifs à 11, suivi d'un offset. Pour les réponses de type MX, les 2 premiers bytes de RDATA indiquent la priorité du serveur 34
Utilisation du DNS Utiliser un serveur de nom machine elle-même serveur de nom : 127.0.0.1 machine non serveur de nom : spécifier un ou plusieurs serveur de nom : adresses IP obligatoirement. éventuellement son domaine. sous UNIX : fichier /etc/resolv.conf sous NT, W95 : administration TCP/IP Administrer un serveur de nom UNIX, NT mémoire importante : minimum 16/32 MB pour le service. opérationnelle 24/24 laisser passer le port 53 sur UDP et TCP configurer démon named 35