CH3 Réseaux Rappels sur les réseaux
Modèle TCP/IP vs modèle OSI Modèle à 5 couches 5 4 3 2 1 Application Transport Network Data link Physical
Physical layer Transport de données sous une représentation physique (courant, ondes radio, lumière ) Médias de type point-to-point (ex. câbles) ou broadcast (ex. ondes radio) Concrètement Câblage UTP (différentes catégories) Fibres optiques (mono/multimode) Wi-Fi Data link layer (1/4) IEEE 802.3 (Ethernet) dans la plupart des réseaux Adresses MAC delavaa@tw023670:~/info151$ ifconfig eth0 Link encap:ethernet HWaddr 00:14:22:B6:20:1D inet addr:172.19.3.3 Bcast:172.19.255.255 Mask:255.255.0.0 inet6 addr: fe80::214:22ff:feb6:201d/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:14923 errors:0 dropped:0 overruns:0 frame:0 TX packets:12806 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:12082595 (11.5 MiB) TX bytes:12275362 (11.7 MiB)
SYST RPS STAT DUPLX SPEED POE MODE 1X 2X 1 2 3 4 5 6 7 8 9 10 SYST RPS STAT DUPLX SPEED POE MODE 1X 2X 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 1 2 3 4 5 6 7 8 9 10 15X 16X 17X 18X Catalyst 4510R FAN STATUS FLEX-SLOT 1 2 3 4 5 6 7 8 9 10 WS-X4506-GB-T POWER OVER ETHERNET MAX 15.4W/PORT 1000 BASE-X SWITCHING MODULE STATUS WS-X4506-GB-T POWER OVER ETHERNET MAX 15.4W/PORT 1000 BASE-X SWITCHING MODULE STATUS WS-X4506-GB-T POWER OVER ETHERNET MAX 15.4W/PORT 1000 BASE-X SWITCHING MODULE STATUS 31X 33 X 47 X 32X 34X 1 10/100/1000 1 10/100/1000 1 10/100/1000 2 1000-X 10/100/1000 2 1000-X 10/100/1000 2 1000-X 10/100/1000 3 1000-X 10/100/1000 3 1000-X 10/100/1000 3 1000-X 10/100/1000 Catalyst 3560 SERIES PoE-48 3 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 15X 16X 17X 18X 48 X 4 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 4 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 4 1 2 4 31X 33 X 47X 32X 34X 48X Catalyst 3560 SERIES PoE-48 3 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 5 5 5 1 2 4 6 6 6 POE POE POE Catalyst 4510R FAN STATUS FLEX-SLOT 1 2 3 4 5 6 7 8 9 10 WS-X4506-GB-T POWER OVER ETHERNET MAX 15.4W/PORT 1000 BASE-X SWITCHINGMODULE STATUS WS-X4506-GB-T POWER OVER ETHERNET MAX 15.4W/PORT 1000 BASE-X SWITCHINGMODULE STATUS WS-X4506-GB-T POWER OVER ETHERNET MAX 15.4W/PORT 1000 BASE-X SWITCHINGMODULE STATUS 1 10/100/1000 1 10/100/1000 1 10/100/1000 2 10 0 0- X 10/100/1000 2 10 0 0- X 10/100/1000 2 10 0 0- X 10/100/1000 3 1000-X 10/100/1000 3 1000-X 10/100/1000 3 1000-X 10/100/1000 4 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 4 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 4 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 10/100/1000 1000-X 5 5 5 6 6 6 POE POE POE Data link layer (2/4) Switches!spanning tree!table MAC Server room Floor Floor Data link layer (3/4) Connexions / portes de switches 100Base-TX : connexion Ethernet à 100 MbpsMbps = Mbits/sec cuivre (UTP cat. 5 ou supérieure) 100Base-FX : connexion Ethernet à 100 Mbps en fibre optique multimode (2 fibres) 1000Base-SX : connexion Ethernet 1000 Mbps sur deux fibres optiques multimode utilisant une optique laser à ondes courtes 1000Base-T : connexion Ethernet 1000 Mbps cuivre (UTP cat. 5E ou supérieure) 10Gigabit Ethernet : connexion Ethernet 10 GbpsGbits/sec en fibre optique (multimode jusqu'à 300m, monomode jusqu'à 40 km)
Data link layer (4/4) SWITCH>sh mac Dynamic Address Count: 409 Secure Address Count: 0 Static Address (User-defined) Count: 0 System Self Address Count: 75 Total MAC addresses: 484 Maximum MAC addresses: 8192 Non-static Address Table: Destination Address Address Type VLAN Destination Port ------------------- ------------ ---- -------------------- 0000.0c07.ac01 Dynamic 171 GigabitEthernet0/1 0000.0c07.ac04 Dynamic 171 GigabitEthernet0/1 0000.0c07.ac05 Dynamic 171 GigabitEthernet0/1... 0000.746c.97b7 Dynamic 171 FastEthernet0/5 0006.5b12.1142 Dynamic 171 FastEthernet0/20 0006.5b66.6c8c Dynamic 171 FastEthernet0/7 0009.6b46.bc14 Dynamic 171 FastEthernet0/12 0009.6b74.d5b4 Dynamic 171 FastEthernet0/7... Network layer IP (1/4) Cf. cours «Réseaux» de G. Leduc Rappel : adresses IP plages d adresses privées de 10.0.0.0 à 10.255.255.255 (10/8) de 172.16.0.0 à 172.31.255.255 (172.16/12) de 192.168.0.0 à 192.168.255.255 (192.168/16) segments / ranges différents! routeurs
bash-2.05b$ /sbin/ifconfig eth0 Link encap:ethernet HWaddr 00:10:A7:1A:D6:2B inet addr:172.19.3.5 Bcast:172.19.255.255 Mask:255.255.0.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:4431368 errors:0 dropped:0 overruns:0 frame:0 TX packets:2315518 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:1351203493 (1288.6 Mb) TX bytes:1344545033 (1282.2 Mb) Interrupt:10 Base address:0x5000 eth1 Link encap:ethernet HWaddr 00:50:BA:E2:EF:33 inet addr:10.0.0.1 Bcast:10.255.255.255 Mask:255.0.0.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:4 dropped:0 overruns:0 carrier:8 collisions:68 txqueuelen:100 RX bytes:0 (0.0 b) TX bytes:240 (240.0 b) Interrupt:9 Base address:0x6100 lo Link encap:local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:554 errors:0 dropped:0 overruns:0 frame:0 TX packets:554 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1567744 (1.4 Mb) TX bytes:1567744 (1.4 Mb) -bash-2.05b$ [root@gollum root]# route add -net 192.168.0.0/24 gw 10.0.0.254 [root@gollum root]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.0.0 10.0.0.254 255.255.255.0 UG 0 0 0 eth1 172.19.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 10.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 eth1 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 172.19.3.1 0.0.0.0 UG 0 0 0 eth0 [root@gollum root]# eth1 eth0
Network layer IP (4/4) ARP Table ARP sur les routeurs [delavaa@linuxbox delavaa]$ telnet 192.168.10.1 Trying 192.168.10.1... Connected to 192-168-10-1.routers.network.company.be (192.168.10.1). Escape character is '^]'. User Access Verification Password: CISCO-ROUTER>sh arp Protocol Address Age (min) Hardware Addr Type Interface Internet 192.168.109.5 138 0800.067e.9274 ARPA Vlan171 Internet 192.168.107.13 204 0007.0ea1.0500 ARPA Vlan1 Internet 192.168.105.1-0000.0c07.ac01 ARPA Vlan355 Internet 172.16.20.198 2 000d.60ad.2a0e ARPA Vlan171 Internet 192.168.109.4 6 0004.75c3.35d6 ARPA Vlan171 Internet 192.168.107.12 204 0002.b998.6580 ARPA Vlan1 Internet 192.168.107.15 127 0005.3281.2a40 ARPA Vlan1 Internet 192.168.105.3-0006.527c.28bc ARPA Vlan355 Internet 192.168.105.2 204 00d0.0265.e7fc ARPA Vlan355... Network layer ICMP (1/2) Ping : echo-request, echo-reply Microsoft Windows XP [Version 5.1.2600] (C) Copyright 1985-2001 Microsoft Corp. C:\Documents and Settings\delavaa>ping 172.19.3.5 Pinging 172.19.3.5 with 32 bytes of data: Reply from 172.19.3.5: bytes=32 time<1ms TTL=64 Reply from 172.19.3.5: bytes=32 time<1ms TTL=64 Reply from 172.19.3.5: bytes=32 time<1ms TTL=64 Reply from 172.19.3.5: bytes=32 time<1ms TTL=64 Ping statistics for 172.19.3.5: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 0ms, Average = 0ms C:\Documents and Settings\delavaa>
Network layer ICMP (2/2) Traceroute (ICMP mais aussi UDP) [root@gollum root]# traceroute -I www.ulb.ac.be traceroute to www.ulb.ac.be (164.15.59.215), 30 hops max, 38 byte packets 1 local.gateway (172.19.3.1) 0.574 ms 0.508 ms 0.563 ms 2 62.235.203.1 (62.235.203.1) 8.206 ms 6.949 ms 6.713 ms 3 * * 195.95.29.17 (195.95.29.17) 6.738 ms 4 194.119.224.58 (194.119.224.58) 7.667 ms 6.877 ms 6.860 ms 5 ge.m320.ext.science.belnet.net (194.53.172.65) 8.522 ms 8.021 ms 7.211 ms 6 oc192.m160.core.science.belnet.net (193.191.1.1) 6.849 ms 8.138 ms 6.959 ms 7 oc48.m20.access.brussels.belnet.net (193.191.1.78) 6.862 ms 7.420 ms 6.938 ms 8 vub-ulb-1.customer.brussels.belnet.net (193.191.4.94) 8.353 ms 7.852 ms 7.478 ms 9 * * * 10 * * * 11 www.ulb.ac.be (164.15.59.215) 8.362 ms 7.436 ms 8.344 ms [root@gollum root]# Transport layer TCP (connexion! SYN/ACK) UDP (datagramme) Notion de ports (privilégiés/non privilégiés) Exemples DNS = UDP 53, LDAP = TCP 389, SMTP = TCP 25, HTTP = TCP 25, SSH = TCP 22 tcptraceroute
Application layer Protocoles applicatifs utilisant TCP ou UDP comme transport Exemple : SMTP Configuration des interfaces
eth* Nom habituel (Linux) eth0, eth1,... Variantes, en particulier pour les réseaux sans fil (wlan0,...) Mac OS (en0,...) ifconfig Commande standardisée Souvent accompagnée de scripts (ifup, /etc/ ini.d/services start,...)
/etc/network/interfaces +/- standardisé sous Linux Contourné par network-managers en mode graphique Dépend de la distribution /etc/iftab /etc/udev/rules.d/70-persistent-net.rules Manque une interface entre le driver (module kernel, voir modprobe) et l interface eth* de plus haut niveau
/etc/hosts DNS du pauvre Important en cas de changement de hostname /etc/resolv.conf Pointeur vers le serveur DNS Contient aussi le domaine de recherche
route Voir cours de réseau, et TP traceroute DHCP
Introduction à DHCP (1/3) Définition Configuration réseau des machines sans DHCP BOOTP Présentation de DHCP Avantages 2/24/2008 1 Introduction à DHCP (2/3) Présentation de DHCP (suite) Principes de fonctionnement Agent Leases Options DNS dynamic updates Problèmes perçus Broadcasts Charge Fiabilité Quand ne pas utiliser DHCP Introduction à DHCP (3/3)
Introduction à DHCP (3/3) Présentation de DHCP (suite) Politiques (policies) d assignation des adresses Statique Dynamique Mixte 2/24/2008 2 Fonctionnement de DHCP (1/6) Paquets DHCP Relay agents Messages DHCPDISCOVER, DHCPOFFER, DHCPREQUEST, DHCPACK, DHCPNACK, DHCPRELEASE Explications par quelques exemples Fonctionnement de DHCP (2/6)
Fonctionnement de DHCP (2/6) 2/24/2008 3 Fonctionnement de DHCP (3/6) Fonctionnement de DHCP (4/6)
Fonctionnement de DHCP (4/6) Obtention d une adresse IP 2/24/2008 4 Fonctionnement de DHCP (5/6) Confirmation d une adresse IP au redémarrage Fonctionnement de DHCP (6/6)
Fonctionnement de DHCP (6/6) Extension du lease Déménagement vers un autre segment Déconnexion du réseau 2/24/2008 5 Exemple détaillé serveur et client dans le même segment serveur=192.168.1.1 client=192.168.1.100 fournie par le serveur
2/24/2008 6 Configuration d un serveur DHCP (1/6) Exemple : ISC DHCP sous Linux Topologie du réseau (subnets) Plages d adresses IP (pools, ranges) Options Entrées statiques 7
2/24/2008 Configuration d un serveur DHCP (2/6) Configuration Topologie du réseau d un (subnets) serveur DHCP (2/6) subnet 192.168.0.0 netmask 255.255.255.0 { } subnet 192.168.12.0 netmask 255.255.255.0 { } subnet 192.168.13.0 192.168.0.0 netmask 255.255.255.0 {{ } subnet 192.168.14.0 192.168.12.0 netmask 255.255.255.0 { } subnet 192.168.13.0 netmask 255.255.255.0 { } subnet 192.168.14.0 netmask 255.255.255.0 { } Topologie du réseau (subnets) Configuration d un serveur DHCP (3/6) Configuration Plages d adresses d un IP serveur (pools, ranges) DHCP (3/6) Plages d adresses IP (pools, ranges) subnet 192.168.12.0 netmask 255.255.255.0 { range 192.168.12.5 192.168.12.250; } subnet 192.168.12.0 netmask 255.255.255.0 { subnet 192.168.13.0 netmask 255.255.255.0 range 192.168.12.5 192.168.12.250; { } pool { range 192.168.13.5 192.168.13.99; subnet 192.168.13.0 netmask 255.255.255.0 range 192.168.13.150 192.168.13.200; { } pool { } range 192.168.13.5 192.168.13.99; range 192.168.13.150 192.168.13.200; } } 8 8
2/24/2008 Configuration d un serveur DHCP (4/6) Options Configuration d un serveur DHCP (4/6) default-lease-time 86400; min-lease-time 3600; max-lease-time 604800; Options # 1 day # 1 hour # 1 week option domain-name-servers 192.168.0.7, 192.168.0.8; # DNS servers option default-lease-time domain-name ulb.ac.be; 86400; # 1 day # domain name min-lease-time 3600; # 1 hour subnet max-lease-time 192.168.0.0 604800; netmask 255.255.255.0 # 1 week { } # no DHCP provided in the Data Centre -> no pool option domain-name-servers 192.168.0.7, 192.168.0.8; # DNS servers subnet option 192.168.12.0 domain-name ulb.ac.be; netmask 255.255.255.0 { # domain name range 192.168.12.5 192.168.12.250; subnet option 192.168.0.0 routers 192.168.12.1; netmask 255.255.255.0 { } # option no DHCP subnet-mask provided in 255.255.255.0; the Data Centre -> no pool option broadcast-address 192.168.12.255; } subnet 192.168.12.0 netmask 255.255.255.0 { range 192.168.12.5 192.168.12.250; option routers 192.168.12.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.12.255; } Configuration d un serveur DHCP (5/6) Options (suite) Configuration d un serveur DHCP (5/6) subnet 192.168.13.0 netmask 255.255.255.0 { pool { range 192.168.13.5 192.168.13.99; range 192.168.13.150 192.168.13.200; } subnet option 192.168.13.0 routers 192.168.13.1; netmask 255.255.255.0 { option pool { subnet-mask 255.255.255.0; option range broadcast-address 192.168.13.5 192.168.13.99; 192.168.13.255; } range 192.168.13.150 192.168.13.200; subnet } 192.168.14.0 netmask 255.255.255.0 { range option 192.168.14.2 routers 192.168.13.1; 192.168.14.254; option routers subnet-mask 192.168.14.1; 255.255.255.0; option subnet-mask broadcast-address 255.255.255.0; 192.168.13.255; } option broadcast-address 192.168.14.255; subnet default-lease-time 192.168.14.0 netmask 7200; 255.255.255.0 # 2 hours{ min-lease-time range 192.168.14.2 3600; 192.168.14.254; # 1 hour max-lease-time option routers 192.168.14.1; 43200; # 4 hours } option subnet-mask 255.255.255.0; option broadcast-address 192.168.14.255; default-lease-time 7200; # 2 hours min-lease-time 3600; # 1 hour max-lease-time 43200; # 4 hours } Options (suite) 9 9
2/24/2008 Configuration d un serveur DHCP (6/6) Configuration Exemple d entrée d un statique serveur DHCP (6/6) Exemple d entrée statique host DESKTOP03 { hardware ethernet 00:14:22:B6:20:1D; fixed-address 192.168.13.101; # machine spéciale ayant besoin d'une IP fixe host DESKTOP03 { } hardware ethernet 00:14:22:B6:20:1D; fixed-address 192.168.13.101; # machine spéciale ayant besoin d'une IP fixe } Autres fichiers intéressants (1/3) Autres fichiers intéressants (1/3) Fichier contenant les leases /var/lib/dhcp/dhcpd.leases Fichier contenant les leases lease 192.168.12.8 { starts /var/lib/dhcp/dhcpd.leases 0 2006/02/05 19:47:49; ends 0 2006/02/06 19:47:49; binding state active; lease 192.168.12.8 { next binding state free; starts 0 2006/02/05 19:47:49; hardware ethernet 00:14:22:4c:7e:bc; ends 0 2006/02/06 19:47:49; uid "\001\000\024\"L~\274"; binding state active; set ddns-rev-name = "8.12.168.192.in-addr.arpa."; next binding state free; set ddns-txt = "31e36b457fc930bb0111b14096f7f5ac6a"; hardware ethernet 00:14:22:4c:7e:bc; set ddns-fwd-name = "DESKTOP45.ulb.ac.be"; uid "\001\000\024\"L~\274"; client-hostname "DESKTOP45"; set ddns-rev-name = "8.12.168.192.in-addr.arpa."; } set ddns-txt = "31e36b457fc930bb0111b14096f7f5ac6a"; set ddns-fwd-name = "DESKTOP45.ulb.ac.be"; client-hostname "DESKTOP45"; } 10 10
2/24/2008 Autres fichiers intéressants (2/3) Autres fichiers intéressants (2/3) Logs (via syslog) /var/log/messages Exemple Logs (via d obtention syslog) d une IP via un relay agent /var/log/messages Exemple d obtention d une IP via un relay agent Feb 2 11:20:05 DHCPSERVE dhcpd: DHCPDISCOVER from 00:09:6b:d4:14:55 (DESKTOP16) via 192.168.12.1 Feb 2 11:20:06 DHCPSERVE dhcpd: DHCPOFFER on 192.168.12.234 to 00:09:6b:d4:14:55 Feb 2 11:20:05 DHCPSERVE (DESKTOP16) dhcpd: via DHCPDISCOVER 192.168.12.1from 00:09:6b:d4:14:55 (DESKTOP16) via 192.168.12.1 Feb 2 11:20:06 DHCPSERVE dhcpd: DHCPREQUEST for 192.168.12.234 (192.168.0.254) Feb 2 11:20:06 DHCPSERVE from 00:09:6b:d4:14:55 dhcpd: DHCPOFFER (DESKTOP16) on 192.168.12.234 via to 192.168.12.1 00:09:6b:d4:14:55 (DESKTOP16) via 192.168.12.1 Feb 2 11:20:06 DHCPSERVE dhcpd: DHCPACK DHCPREQUEST on for 192.168.12.234 to 00:09:6b:d4:14:55(DESKTOP16) (192.168.0.254) from 00:09:6b:d4:14:55 via 192.168.12.1 (DESKTOP16) via 192.168.12.1 Feb 2 11:20:06 DHCPSERVE dhcpd: DHCPACK on 192.168.12.234 to 00:09:6b:d4:14:55(DESKTOP16) via 192.168.12.1 Autres fichiers intéressants (3/3) Autres Exemple fichiers de prolongation intéressants d un lease (3/3) Feb 2 11:20:41 DHCPSERVE dhcpd: DHCPREQUEST for 192.168.13.136 from 00:0d:60:ae:c2:92 (LAPTOP12) via eth0 Exemple de prolongation d un lease Feb 2 11:20:41 DHCPSERVE dhcpd: DHCPACK on 192.168.12.136 Feb 2 11:20:41 to DHCPSERVE 00:0d:60:ae:c2:92(LAPTOP12) dhcpd: DHCPREQUEST for via eth0 192.168.13.136 from 00:0d:60:ae:c2:92 (LAPTOP12) via eth0 Feb 2 11:20:41 DHCPSERVE dhcpd: DHCPACK on 192.168.12.136 to 00:0d:60:ae:c2:92(LAPTOP12) via eth0 Exemple d abandon d IP en cours de lease Exemple d abandon d IP en cours de lease Jan 30 21:04:31 DHCPSERVE dhcpd: DHCPRELEASE of 192.168.14.151 from 00:09:6b:02:20:4e (LAPTOP15) via 192.168.14.151 (found) Jan 30 21:04:31 DHCPSERVE dhcpd: DHCPRELEASE of 192.168.14.151 from 00:09:6b:02:20:4e (LAPTOP15) via 192.168.14.151 (found) 11 11
Références DNS Paul ALBITZ & Cricket LIU, DNS and BIND, O Reilly, 4th edition, 2001. RFC 1034 et 1035 http://www.isc.org manpages de BIND Historique Introduction Domain Name System Définition Structure Données Justification BIND 2
Introduction Introduction Historique (1/2) Historique (1/2) Fin des années 1960, création d ARPAnet Utilisation d un fichier central HOST.TXT pour Fin des les années correspondance 1960, création noms/ip d ARPAnet Gestion par un organisme central Utilisation d un fichier central HOST.TXT pour Fichier les correspondance disponible sur un serveur noms/ip FTP Mises Gestion à par jour un : envoi organisme d un email central Début Fichier des disponible années sur 1980, un serveur apparition FTP de TCP/IP Mises à jour : envoi d un email Croissance d ARPAnet (ancêtre d Internet) Début des années 1980, apparition de TCP/IP Croissance d ARPAnet (ancêtre d Internet) Introduction Introduction Historique (2/2) Historique (2/2) Fichier HOSTS.TXT inapproprié taille Fichier charge HOSTS.TXT du serveur FTP inapproprié / bande passante fréquence taille des mises à jour conflits charge du de serveur noms FTP / bande passante problèmes fréquence des consistance mises à jour En conflits 1984, de publication noms des RFC 882 et 883 décrivant problèmes le de Domain consistance Name System (DNS) En 1984, publication des RFC 882 et 883 décrivant le Domain Name System (DNS) 3 3
Historique Introduction Domain Name System Définition Structure Données Justification BIND Introduction Historique Introduction Domain Name System - Définition Domain Name System Base Définition de données distribuée Contrôle Structure local de segments (gestion déléguée) Données Disponibilité Justificationde la totalité des données pour BIND l entièreté du réseau Modèle client/serveur Performance et robustesse : replication et caching Servers / resolvers 4 Introduction
Introduction Introduction Domain Name System - Structure Domain Name System - Structure Introduction Introduction Domain Name System - Structure Domain Name System - Structure Arbre inversé, sommet = racine (root) Analogie : file system Chaque Arbre inversé, nœud sommet possède = un racine label(root) Notion Analogie de : domaines file systemet sous-domaines Nom Chaque de nœud domaine possède absolu un / relatif label Délégation Notion de domaines de sous-domaines et sous-domaines Nom de domaine absolu / relatif Délégation de sous-domaines 6 6
Introduction Introduction Domain Name System - Structure Domain Name System - Structure Introduction Introduction Domain Name System - Structure Domain Name System - Structure 7 7
Introduction Domain Name System - Données Noms de domaines = indexes Un domaine contient des sous-domaines et/ou des hosts Un host possède un nom de domaine et des informations associées adresse IP serveur de mail Aliases Resource Records (RR) 8 Introduction Domain Name System - Données Introduction
Introduction Introduction Domain Name System - Justification Domain Pourquoi Name une telle System structure - Justification? Pourquoi une telle structure? Introduction Introduction Domain Name System - Justification Domain Pourquoi Name une telle System structure - Justification? Résoudre les problèmes du système HOSTS.TXT Pourquoi noms de une domaines telle structure hiérarchiques? Résoudre plus de les problèmes collisions du système HOSTS.TXT noms de domaines hiérarchiques plus de collisions 10 10
Introduction Domain Name System - Justification Pourquoi une telle structure? Résoudre les problèmes du système HOSTS.TXT délégation de l autorité pour des domaines ou sous-domaines plus de gestion centralisée base de données distribuée ne repose plus sur un serveur unique Introduction Historique Introduction Domain Name System - BIND Domain Name System Berkeley DéfinitionInternet Name Domain Implémentation Structure de DNS la plus utilisée (open-source) Données Maintenue Justification par l ISC BIND Disponible pour tous les Unix mais aussi pour Windows Utilisé dans le cadre de ce cours 11 Séance 5 03/03/2008
Le Domain Name Space Le Domain Name Space d'internet Le Délégation Domain Name Space Serveurs Le Domain DNS Name et zones Space d'internet Les Délégation resolvers La Serveurs résolution DNS de et noms zones Les caching resolvers La résolution de noms Le caching Le Domain Name Space Nom donné Le Domain à l arbrename Space Racine unique (root, au label null) Profondeur Nom donné maximale à l arbre de 127 niveaux Feuilles Racine unique = machines (root, et au informations label null) associés Profondeur (terme maximale générique de 127 : hosts/rrs) niveaux Feuilles = machines et informations associés (terme générique : hosts/rrs) 13 13
Domain Name Space - Noms de domaines Chaque nœud label de 64 char. max. Dotted notation Le Domain Name Space Domain name complet lit5.ulb.ac.be. FQDN Noms de domaines Domaines Resource Records Domain name en anglais vs nom de domaine Le Domain en Name français Space d'internet Délégation Serveurs DNS et zones Les resolvers La résolution de noms Le caching 14 Domain Name Space - Domaines Domaine = sous-arbre du domain name space Domain name d un domaine = domain name du nœud au sommet du domaine 15
Domain Name Space - Domaines Hosts Domain : représentés Name par Space leur domain - Domaines name Un domain contient tous les hosts dont le domain name est dans le domaine (!) Hosts : représentés par leur domain name Hosts liés de manière logique (organisation, pays) Un domain contient tous les hosts dont le domain name Un nœud est dans peut représenter le domaine (!) en même temps un host ET un domaine Hosts liés de manière logique (organisation, pays) Exemple : hp.com (le host hébergeant le site web, Un http://hp.com) nœud peut et représenter hp.com (le domaine) en même temps un host Information ET un domaine résultant d une requête DNS dépendante Exemple : hp.com du contexte (le host hébergeant le site web, http://hp.com) et hp.com (le domaine) Information résultant d une requête DNS dépendante du contexte Domain Name Space - Domaines Notion Domain de (sous-)domaine Name Space -relative Domaines Pour éviter les confusions Notion top level de (sous-)domaine (TLD) = first-level relativedomain Pour = les éviter enfants les de confusions la racine, comme.com ou.be second-level top level domain domain (TLD) = enfant = first-level d un domain TLD et = les ainsi enfants de suite de la racine, comme.com ou.be second-level domain = enfant d un TLD et ainsi de suite 16 16
Domain Name Space Resource Records Resource Record (RR) = enregistrement DNS = données associées à un domain name. Différentes Le Domain variétés Name Space de RR stockables dans le domain Noms name de domaines space Domaines mappings hostname IP (records «A») serveurs Resource de Records messagerie pour un domaine ou une Le machine Domain (records Name «Space MX») d'internet Délégation mappings IP hostname (records «PTR») Serveurs aliases (records DNS et «zones CNAME») etc. Les resolvers La résolution de noms Le caching 17 Le Domain Name Space d Internet Gestion par l ICANN A l origine, 7 TLDs (generic TLDs, gtld) com, edu, gov, mil, net, org par et pour les Etats-Unis à la base Nouveaux TLDs : biz, name, info domaines géographiques par pays country-code ISO : be, fr, nl, uk pour certains, structure organisée : co.uk, ac.uk 18
Délégation Gestion décentralisée Délégation = gestion déléguée à une autre entité autonome Le domaine parent ne contient aucune info d un sous-domaine délégué excepté des pointeurs vers les sources de données pour ce sous-domaine Un domaine peut avoir des sous-domaines délégués et d autres non délégués 19 Délégation Délégation
Délégation Le Domain Name Space Le Domain Name Space d'internet Délégation Serveurs DNS et zones Les resolvers La résolution de noms Le caching 20 Serveurs DNS et zones Name servers = serveurs DNS = programmes stockant les informations du domain name space Zone = partie du name space (avec les informations complètes) Une zone est chargée à partir d un fichier local, ou d un autre serveur DNS Authoritative for the zone : le serveur est la référence pour les données de la zone 21
Serveurs DNS et zones Zone domaine Serveurs DNS et zones les types de serveurs DNS Le Domain Name Space Le Domain Name Space d'internet Primary Délégation masters Secondary masters Slaves Notion Serveurs relative DNS et à une zones zone, pour laquelle les serveurs Les types sont de authoritatifs serveurs DNS Primary Les fichiers master de données pour une zone = lit les données de Les la resolvers zone dans un fichier plat local Secondary La résolution master de noms pour une zone = reçoit sa zone Le caching par un transfert depuis un autre serveur authoritatif pour la zone, son master server, et est authoritatif Slave pour une zone = reçoit sa zone par un transfert depuis un autre serveur 22 Serveurs DNS et zones les types de serveurs DNS
Serveurs DNS et zones les types de serveurs DNS Quand un secondary master (ou simple slave) démarre, il charge ses zones depuis une Le Domain sauvegarde Name Space locale puis vérifie auprès du Le Domain primaryname master Space si ces d'internet données doivent être Délégation rafraîchies Serveurs Importance DNS d avoir et zones plusieurs serveurs authoritatifs Les types de pour serveurs une DNSzone : redondance, Les fichiers de performance, données caractère local Les resolvers La résolution de noms Le caching 23 Serveurs DNS et zones les fichiers de données Appelés zone data files Un fichier par zone, sur le primary master de la zone copie sur le secondary master (slave) Contiennent des Resource Records (RR) décrivant la zone hosts de la zone informations relatives aux éventuelles délégations de domaines 24
Les resolvers Resolver = client qui interroge les DNS interroge un serveur DNS Le interprète Domain Name sa réponse Space Le Domain un ou plusieurs Name Space RR ou une d'internet erreur Délégation retourne l information au demandeur Serveurs Souvent, DNS un resolver et zones est un ensemble de librairies Les resolvers linkées aux programmes (telnet, ftp ) La résolution : on parle de noms de stub resolver Les root servers Le Récursion gros du travail est du côté serveur! Itération Résolution inverse Le caching 25 Résolution de noms Résolution de nom = processus de recherche d une information dans le name space Effectué par un serveur DNS pour le compte d un (stub) resolver Un serveur DNS peut donner des informations des zones pour lesquelles il est authoritatif est aussi capable de chercher dans le name space entier des informations pour lesquelles il n est pas authoritatif C est le processus de name resolution 26
Résolution de noms les root servers Les root servers savent quels serveurs sont authoritatifs pour les TLD Exemple : query = www.microsoft.com? un root server indiquera les serveurs authoritatifs pour.com Idem : le serveur authoritatif pour.com indiquera qui l est pour.microsoft.com Et ainsi de suite on se «rapproche» de la réponse 27 Résolution de noms les root servers Les root servers sont fondamentaux pour le fonctionnement de DNS sur Internet passage obligé pour obtenir une information (sauf caching) au nombre de 13 répartis dans le monde sur des réseaux différents, des ISP différents reçoivent des milliers de requêtes par seconde! Exemple de résolution girigiri.gbrmpa.gov.au
Le Domain Name Space Le Domain Name Space d'internet Délégation Serveurs DNS et zones Les resolvers La résolution de noms Les root servers Récursion Itération Résolution inverse Le caching 28 Résolution de noms recursion Dans l exemple précédent, les serveurs DNS ne sont pas égaux devant le travail: quatre serveurs se sont contentés de donner la meilleure réponse qu ils avaient (généralement un referral, càd un pointeur vers un autre name server) contrairement au serveur DNS local, ils n ont pas euxmêmes envoyé de requêtes à d autres afin de trouver la réponse c est le serveur DNS local, interrogé par le resolver, qui a du suivre les pointeurs successifs jusqu au résultat Pourquoi? 29
Résolution de noms récursion Pourquoi Résolution? de noms récursion Car le stub resolver n a pas l intelligence pour Pourquoi suivre un? referral Comment Car le stub le resolver DNS local n a pas sait-il l intelligence qu il ne peut pour pas suivre lui aussi un referral répondre par un referral Comment Parce que le le DNS stub local resolver sait-il a fait qu il une ne query peut dite pas «récursive lui aussi répondre» par un referral Deux Parce variétés que le stub de queries resolver DNS a fait une existent query : dite récursives «et» itératives (ou non-récursives) Deux variétés de queries DNS existent : récursives et itératives (ou non-récursives) Résolution de noms récursion vs itération Récursive : le serveur DNS répète un processus Résolution basique (interroger de noms un serveur récursion DNS vs distant itération et suivre tout referral) jusqu à ce qu il reçoive la réponse. Récursive : le serveur DNS répète un processus basique Un serveur (interroger DNS qui reçoit un serveur une query DNS récursive distant est et obligé de suivre répondre tout avec referral) la réponse jusqu à finale ce (ou qu il une reçoive erreur la si non existante), réponse. il ne peut pas répondre avec un referral Un Si le serveur DNS n est qui reçoit pas authoritatif une query récursive pour est obligé l information de répondre avec recherchée, la réponse finale il va devoir (ou une la erreur demander si non à existante), d autres il serveurs ne peut pas répondre avec un referral Par Si le politesse, serveur n est il ne pas le fera authoritatif pas de manière pour récursive l information (i.e. recherchée, il ne passe il pas va devoir la patate la demander chaude) mais à d autres itérative serveurs Par politesse, il ne le fera pas de manière récursive (i.e. il ne passe pas la patate chaude) mais itérative 30 30