Tutoriel Sur Les Serveurs

Embed Size (px)

DESCRIPTION

Ce livre concerne les config des serveurs sous linux

Citation preview

Tutoriel sur les serveursVersion 1.1 Copyright 2004 L'quipe Freeduc-Sup Permission est accorde de copier, distribuer et/ou modifier ce document selon les termes de la Licence de Documentation Libre GNU (GNU Free Documentation License), version 1.1 ou toute version ultrieure publie par la Free Software Foundation sans section invariante, sans texte de premire de couverture, ni texte de quatrime de couverture. Une copie de la licence est fournie dans la section intitule "GNU Free Documentation License". Revision History Revision 1.0 Abstract Ensemble de documents raliss pour la freeduc-sup. Septembre 2007

Table of Contents 1. Elments de cours sur TCP/IP Prsentation de TCP/IP OSI et TCP/IP La suite de protocoles TCP / IP IP (Internet Protocol, Protocole Internet) TCP (Transmission Control Protocol,Protocole de contrle de la transmission) UDP (User Datagram Protocol) ICMP (Internet Control Message Protocol) RIP (Routing Information Protocol) ARP (Address Resolution Protocol Fonctionnement gnral Les applications TCP-IP Modle client/serveur L'adressage des applicatifs : les ports Les ports prdfinis connatre 2. Elments de cours sur l'adressage IP Adresses physiques (MAC) et adresses logiques (IP) Notion d'adresse Physique et de trames Notion d'adresse logique et de paquets Rsolution d'adresses logiques en adresses physiques Attribution d'une adresse IP Internet Adressage IP Structure des adresses IP Classes d'adresses Identification du rseau

Adresses rserves Les sous-rseaux Pourquoi crer des sous rseaux ? Masque de sous-rseau Sous-rseaux Adressage de sur-rseaux 3. Fichiers de configuration du rseau et commandes de base Prsentation du document : les outils de l'administrateur rseau Les fichiers de configuration Le fichier /etc/hosts Le fichier /etc/networks Le fichier /etc/host.conf Le fichier /etc/resolv.conf Les fichiers de configuration des interfaces rseau Les outils de l'administrateur rseau La commande ifconfig La commande arp La commande route La commande netstat La commande traceroute La commande dig La commande host 4. Elments de cours sur ARP Le protocole ARP Processus de recherche de l'adresse physique 5. La rsolution d'adresses physiques - Travaux Pratiques Tester la prsence d'un poste sur le rseau avec la commande ping Interface couche 3 / couche 2 , IP / ethernet : utilisation du protocole ARP Le cache ARP La commande ARP Tromper ARP avec une adresse inexistante Tromper ARP avec une adresse Ethernet existante mais mal associe Utilisation de l'analyseur de trames Ethereal examen de paquets ARP 6. Le routage Principe Acheminement des paquets TCP-IP Les tables de routage Acheminement Internet Domaine d'acheminement Principe du choix d'une voie d'acheminement Routage dynamique 7. Le protocole IPv6 Fonctionnalits d'IPv6 Principales caractristiques d'IPv6 Allocation de l'espace d'adressage Reprsentation des adresses IPv6 Reprsentation des adresses IPv6 : forme prfre Reprsentation des adresses IPv6 : forme abrge Reprsentation des adresses IPv6 : forme mixte

Reprsentation des Masques de sous-rseaux Types d'adresses Porte des adresses 8. Les commandes et fonctionnalits IPv6 Les principales commandes IPv6 Le protocole de dcouverte des voisins L'autoconfiguration 9. Les tunnels IPv4/IPv6 Comment se relier au rseau IPv6 ? Configuration d'un tunnel IPv6/IPv4 Configuration d'un routeur IPv6 10. Installation d'un serveur Telnet et FTP Description et objectifs de la squence Prsentation des concepts importants Extrait de /etc/services : Extrait de /etc/inetd.conf Configuration avec xinetd TCP-Wrapper Elments de configuration Extrait de /etc/inetd.conf TCP Wrapper Extrait de /etc/syslog.conf Extrait de /var/log/syslog Consignes pour le processus d'installation et de configuration Procdure de tests Problmes que vous pourrez rencontrer 11. TP Unix - Gestion des Utilisateurs Gestion des Utilisateurs Documentation technique Exercices Amlioration du bash Exercices /etc/skel (profil par dfaut) Exercice Droits par dfaut Exercice Ajout de comptes Exercices Droits d'accs, et multigroupes Exercice 12. Travaux pratiques : Telnet et FTP Quelques remarques Configuration de telnet Configuration de TCP-Wrapper Test de l'accs ftp authentifi Configuration d'un service ftp anonyme Test de l'accs ftp et scurisation du service telnet, ftp et la scurit 13. scp, sftp et les tunnels avec ssh Prsentation

Mode de fonctionnement de SSH Mode de fonctionnement de la couche transport SSH Fichiers de configuration d'OpenSSH Configurer et utiliser SSH Premiers pas Utiliser un agent ssh Automatisation dans X Comprendre la redirection de port (Port Forwarding) Redirection locale de port (-L Local) Redirection distante de ports (-R Remote) Schma de redirection distante de ports Exemple de cas d'utilisation X and Port Forwarding Automatisation de tches SSH Scnario d'utilisation d'un proxy ssh Proxy HTTP Autres scnarios Utilisation de rsync Utilisation de SCP et de SFTP Utilisation de scp Utilisation de sftp Rfrences 14. Mettre en place un VPN avec PPP et SSH Prsentation Le protocole PPP Configuration et installation du VPN Premire tape : configuration de SSH Test de la connexion Explication sur le fonctionnement de la maquette L'analyse de trame Les services pop, imap et smtp Les services HTTP(s) et FTP Conclusion Rfrences et annexes 15. Les fichiers hosts Prsentation Avant de dmarrer Fiche de cours Travaux Pratiques Questions 16. Installation d'un serveur HTTP Rsum Installation et prsentation du serveur Apache 2 Installation du serveur Apache 2 Prsentation de l'environnement Installation d'un service minimum Scurisation des accs Un serveur WEB personnel pour chaque utilisateur Activation du serveur (Rappel) Test de la configuration

Questions 17. TP 1 : installation d'un serveur HTTP Rsum Installation d'un serveur Web Introduction Configuration du serveur Activation du serveur Test de la configuration Auto-valuation sur le premier TP 18. TP 2 : cration de pages Web Rsum Vrification de la configuration Installation d'un site Web Dveloppement d'un site Test de vos pages Utilisation des alias Auto valuation sur le deuxime TP 19. TP 3 : configuration des rpertoires personnels Configurer le compte personnel Dvelopper un site personnel Tester l'accs au site personnel Auto-valuation sur le troisime TP 20. TP 4 : mise en place d'un accs scuris Dployer un site d'accs en ligne Scuriser l'accs ce site par un mot de passe Tester la configuration. Les fichiers .htaccess Auto-valuation sur le quatrime TP 21. TP 5 : Utilisation de scripts CGI Etudier les sources fournies en annexe Dvelopper un formulaire et adapter les scripts Tester le fonctionnement de votre script. Auto-valuation sur le cinquime TP 22. TP 6 : Serveurs webs virtuels et redirection Avant de commencer sur les serveurs web virtuels Serveur web virtuel bas sur les adresses ip Serveur Web virtuel bas sur le nom Application sur la redirection Annexe pour le "web-hosting" 23. Le chiffrement Qu'est-ce que le chiffrement ? Les mcanismes de chiffrement Le chiffrement symtrique Le chiffrement asymtrique Que permet de faire le chiffrement ? Garantir la confidentialit d'un message Authentifier l'metteur d'un message La signature lectronique Mise en oeuvre Les certificats

L'utilit d'un certificat Qu'est-ce qu'un certificat x509 ? Le protocole SSL Principes du protocole SSL Exemple de fonctionnement du protocole SSL avec un serveur WEB 24. TP sur le serveur WEB scuris Prsentation du TP Les paquets installer Etape 1 : La cration des certificats Cration du certificat serveur Cration du certificat de l'autorit de certification La signature du certificat serveur par le CA (Certificate Autority) Installation du certificat d'autorit de certification Etape 2 : configuration d'Apache2 Activation du module ssl Configuration du port Configuration du virtual host 25. Le service SAMBA Introduction Elments d'installation et de configuration de SAMBA Le fichier de configuration sous Linux Les tapes de la configuration du serveur Premire tape - Configuration du fichier smb.conf Deuxime tape - Dclarer les ressources partages Fichier de configuration d'un serveur SAMBA : Cration d'utilisateurs Samba Accs depuis un poste client Linux Accs depuis un poste client Windows Serveur Samba en tant que contrleur de domaine 26. Travaux pratiques : installation d'un serveur SAMBA Droulement des oprations Configuration du fichier smb.conf et dmarrage des services Cration de comptes utilisateurs Vrification de la configuration sur le serveur SAMBA Procdure de test partir d'un client Linux Procdure de test partir d'un client Windows Configuration d'un contrleur de domaine. Automatisation de cration de comptes. Administration graphique 27. Elments de cours sur le service DHCP Rsum Rle d'un service DHCP Pourquoi mettre en place un rseau TCP/IP avec des adresses IP dynamiques Protocole DHCP(Dynamic Host Configuration Protocol) Fonctionnement de DHCP Attribution d'une adresse DHCP Renouvellement de bail IP Configuration d'un serveur DHCP Mise en oeuvre d'un client DHCP Rle de l'agent de relais DHCP

28. Travaux pratiques : installation d'un serveur DHCP Indications pour la ralisation du TP Installation du serveur Configuration du serveur Installation des clients Procdure de test Ralisation du TP 29. Travaux pratiques : installation d'un agent relais DHCP Routeur et agent relais DHCP (RFC 1542) La maquette Installation 30. Installation d'un serveur DNS Description et objectifs de la squence Qu'est ce que le service de rsolution de noms de domaine Prsentation des concepts Notion de domaine, de zone et de dlgation le domaine in-addr.arpa Fichiers, structure et contenus Principaux types d'enregistrements Structure des enregistrements La dlgation Serveur primaire et serveur secondaire Le cache Installation et configuration d'un serveur DNS Fichiers dj installs rndc, le fichier de configuration, le fichier de cl Procdure de configuration du serveur Configurer les fichiers Configuration du DNS manuellement Le fichier named.conf Le fichier db.foo.org Le fichier db.foo.org.rev Complments pratiques Dmarrer ou arrter le service Finaliser la configuration Procdure de configuration des clients Avec windows Avec GNU/Linux Procdure de tests Vrifier la rsolution de noms : Dpannage et outils Les erreurs de chargement de bind nslookup, dig Le cache du DNS Les journaux Remarques Annexes Annexe 1 - extraits de fichiers de configuration Annexe 2 - Serveur primaire et serveur secondaire Annexe 3 - Mise en place d'une dlgation de zone

Annexe 3 - Outils de diagnostic et de contrle 31. Travaux dirigs : installation du service DNS Prsentation - le contexte 32. Travaux pratiques : installation du service DNS Prsentation Prparation de votre environnement rseau client et serveur Installation du serveur de noms primaire Configuration du service serveur DNS manuellement Configuration du service client manuellement Configuration de la zone reverse Installation du serveur de noms secondaire Procdure de test du serveur secondaire Test de l'enregistrement SOA 33. Installation d'un serveur NFS Rsum Installation des produits clients et serveurs Les fichiers de configuration du serveur NFS Les fichiers de configuration du client NFS Exemple Unix de montage NFS Configuration du serveur Configuration et utilisation du client Unix/Linux 34. Travaux pratiques : partages NFS Premire partie Deuxime partie Troisime partie 35. Installation d'un service de messagerie Le service de messagerie lectronique Terminologie MHS, MTA, UA, DUA Historique et volution de sendmail MIME Pourquoi Postfix Buts premiers : un nouveau MTA sous Unix L'Auteur Architecture de postfix La rception des messages (entres) Dlivrer les messages Une fonction / un programme Apports en termes de scurit : Communication interprocessus par sockets Unix ou file (FIFO) Semi rsidence Files d'attente multiples Configuration et fichiers de configuration de Postfix Configuration - extrait du fichier /etc/postfix/master.cf Le fichier de configuration /etc/postfix/main.cf Le fichier de configuration des aliases /etc/aliases Surveillance et maintenance de postfix Structure des messages Le dialogue entre le client et le serveur PostOFFICE

IMAP (Internet Message Access Protocol) Remarques sur pop3 et imap 36. Travaux pratiques : configuration d'un systme de messagerie Installation de postfix DNS - prparation pralable Configuration du serveur postifx. Installation du serveur SMTP Test de la configuration du serveur SMTP Installation du serveur PostOFFICE Pop3 Test du serveur Pop3 Utilisation des alias Utilisation des listes La gestion des erreurs Mise en place du service IMAP sur le serveur Plus loin dans le dcryptage Mise en place du client IMAP Le relayage Autres techniques de filtrage et autres services de postfix 37. Installation d'un serveur DDNS avec bind et DHCP Rsum Elments sur le service DDNS Les aspects sur la scurit 38. Travaux pratiques : DDNS Ralisation Les fichiers de configuration Le fichier named.conf Le fichier de zone directe Le fichier de zone in-addr.arpa Le fichier rndc.conf Le fichier de cl partage Le fichier dhcpd.conf Procdure de tests des services Intgration des services Gnrer un nom dynamiquement pour les clients DHCP 39. Installation d'un service Web-mail Prsentation Architecture gnrale du service Installation et configuration OpenWebmail Prparation de la machine Installation d'OpenWebmail Configuration de l'application OpenWebmail Test de l'environnement Configuration de l'environnement utilisateur Test et environnement OpenWebmail Application 40. Installation d'un service mandataire (Proxy SQUID) Installer Squid Configuration de squid Initialisation de Squid Les options de dmarrage de Squid

Contrler les accs Contrler les accs par authentification Interface web de Squid et produits complmentaires La journalisation Configurer les clients Forcer le passage par Squid (Proxy transparent) Le redirecteur SquidGuard Les applications non prises en charge par un service proxy 41. Travaux pratiques : installation de SQUID Application Prparation de la maquette Installation et configuration du service proxy Configuration du client Mise en place d'une ACL simple Utilisation de fichiers pour stocker les rgles des ACL Configuration des messages d'erreurs Automatisation de la configuration des clients. Installation et configuration du service proxy Squid transparent. Mise en place de l'authentification Liens Annexes Fichier squid.conf - test avec Squid 2.5 Exemples d'ACLs Squid 2.2 ACL par authentification Squid 2.2 ACL sur des plages horaires Squid 2.2 42. Installation d'un serveur PostgreSQL avec Apache Avant de dmarrer Les ressources sur PostgreSQL Accs aux archives Prsentation Prsentation de PostgreSQL Mode de fonctionnement de PostgreSQL Langage de commande pour PostgreSQL Prsentation de PHP Mode de fonctionnement de PHP Le langage PHP Dialogue client et serveurs PHP, Apache et PostgreSQL Exemple de code 43. Travaux pratiques : PostgreSQL Prsentation PostgreSQL Test de la base Serveur Apache et PHP Serveur PostgreSQL/Apache et PHP TP de synthse 44. Surveillance, continuit de service Principe de fonctionnement Le matriel Assurer la surveillance entre machines du cluster Le logiciel

les pr-requis L'installation les fichiers de configuration Mise en route Exercices 45. Lilo : Linux Loader Objectifs Prsentation de Lilo Lilo Documentation Avant de commencer Linux SGF Les partitions Disque IDE ou EIDE Disques E(i)DE et CDROM Disques E(i)DE et SCSI Disques SCSI Restriction du BIOS Installation MBR et PBR Installer Lilo Dos ou Windows 9.x Windows NT Exemple avec 3 systmes Avec d'autres systmes Lilo Excution de Lilo Options de configuration Outils de configuration Exemple de fichier de configuration /etc/lilo.conf Dsinstaller Lilo Choix du systme Autres solutions sans Lilo Loadlin rdev initrd Modules initrd (suite) Conclusion 46. Travaux pratiques : Kernel et Noyau Objectifs Quelques remarques Compilation Installation et activation de module make-kpkg pour les modules Utilisation de Grub Librairies 47. Init : Initialisation du systme sous Linux Documentation 5 phases:

Premires explications: Le processus de BOOT Lilo Init Le rpertoire /etc/rc.d Squences du programme init Le niveaux d'excution (runlevels) Le niveau d'excution par dfaut Le fichier /etc/inittab Contenu d'un rpertoire rcx.d Comment choisir un mode d'excution Utilitaires de configuration Arrter ou dmarrer un service Ajout ou suppression d'un service Placer une commande au dmarrage du systme Arrt du systme La commande shutdown La disquette de BOOT Cration des disquettes Dpannage Mot de passe de root oubli Dmarrer en "single user" Conclusion 48. TP : Sytme de gestion de fichiers Swap ext loop Alternative permettant de choisir le device loop loop encrypt loop iso9660 Fin du TP 49. CVS : Concurrent Version System Prsentation Horloge systme et synchronisation Le dpt (repository) Initialisation du dpt Configuration du serveur CVS Accs au dpt Modules Les commandes principales de CVS 50. Travaux pratiques : Concurrent Version System Objectifs Installer et configurer CVS Gestion d'un projet en mode non connect Gestion d'un projet en mode connect 51. L'annuaire LDAP Introduction Prsentation de LDAP Le protocole Le modle de donnes

Les mthodes d'accs Le langage de commande Concevoir un annuaire Dterminer les besoins, les donnes, le schma Crer une base de donnes Installer, configurer et Administrer LDAP Installer les packages sur le serveur Les fichiers de configuration du serveur Ressources 52. TP 1- Installer, configurer et Administrer LDAP Installer les packages sur le serveur Les fichiers de configuration du serveur 53. Installation d'un annuaire LDAP et utilisation du langage de commande Environnement Configuration du fichier slapd.conf Cration de l'annuaire Cration de l'annuaire Enrichissement de l'annuaire Le langage de commande 54. L'annuaire LDAP Authentification systme LDAP sur un systme GNU/Linux Configuration de l'environnement pour l'authentification systme Premiers tests de l'annuaire Vrification du fonctionnement de l'annuaire. Mise en place de l'authentification 55. L'annuaire LDAP avec PHP Utilisation de PHP avec LDAP Les principales fonctions Accs anonyme pour une recherche Accs authentifi pour une recherche 56. Annexes la squence sur LDAP Exemple de fichier LDIF L'annuaire ldap vu de konqueror L'annuaire ldap vu de gq Le schma vu de gq Authentification avec php sur LDAP 57. Planification prvisionnelle des squences LDAP Prvision des squences 58. Synchroniser ses machines avec NTP Introduction ntpdate et ntpd ntpdate Installation de ntpdate Configuration de ntpdate ntpd Installation de ntpd Configuration de ntpd Conclusion Liens utiles 59. Elments de cours sur le routage et le filtrage de paquets IP Routage, Filtrage sur les paquets IP

Technique de masquage et de traduction d'adresse Masquerading et Forwarding 60. ICMP ICMP et le filtrage de paquets 61. Ipchains Langage d'Ipchains 62. Iptables Langage d'Iptables Exemples d'utilisation d'iptables La traduction d'adresse - NAT Le DNAT ou NAT Destination Le SNAT ou NAT Source L'IP Masquerade Exemple sur un rseau priv 63. Application sur le routage et le filtrage de paquets IP Introduction Fonctions de filtrage TD Schma de la maquette pour le TP Premire partie : installation et configuration du routage Rgles de filtrage simples Rgles de filtrage par adresse, port et protocoles 64. Outils et ressources complmentaires pour les TP Iptraf Documentations complmentaires 65. Concepts gnraux sur le routage Prsentation Jargon rseau sur le routage Notion de systme autonome (SA) Choix d'une route et mtrique Les protocoles de routages IGP's Les algorithmes Vector-Distance Algorithme Link State (Etat de Liens) Les techniques hybrides Les protocoles de routages extrieurs EGP 66. Initiation au routage Initiation au routage Les principes du routage Place la pratique Conclusion 67. Le routage dynamique avec RIP Introduction Pourquoi le routage dynamique ? Le protocole RIP Place la pratique Conclusion 68. Le routage dynamique avec OSPF Introduction Rappels sur les lments vus Les grands principes

Le fonctionnement d'OSPF un peu plus en dtail Place la pratique Conclusion 69. Le routage dynamique avec BGP Introduction Les grands principes Place la pratique Cohabitation entre BGP et les IGP Conclusion 70. TP sur le routage statique avec Zebra Introduction Prsentation des concepts importants Architecture de Zebra Topologie de travail Mise en place Dmarrage du dmon zebra Connexion au dmon zebra Prise en main de Zebra (principe) Prise en main de Zebra (mise en pratique) Problmes rencontrs 71. Multi-router looking glass Prsentation 72. Annexe sur le langage de commande de Zebra Annexe sur le langage de commande de Zebra 73. Remerciements et licence Copyright List of Figures 1.1. OSI et TCP/IP 1.2. datagramme IP 1.3. Protocoles TCP/IP et OSI 1.4. Exemple Telnet 1.5. Modle client/serveur 1.6. Ports applicatifs 2.1. Classes d'adresses 2.2. Classes d'adresses 2.3. Rcapitulatif Classes d'adresses 4.1. Adresses d'une trame Ethernet contenant une requte ARP Request 4.2. Trame Ethernet contenant une requte ARP 4.3. Trame Ethernet contenant une rponse ARP 5.1. Schma du rseau utilis 6.1. routeurs interconnects 6.2. schma de routage 6.3. schma de rseau 1 6.4. schma de rseau 2 7.1. Adressage agrg 8.1. Capture de trames avec ethereal 8.2. Capture de trames avec ethereal 9.1. Dtails de votre tunnel

9.2. Exemple de traceroute6 sur le site Hurricane 9.3. Affichage du site kame.net 9.4. Obtention d'un adresse 64 bits 9.5. Test du site www.kame.net 9.6. Test du site www6.tahi.org 13.1. Schma maquette 13.2. Schma du fonctionnement 13.3. Schma du fonctionnement 13.4. Tunnel HTTP 14.1. Schma maquette 14.2. Schma du dialogue 14.3. Encapsulation des trames 16.1. Accs scuris sur un rpertoire par Apache 23.1. Chiffrement symtrique 23.2. Confidentialit 23.3. Authentification 23.4. Signature lectronique 23.5. Certificat 23.6. Le protocole SSL 23.7. HTTP over SSL 25.1. Accs un serveur SAMBA partir d'un client Linux par mthode graphique. 25.2. Accs un serveur SAMBA partir d'un client Linux par commande manuelle. 25.3. Accs votre groupe de travail partir d'un client Windows. 25.4. Accs votre serveur Samba partir d'un client Windows. 25.5. Accs votre groupe de travail partir d'un client Windows. 25.6. Accs votre groupe de travail partir d'un client Windows. 26.1. Accs un serveur SAMBA partir d'un client Linux 27.1. Client DHCP sous Windows XP 27.2. WinIPCFG sous Windows 9x 27.3. Agent de relais DHCP dans un rseau rout 29.1. Dialogue client DHCP, agent de relai DHCPet serveur DHCP 29.2. Maquette agent relais DHCP 30.1. Les domaines 30.2. Les zones 30.3. La dlgation 30.4. La rsolution inverse 35.1. Message Handler System 35.2. Architecture de Postfix 35.3. Rception des messages 35.4. Traitement des messages 39.1. Architecture globale d'un service Web-mail 39.2. Ouverture de session sur un Web-mail 39.3. Configuration de l'environnement utilisateur 39.4. Voir ses messages 39.5. Le calendrier 39.6. L'aide en ligne 41.1. Configuration du client 41.2. Configuration du client 41.3. Authentification SQUID 42.1. Formulaire de saisie

42.2. Rsultat de la requte 43.1. Interrogation de PHP 43.2. Formulaire insert.html 51.1. LDAP : le DIT Directory Information Tree 51.2. LDAP : ls scope 56.1. LDAP sous konqueror 56.2. LDAP sous gq 56.3. Schma LDAP sous gq 59.1. Squelette de trame IP 59.2. Capture de trame sur le port 80 59.3. Routage pris en charge par le noyau 62.1. Compilation du noyau pour netfilter 63.1. Schma maquette TD 63.2. Rseau simple 63.3. Rseau intgr 64.1. iptraf 65.1. Systme Autonomes 66.1. Internet 66.2. Datagramme 66.3. Topologie 1 66.4. Topologie pratique 67.1. Topologie du rseau 67.2. Topologie de travail 67.3. Architecture de Zebra 68.1. Exemple de topologie 68.2. Le rseau vu de R1 68.3. Le rseau vu de R5 68.4. Un rseau dcoup en trois zones 68.5. Topologie de travail 69.1. Un systme autonome constitu de rseaux 69.2. Un AS dcoup en zones OSPF 69.3. Rseaux d'AS 69.4. Topologie 70.1. Architecture de Zebra 70.2. Topologie 1 70.3. Topologie 1 71.1. MRLG - Multi-Router Looking Glass List of Examples 44.1. le cluster 44.2. Aprs avoir connect le NULL MODEM 44.3. le cluster en rseau doubl 44.4. haresources pour tous 44.5. authkeys

Chapter 1. Elments de cours sur TCP/IPLa suite de protocoles TCP/IP

Revision History Revision 0.2 Table of Contents Prsentation de TCP/IP OSI et TCP/IP La suite de protocoles TCP / IP IP (Internet Protocol, Protocole Internet) TCP (Transmission Control Protocol,Protocole de contrle de la transmission) UDP (User Datagram Protocol) ICMP (Internet Control Message Protocol) RIP (Routing Information Protocol) ARP (Address Resolution Protocol Fonctionnement gnral Les applications TCP-IP Modle client/serveur L'adressage des applicatifs : les ports Les ports prdfinis connatre Abstract Le document prsente la suite de protocoles TCP/IP. Ce document sert d'introduction l'ensemble des cours et TP sur les diffrents protocoles 1 Octobre 2005

Prsentation de TCP/IPTCP/IP est l'abrviation de Transmission Control Protocol/Internet Protocol. Ce protocole a t dvelopp, en environnement UNIX, la fin des annes 1970 l'issue d'un projet de recherche sur les interconnexions de rseaux men par la DARPA (Defense Advanced Research Projects Agency) dpendant du DoD (Department of Defense) Amricain. TCP/IP ,devenu standard de fait, est actuellement la famille de protocoles rseaux qui gre le routage la plus rpandue sur les systmes informatiques (Unix/Linux, Windows, Netware...) et surtout, c'est le protocole de l'Internet. Plusieurs facteurs ont contribu sa popularit : Maturit, Ouverture, Absence de propritaire, Richesse (il fournit un vaste ensemble de fonctionnalits), Compatibilit (diffrents systmes d'exploitation et diffrentes architectures matrielles), et le dveloppement important d'Internet. La famille des protocoles TCP/IP est appele protocoles Internet, et a donn son nom au rseau du mme nom. Leurs spcifications sont dfinies dans des documents du domaine public appels RFC (Request For Comments - Appels commentaires). Ils sont produits par l'IETF ( Internet Engineering Task Force) au sein de l'IAB (Internet Architecture Board). La RFC 826, par exemple, dfinit le protocole ARP.

OSI et TCP/IPBien que le protocole TCP/IP ait t dvelopp bien avant que le modle OSI apparaisse, ils ne sont pas totalement incompatibles. L'architecture OSI est dfinie plus rigoureusement, mais ils disposent tous deux d'une architecture en couches. Les protocoles TCP et IP ne sont que deux des membres de la suite de protocoles TCP/IP qui constituent le modle DOD (modle en 4 couches). Chaque couche du modle TCP/IP correspond une ou plusieurs couches du modle OSI (Open Systems Interconnection) dfini par l'ISO (International Standards Organization) : Figure 1.1. OSI et TCP/IP

Des relations troites peuvent tre tablies entre la couche rseau et IP, et la couche transport et TCP. TCP/IP peut utiliser une grande varit de protocoles en couche de niveau infrieur, notamment X.25, Ethernet et Token Ring. En fait, TCP/IP a t explicitement conu sans spcification de couche physique ou de liaison de donnes car le but tait de faire un protocole adaptable la plupart des supports.

La suite de protocoles TCP / IPLes protocoles TCP/IP se situent dans un modle souvent nomm "famille de protocoles TCP/IP". Les protocoles TCP et IP ne sont que deux des membres de la suite de protocoles IP.

IP (Internet Protocol, Protocole Internet)IP est un protocole qui se charge de l'acheminement des paquets pour tous les autres protocoles de la famille TCP/IP. Il fournit un systme de remise de donnes optimis sans connexion. Le terme optimis souligne le fait qu'il ne garantit pas que les paquets transports parviennent leur destination, ni qu'ils soient reus dans leur ordre d'envoi. La fonctionnalit de somme de contrle du protocole ne confirme que l'intgrit de l'en-tte IP. Ainsi, seuls les protocoles de niveau suprieur sont responsables des donnes contenues dans les paquets IP (et de leur ordre de rception).

Le protocole IP travaille en mode non connect, c'est--dire que les paquets mis par le niveau 3 sont achemins de manire autonome (datagrammes), sans garantie de livraison. Le datagramme correspond au format de paquet dfini par le protocole Internet. Les cinq ou six (sixime facultatif) premier mots de 32 bits reprsentent les informations de contrle appeles en-tte. Figure 1.2. datagramme IP

La longueur thorique maximale d'un datagramme IP est de 65535 octets. En pratique la taille maximale du datagramme est limite par la longueur maximale des trames transportes sur le rseau physique. La fragmentation du datagramme (dfinie dans le 2me mot de 32 bits) devient alors ncessaire ds que sa taille ne lui permet plus d'tre directement transport dans une seule trame physique. Les modules internet des quipements prennent en charge le dcoupage et le rassemblage des datagrammes. Le protocole Internet transmet le datagramme en utilisant l'adresse de destination contenue dans le cinquime mot de l'en-tte. L'adresse de destination est une adresse IP standard de 32 bits permettant d'identifier le rseau de destination et la machine hte connecte ce rseau. Dans un rseau TCP/IP, on assigne gnralement une adresse IP chaque hte. Le terme d'hte est pris dans son sens large, c'est dire un "noeud de rseau". Une imprimante, un routeur, un serveur, un poste de travail sont des noeuds qui peuvent avoir galement un nom d'hte, s'ils ont une adresse IP.

TCP (Transmission Control Protocol,Protocole de contrle de la transmission)TCP est probablement le protocole IP de niveau suprieur le plus rpandu. TCP fournit un service scuris de remise des paquets. TCP fournit un protocole fiable, orient connexion, au-dessus d'IP (ou encapsul l'intrieur d'IP). TCP garantit l'ordre et la remise des paquets, il vrifie l'intgrit de l'en-tte des paquets et des donnes qu'ils contiennent. TCP est responsable de la retransmission des paquets altrs ou perdus par le rseau lors de leur transmission. Cette fiabilit fait de TCP/IP un protocole bien adapt pour la transmission de donnes base sur la session, les applications client-serveur et les services critiques tels que le courrier lectronique. La fiabilit de TCP a son prix. Les en-ttes TCP requirent l'utilisation de bits supplmentaires pour effectuer correctement la mise en squence des informations, ainsi qu'un total de contrle obligatoire pour assurer la fiabilit non seulement de l'en-tte TCP,

mais aussi des donnes contenues dans le paquet. Pour garantir la russite de la livraison des donnes, ce protocole exige galement que le destinataire accuse rception des donnes. Ces accuss de rception (ACK) gnrent une activit rseau supplmentaire qui diminue le dbit de la transmission des donnes au profit de la fiabilit. Pour limiter l'impact de cette contrainte sur la performance, la plupart des htes n'envoient un accus de rception que pour un segment sur deux ou lorsque le dlai imparti pour un ACK expire. Sur une connexion TCP entre deux machines du rseau, les messages (ou paquets TCP) sont acquitts et dlivrs en squence.

UDP (User Datagram Protocol)UDP

est un complment du protocole TCP qui offre un service de datagrammes sans connexion qui ne garantit ni la remise ni l'ordre des paquets dlivrs. Les sommes de contrle des donnes sont facultatives dans le protocole UDP. Ceci permet d'changer des donnes sur des rseaux fiabilit leve sans utiliser inutilement des ressources rseau ou du temps de traitement. Les messages (ou paquets UDP) sont transmis de manire autonome (sans garantie de livraison.). Le protocole UDP prend galement en charge l'envoi de donnes d'un unique expditeur vers plusieurs destinataires. Ex: TFTP(trivial FTP) s'appuie sur UDP, DHCP galement, Windows utilise UDP pour les Broadcast en TCP-IP

ICMP (Internet Control Message Protocol)ICMP

est un protocole de maintenance utilis pour les tests et les diagnostics, qui vhicule des messages de contrle. Il permet deux systmes d'un rseau IP de partager des informations d'tat et d'erreur. La commande ping utilise les paquets ICMP de demande d'cho et de rponse un cho afin de dterminer si un systme IP donn d'un rseau fonctionne. C'est pourquoi l'utilitaire ping est utilis pour diagnostiquer les dfaillances au niveau d'un rseau IP ou des routeurs.

RIP (Routing Information Protocol)RIP est un protocole de routage dynamique qui permet l'change d'informations de routage sur un inter-rseau. Chaque routeur fonctionnant avec RIP change les identificateurs des rseaux qu'il peut atteindre, ainsi que la distance qui le spare de ce rseau (nb de sauts=nb de routeurs traverser). Ainsi chacun dispose de la liste des rseaux et peut proposer le meilleur chemin.

ARP (Address Resolution ProtocolLe protocole ARP permet de dterminer l'adresse physique (ou MAC) d'un noeud partir de son adresse IP en effectuant une diffusion du type "qui est X2.X2.X2.X2 ? "

Figure 1.3. Protocoles TCP/IP et OSI

Fonctionnement gnralPour dsigner les informations transmises et leur enveloppe, selon le niveau concern, on parle de message(ou de flux) entre applications, de datagramme (ou segment) au niveau TCP, de paquet au niveau IP, et enfin, de trames au niveau de l'interface rseau (Ethernet ou Token Ring). Les protocoles du niveau application les plus connus sont :

HTTP (Hyper Text Transfer Protocol) permet l'accs aux documents HTML et le transfert de fichiers depuis un site WWW FTP (File Transfer Protocol) pour le transfert de fichiers s'appuie sur TCP et tablit une connexion sur un serveur FTP Telnet pour la connexion distance en mulation terminal, un hte Unix/Linux. SMTP (Simple Mail Transfer Protocol) pour la messagerie lectronique (UDP et TCP) SNMP (Simple Network Management Protocol) pour l'administration du rseau NFS (Network File System) pour le partage des fichiers Unix/Linux.

Les applications TCP-IPModle client/serveurLes applications rseaux fonctionnent sur le modle client/serveur. Sur la machine serveur un processus serveur (daemon) traite les requtes des clients. Client et serveur dialoguent en changeant des messages qui contiennent des requtes et des rponses. Prenons par exemple telnet. Figure 1.4. Exemple Telnet

Figure 1.5. Modle client/serveur

L'adressage des applicatifs : les portsUne fois le datagramme transmis l'hte destinataire, il doit parvenir l'utilisateur (si le systme est multi-utilisateur) et l'application vise (si le systme est multi-tches).

sur la machine cliente, l'utilisateur (usager ou programme) effectue une requte vers une machine IP serveur sur le rseau. (par exemple telnet host ou ftp host ). Cela se traduit par la rservation d'un port de sortie TCP ou UDP et l'envoi d'un paquet IP la machine serveur. Ce paquet contient un message TCP ou UDP avec un numro de port correspondant l'application demande sur le serveur. sur le serveur, la requte est rceptionne par le pilote IP, aiguille vers TCP ou UDP puis vers le port demand. Le processus serveur correspondant est l'coute des appels sur ce port (par ex: le daemon telnetd traite les requtes telnet, le daemon ftpd traite les requtes ftp). processus client et processus serveur changent ensuite des messages.

Des numros de port (entre 0 et 1023) sont rservs pour les applications standards : les ports bien connus (Well Known Ports), ils ont t assigns par l'IANA. Sur la plupart des systmes ils peuvent tre seulement employs par des processus du systme (ou root) ou par des programmes excuts par les utilisateurs privilgis (liste complte : http://www.iana.org/assignments/port-numbers ou dans le fichier /etc/services y compris sous Windows). D'autres numros de port sont disponibles pour les applications dveloppes par les utilisateurs (1024 65535). Figure 1.6. Ports applicatifs

On identifie le protocole de communication entre applications par un numro de protocole etl'application par un numro de port. Par exemple, les serveurs HTTP dialoguent de manire traditionnelle par le port 80 : http ://www.sncf.com/index.htm http :// www.sncf.com:80/index.htm

Les numros de protocole et de port sont inclus dans le datagramme. Une fois la connexion tablie entre le client et le serveur, ceux-ci peuvent s'changer des informations selon un protocole dfini selon l'applicatif. Le client soumet des requtes auxquelles rpondra le serveur. Ce mode de communication s'appuie sur la couche "socket". Cette couche est une interface entre la couche prsentation et transport. Elle permet la mise en place du canal de communication entre le client et le serveur. On peut schmatiquement dire qu'un socket fournit un ensemble de fonctions. Ces fonctions permettent une application client/serveur d'tablir un canal de communication entre 2 ou plusieurs machines, qui utilisent un protocole de transport (TCP ou UDP) et un port de communication.

Les ports prdfinis connatreService rseau N de Port Type ICMP Netstat FTP SSH Telnet SMTP DNS HTTP Pop3 nntp ntp nbname netbios-ssn imap SNMP 7 15 21 22 23 25 53 80 110 119 123 137 139 143 161 Commentaire

TCP/UDP Commandes Ping TCP/UDP Etat du rseau TCP TCP TCP TCP TCP TCP UDP Transfert de fichiers Connexion via terminal rseau Envoi de courrier Serveur Web Rception de courrier Service de news Protocole temps rseau TCP/UDP SSH Remote Login Protocol

TCP/UDP Serveurs de noms de domaine

TCP/UDP Service de Nom Netbios TCP/UDP Service de Session Netbios TCP/UDP Protocole d'accs messagerie Internet UDP Administration de rseau

Chapter 2. Elments de cours sur l'adressage IPRevision History Revision 0.2 Table of Contents Adresses physiques (MAC) et adresses logiques (IP) Notion d'adresse Physique et de trames Notion d'adresse logique et de paquets Rsolution d'adresses logiques en adresses physiques 6 Octobre 2005

Attribution d'une adresse IP Internet Adressage IP Structure des adresses IP Classes d'adresses Identification du rseau Adresses rserves Les sous-rseaux Pourquoi crer des sous rseaux ? Masque de sous-rseau Sous-rseaux Adressage de sur-rseaux Abstract Le document prsente l'adressage IP sur un rseau local et en environnement rout Ce document sert d'introduction l'ensemble des cours et TP sur les diffrents protocoles Mots cls : Adresse physique (MAC), Adresse IP, masque, sous-rseau, sur-rseau, CIDR

Adresses physiques (MAC) et adresses logiques (IP)Notion d'adresse Physique et de tramesDeux cartes rseaux qui communiquent s'changent des messages (suite de bits) appels trames (frame). Tous les postes connects au mme cble reoivent le message, mais seul celui qui il est destin le lit. Comment sait-il que cette trame lui est adresse ? Car il reconnat l'adresse de destination, contenue dans la trame comme tant la sienne. Comment sait il qui lui a envoy la trame ? Car la trame contient aussi l'adresse de l'metteur. Au niveau de la couche liaison, les noeuds utilisent une adresse dite physique pour communiquer. L'adresse correspond l'adresse de la carte rseau. On parle d'adresse physique, d'adresse MAC (Medium Access Control) ou d'adresse de couche 2 (rfrence au modle OSI). Cette adresse est identique pour les rseaux Ethernet, Token Ring et FDDI. Sa longueur est de 48 bits soit six octets (par exemple : 08-00-14-57-69-69) dfinie par le constructeur de la carte. Une adresse universelle sur 3 octets est attribue par l'IEEE chaque constructeur de matriel rseau. Sur les rseaux CCITT X.25, c'est la norme X.121 qui est utilise pour les adresses physiques, qui consistent en un nombre de 14 chiffres. L'adresse MAC identifie de manire unique un noeud dans le monde. Elle est physiquement lie au matriel (crite sur la PROM), c'est dire la carte rseau.

Notion d'adresse logique et de paquetsL'adresse d'une carte rseau correspond l'adresse d'un poste et d'un seul. Or les postes sont gnralement regroups en rseau. Comment identifier le rseau auquel appartient le poste ? Il faut une adresse logique qui soit indpendante de l'adresse physique. C'est ce que propose le protocole IP et le protocole IPX. Pourquoi identifier le rseau ? Pour permettre 2 postes qui ne sont pas connects au mme rseau de communiquer. Cela est impossible avec une adresse MAC, il faut une adresse de niveau suprieur, comme nous le verrons un peu plus loin et surtout avec le routage IP. Le message vhicul par la trame va contenir une autre adresse destinataire dont un des objectifs sera de dfinir le rseau destinataire du message. On appelle le message contenu dans une trame un paquet. Ce qu'il nous faut savoir ce stade, c'est qu'une machine sait que le paquet n'est pas destin au rseau si l'adresse rseau de destination est diffrente de la sienne, dans ce cas elle envoie le paquet une machine spciale (la passerelle ou routeur) dont le rle est d'acheminer les paquets qui sortent du rseau. Cette adresse dite logique du noeud (car elle est attribue par logiciel un hte, plus prcisment une carte rseau) contenue dans le paquet est l'adresse IP, est dfinie indpendamment de toute topologie d'ordinateur ou de rseau. Son format reste identique quel que soit le support utilis. Les machines (htes) d'un rseau TCP/IP sont identifies par leur adresse IP.

Rsolution d'adresses logiques en adresses physiquesToute machine sur un rseau IP a donc 2 adresses, une adresse MAC et une adresse IP. Les processus de niveaux suprieurs utilisent toujours l'adresse IP et donc lorsqu'un processus communique avec un autre processus, il lui envoie un message dont l'adresse destinataire est une adresse IP, mais pour pouvoir atteindre la carte rseau du destinataire, il faut connatre son adresse MAC. Le rle du protocole ARP (Adress Resolution Protocol) est d'assurer la correspondance entre l'adresse IP et l'adresse MAC.

Attribution d'une adresse IP InternetLes rseaux connects au rseau Internet mondial doivent obtenir un identificateur de rseau officiel auprs du bureau de l'Icann de l'Inter-NIC (Network Information Center) afin que soit garantie l'unicit des identificateurs de rseau IP sur toute la plante. Une adresse est

attribue au rseau priv dont l'administrateur en fait la demande auprs du NIC (http://www.nic.fr). Aprs rception de l'identificateur de rseau, l'administrateur de rseau local doit attribuer des identificateurs d'hte uniques aux ordinateurs connects au rseau local. Les rseaux privs qui ne sont pas connects Internet peuvent parfaitement utiliser leur propre identificateur de rseau. Toutefois, l'obtention d'un identificateur de rseau valide de la part du centre InterNIC leur permet de se connecter ultrieurement Internet sans avoir changer les adresses des quipements en place. Chaque noeud (interface rseau) reli l'Internet doit possder une adresse IP unique.

Adressage IPStructure des adresses IPLes adresses IP sont des nombres de 32 bits qui contiennent 2 champs :

Un identificateur de rseau (NET-ID): tous les systmes du mme rseau physique doivent possder le mme identificateur de rseau, lequel doit tre unique sur l'ensemble des rseaux grs. Un identificateur d'hte (HOST-ID): un noeud sur un rseau TCP/IP est appel hte, il identifie une station de travail, un serveur, un routeur ou tout autre priphrique TCP/IP au sein du rseau.

La concatnation de ces deux champs constitue une adresse IP unique sur le rseau. Pour viter d'avoir manipuler des nombres binaires trop longs, les adresses 32 bits sont divises en 4 octets. Ce format est appel la notation dcimale pointe, cette notation consiste dcouper une adresse en quatre blocs de huit bits. Chaque bloc est ensuite converti en un nombre dcimal. Chacun des octets peut tre reprsent par un nombre de 0 255. Ex : 130.150.0.1 Exemple : L'adresse IP 10010110110010000000101000000001 est d'abord dcoupe en quatre blocs : 10010110.11001000.00001010.00000001 puis, chaque bloc est converti en un nombre dcimal pour obtenir finalement 150.200.10.1 = >4 nombres entiers (entre 0 et 255) spars par des points. = >4 octets L'criture avec les points est une convention, le codage en machine est binaire.

Classes d'adressesLa communaut Internet a dfini trois classes d'adresses appropries des rseaux de diffrentes tailles. Il y a, a priori, peu de rseaux de grande taille (classe A), il y a plus de rseaux de taille moyenne (classe B) et beaucoup de rseaux de petite taille (classe C). La taille du rseau est exprime en nombre d'htes potentiellement connects. Le premier octet d'une adresse IP permet de dterminer la classe de cette adresse. Les adresses disponibles (de 0.0.0.0 255.255.255.255) ont donc t dcoupes en plages rserves plusieurs catgories de rseaux. Pour viter d'avoir recours aux organismes NIC chaque connexion d'un nouveau poste, chaque socit se voit attribuer une plage d'adresse pour son rseau. Le nombre d'adresses disponibles dans chaque plage dpend de la taille du rseau de la socit. Les grands rseaux sont dits de classe A (IBM, Xerox , DEC, Hewlett-Packard), les rseaux de taille moyenne sont de classe B (Microsoft en fait partie !), et les autres sont de classe C. Figure 2.1. Classes d'adresses

Par exemple, l'adresse d'un poste appartenant un rseau de classe A est donc de la forme : 0AAAAAAA.xxxxxxxx.xxxxxxxx.xxxxxxxx, avec A fix par le NIC et x quelconque. Exemple IBM a obtenu l'adresse 9 (en fait, on devrait dire 9.X.X.X, mais il est plus rapide de n'utiliser que la valeur du premier octet). 9 est bien de classe A car 9d=00001001b Cela signifie que chaque adresse IP du type 00001001.xxxxxxxx.xxxxxxxx.xxxxxxxx, avec x prenant la valeur 0 ou 1, fait partie du rseau d'IBM. Malgr ces possibilits d'adressage, la capacit initialement prvue est insuffisante et sera mise dfaut d'ici quelques annes. L'IPNG (Internet Protocol Next Generation) ou Ipv6 devrait permettre de rsoudre ces difficults en utilisant un adressage sur 16 octets not en hxadcimal.

Identification du rseau

L'adresse IP se dcompose, comme vu prcdemment, en un numro de rseau et un numro de noeud au sein du rseau. Afin de s'adapter aux diffrents besoins des utilisateurs, la taille de ces 2 champs peut varier. On dfinit ainsi les 5 classes d'adresses notes A E: Figure 2.2. Classes d'adresses

ex. : Soit l'adresse IP suivante : 142.62.149.4 142 en dcimal = 100011102 en binaire Le mot binaire commence par les bits 102 donc il s'agit d'une adresse de classe B. Ou, plus simple : 142 est compris entre 128 et 191. S'agissant d'une adresse de classe B, les deux premiers octets (a et b) identifient le rseau. Le numro de rseau est donc : 142.62.0.0 Les deux derniers octets (c et d) identifient l'quipement hte sur le rseau. Finalement, cette adresse dsigne l'quipement numro 149.4 sur le rseau 142.62.

Adresses rservesLes adresses rserves ne peuvent dsigner une machine TCP/IP sur un rseau. L'adresse d'acheminement par dfaut (route par dfaut.) est de type 0.X.X.X. Tous les paquets destins un rseau non connu, seront dirigs vers l'interface dsigne par 0.0.0.0. NB : 0.0.0.0 est galement l'adresse utilise par une machine pour connatre son adresse IP durant une procdure d'initialisation (DHCP). L'adresse de bouclage(loopback): l'adresse de rseau 127 n'est pas attribue une socit, elle est utilise comme adresse de bouclage dans tous les rseaux. Cette adresse sert tester le fonctionnement de votre carte rseau. Un ping 127.0.0.1 doit retourner un message correct. Le paquet envoy avec cette adresse revient l'metteur.

Toutes les adresses de type 127.X.X.X ne peuvent pas tre utilises pour des htes. La valeur de 'x' est indiffrente. On utilise gnralement 127.0.0.1 L'adresse de rseau est une adresse dont tous les bits d'hte sont positionns 0 (ex 128.10.0.0 adresse de rseau du rseau 128.10 de classe B). Elle est utilise pour dsigner tous les postes du rseau. On utilise cette adresse dans les tables de routage. Les noms de rseaux de type :

X.Y.Z.0 (de 192.0.0.0 223.255.255.0) sont dits de classe C X.Y.0.0 (de 128.0.0.0 191.255.0.0) sont dits de classe B X.0.0.0. (de 1.0.0.0 126.255.255.254) sont dits de classe A

L'adresse de diffusion est une adresse dont tous les bits d'hte sont positionns 1 (ex : 128.10.255.255 adresse de diffusion du rseau 128 de classe B). Elle est utilise pour envoyer un message tous les postes du rseau. Les adresses "prives" Les adresses suivantes (RFC 1918) peuvent galement tre librement utilises pour monter un rseau priv : A 10.0.0.0 255.0.0.0 B 172.16.0.0 172.31.255.255 255.240.0.0 C 192.168.0.0 192.168.255.255 255.255.0.0 Aucun paquet provenant de ces rseaux ou destination de ces rseaux, ne sera rout sur l'Internet (ces adresses sont nanmoins routables sur le rseau local). Figure 2.3. Rcapitulatif Classes d'adresses

Le rle du masque de rseau (netmask) est d'identifier prcisment les bits qui concernent le N de rseau d'une adresse (il "masque" la partie hte de l'adresse). Un bit 1 dans le masque prcise que le bit correspondant dans l'adresse IP fait partie du N de rseau ; l'inverse, un bit 0 spcifie un bit utilis pour coder le N d'hte. Ainsi, on a un masque dit "par dfaut" qui correspond la classe de ce rseau. Exemple: dans un rseau de classe A sans sous-rseau, le premier octet correspond l'adresse du rseau donc le netmask commence par 11111111 suivi de zros soit 255.0.0.0. D'o le tableau suivant : Classe Netmask A B C 255.0.0.0 255.255.0.0 255.255.255.0

Ex : Si mon adresse IP est 149.127.1.110 alors je travaille avec une adresse de classe B. Mon N de rseau est 149.127.0.0 et mon masque 255.255.0.0.

Les sous-rseauxPourquoi crer des sous rseaux ?Les avantages de la segmentation en sous-rseau sont les suivants : 1. Utilisation de plusieurs media (cbles, supports physiques). La connexion de tous les noeuds un seul support de rseau peut s'avrer impossible, difficile ou coteuse lorsque les noeuds sont trop loigns les uns des autres ou qu'ils sont dj connects un autre media. 2. Rduction de l'encombrement. Le trafic entre les noeuds rpartis sur un rseau unique utilise la largeur de bande du rseau. Par consquent, plus les noeuds sont nombreux, plus la largeur de bande requise est importante. La rpartition des noeuds sur des rseaux spars permet de rduire le nombre de noeuds par rseau. Si les noeuds d'un rseau de petite taille communiquent principalement avec d'autres noeuds du mme rseau, l'encombrement global est rduit. 3. Economise les temps de calcul. Les diffusions (paquet adress tous) sur un rseau obligent chacun des noeuds du rseau ragir avant de l'accepter ou de la rejeter. 4. Isolation d'un rseau. La division d'un grand rseau en plusieurs rseaux de taille infrieure permet de limiter l'impact d'ventuelles dfaillances sur le rseau concern. Il peut s'agir d'une erreur matrielle du rseau (une connexion 5. Renforcement de la scurit. Sur un support de diffusion du rseau comme Ethernet, tous les noeuds ont accs aux paquets envoys sur ce rseau. Si le trafic sensible n'est autoris que sur un rseau, les autres htes du rseau n'y ont pas accs. 6. Optimisation de l'espace rserv une adresse IP. Si un numro de rseau de classe A ou B vous est assign et que vous disposez de plusieurs petits rseaux physiques, vous pouvez rpartir l'espace de l'adresse IP en multiples sous-rseaux IP et les

assigner des rseaux physiques spcifiques. Cette mthode permet d'viter l'utilisation de numros de rseau IP supplmentaires pour chaque rseau physique.

Masque de sous-rseauLes masques de sous-rseaux (subnet mask) permettent de segmenter un rseau en plusieurs sous-rseaux. On utilise alors une partie des bits de l'adresse d'hte pour identifier des sousrseaux. L'adressage de sous-rseau permet de dfinir des organisations internes de rseaux qui ne sont pas visibles l'extrieur de l'organisation. Cet adressage permet par exemple l'utilisation d'un routeur externe qui fournit alors une seule connexion Internet. Toutes les machines appartenant un sous-rseau possdent le mme numro de rseau. On utilise le mme principe que pour le masque par dfaut sur l'octet de la partie hte auquel on va prendre des bits. Ainsi, le masque de sous-rseau d'une adresse de classe B commencera toujours par 255.255.xx.xx Pour connatre l'adresse du sous-rseau auquel une machine appartient, on effectue en ralit un ET logique entre l'adresse de la machine et le masque. Adresse : 200.100.40.33 11001000.01100100.00101000.00100001 Masque : 255.255.255.224 11111111.11111111.11111111.11100000 Opration ET 11001000.01100100.00101000.00100000 => La machine appartient au sous-rseau : 200.100.40.32 Nous voyons dans ce deuxime exemple que nous avons pris 2 bits sur le dernier octet de notre adresse. Ces 2 bits vont nous permettre de construire plusieurs sous-rseaux: Ex : adresse : 192.0.0.131 Masque : 255.255.255.192 Conversion de l'adresse en binaire : 11000000 00000000 00000000 10000011 Conversion du masque en binaire : 11111111 11111111 11111111 11000000 Dcomposition de l'adresse (R,H) : 11000000 00000000 00000000 10000011 La machine appartient au sous-rseau 192.0.0.128 et a l'adresse 3(11 en binaire) Pour des raisons de commodit, on prfrera rserver un octet entier pour coder le numro de sous rseau. De mme la thorie ne nous oblige pas prendre les bits contigus d'un masque, mme si c'est ce que nous utiliserons en pratique.

Important : pour parer d'ventuels problmes de routage et d'adressage, tous les ordinateurs d'un rseau logique doivent utiliser le mme masque de sous-rseau et le mme identificateur de rseau.

Sous-rseauxNombre de sous-rseaux Le nombre thorique de sous-rseaux est gal 2^n, n tant le nombre de bits 1 du masque, utiliss pour coder les sous-rseaux. Exemple : Adresse de rseau : 200.100.40.0 Masque : 255.255.255.224 224 = 11100000 donc 3 bits pour le N de sous-rseau et 5 bits pour l'hte. Le nombre de sous-rseaux est donc de : 23 =8. Remarque : la RFC 1860 (remplace par la RFC 1878) stipulait qu'un numro de sous rseau ne peut tre compos de bits tous positionns zro ou tous positionns un. Autrement dit, dans notre exemple, on ne pouvait pas utiliser le sous-rseau 0 et le sousrseau 224. Le premier nous donnant une adresse de sous-rseau quivalente l'adresse du rseau soit 200.100.40.0. Le deuxime nous donnant une adresse de sous-rseau dont l'adresse de diffusion se confondrait avec l'adresse de diffusion du rseau. Le nombre de sous-rseaux aurait alors t de seulement : 2^3-2 =6. Il est donc important de savoir quelle RFC est utilise par votre matriel pour savoir si les adresses de sous-rseau composes de bits tous positionns zro ou tous positionns un sont prises en compte ou non. Adresse des sous-rseaux Il faut donc maintenant trouver les adresses des sous-rseaux valides en utilisant les bits 1 du masque. Pour l'exemple prcdent, il faut utiliser les 3 premiers bits: 000 00000 = 0 001 00000 = 32 010 00000 = 64 011 00000 = 96 100 00000 = 128

101 00000 = 160 110 00000 = 192 111 00000 = 224 On constate que le pas entre 2 adresses de sous-rseau est de 32 = 25 correspondant au nombre thorique d'htes par sous-rseau. Adresse de diffusion d'un sous-rseau Il faut mettre tous les bits de la partie hte 1. Cherchons l'adresse de diffusion des sous rseaux prcdents.

Avec le masque 255.255.255.224

Pour le sous-rseau 200.100.40.32 32 = 001 00000 donc l'adresse de diffusion est 001 11111 = 63. L'adresse de diffusion complte est donc 200.100.40.63 Pour le sous-rseau 200.100.40.64 l'adresse de diffusion est 200.100.40.95 ...ETC ... Avec le masque 255.255.255.129 Pour le sous-rseau 200.100.40.1 l'adresse de diffusion est 200.100.40.127 Pour le sous-rseau 200.100.40.128 l'adresse de diffusion est 200.100.40.254 Pourquoi 254 et pas 255 car avec 255 le dernier bit serait 1 donc on serait dans le sousrseau 10000001 , en dcimal 129. Nombre de postes d'un sous-rseau Le nombre de postes est gal 2n, n tant le nombre de bits 0 du masque permettant de coder l'hte. A ce chiffre il faut enlever 2 numros rservs :

tous les bits zro qui identifie le sous-rseau lui-mme. tous les bits 1 qui est l'adresse de diffusion pour le sous-rseau.

Exemples : Soit le masque 255.255.255.224 224 = 11100000 donc 3 bits pour le N de sous-rseau et 5 bits pour l'hte

le nombre de poste est donc de : 2^5 -2 =30 postes. De mme, avec le masque non contigu 255.255.255.129 le nombre de postes sera de 2^6-2 = 62 postes

Adressage de sur-rseauxEn 1992 la moiti des classes B taient alloues, et si le rythme avait continu, au dbut de 1994 il n'y aurait plus eu de classe B disponible et l'Internet aurait bien pu mourir par asphyxie ! Pour viter la diminution des identificateurs de rseau, et la saturation des routeurs (nombre de routes trop important) les autorits d'lnternet ont conu un schma appel adressage de sur-rseaux ( ou super-rseaux). L'adressage de sur-rseaux par opposition la segmentation en sous-rseaux, emprunte des bits de l'identificateur de rseau pour les attribuer aux identificateurs d'htes afin d'optimiser le routage. Par exemple, au lieu d'allouer un identificateur de rseau de classe B, dans une entreprise comportant 2000 htes, InterNic alloue une plage squentielle de 8 identificateurs de rseau de classe C. Chaque identificateur de rseau de classe C gre 254 htes pour un total de 2 032 identificateurs d'hte. Alors que cette technique permet de conserver des identificateurs de rseau de classe B, elle cre un nouveau problme. En utilisant des techniques de routage conventionnelles, les routeurs d'lnternet doivent dsormais comporter huit entres (en RAM) dans leurs tables de routage pour acheminer les paquets IP vers l'entreprise. La technique appele CIDR (Classless Inter-Domain Routing) permet de rduire les huit entres utilises dans l'exemple prcdent une seule entre correspondant tous les identificateurs de rseau de classe C utiliss par cette entreprise. Soit les huit identificateurs de rseau de classe C commenant par l'identificateur de rseau 220.78.168.0 et se terminant par l'identificateur de rseau 220.78.175.0, l'entre de la table de routage des routeurs d'lnternet devient : Identificateur Masque de de rseau sous rseau Masque de sous rseau (en binaire)

220.78.168.0 255.255.248.0 11111111 11111111 11111000 00000000 En effet 168 en binaire donne : 10101000 et 175 donne : 10101111 la partie commune porte bien sur les 5 1ers bits d'o le masque : 11111000

Dans l'adressage de sur-rseaux, la destination d'un paquet est dtermine en faisant un ET logique entre l'adresse IP de destination et le masque de sous-rseau de l'entre de routage. En cas de correspondance avec l'identificateur de rseau, la route est utilise. Cette procdure est identique celle dfinie pour l'adressage de sous-rseaux. La notation CIDR dfinit une convention d'criture qui spcifie le nombre de bits utiliss pour identifier la partie rseau (les bits 1 du masque). Les adresses IP sont alors donnes sous la forme : 142.12.42.145 / 24 142.12.42.145 255.255.255.0 153.121.219.14 / 20 153.121.219.14 255.255.240.0 Dans cette criture les nombres 24 et 20 reprsentent le nombre de bits consacrs la codification du rseau (et sous rseau). Remarque : Les RFC 1518 et 1519 dfinissent le CIDR (Classless Inter-Domain Routing).

Chapter 3. Fichiers de configuration du rseau et commandes de baseTable of Contents Prsentation du document : les outils de l'administrateur rseau Les fichiers de configuration Le fichier /etc/hosts Le fichier /etc/networks Le fichier /etc/host.conf Le fichier /etc/resolv.conf Les fichiers de configuration des interfaces rseau Les outils de l'administrateur rseau La commande ifconfig La commande arp La commande route La commande netstat La commande traceroute La commande dig La commande host Abstract Prsentation des principaux fichiers de configuration du rseau et des commandes d'administration systme et rseau.

Prsentation du document : les outils de l'administrateur rseau

Ce document prsente les principaux fichiers de configuration d'une machine en rseau, et les commandes d'administration rseau. Il est compos de 6 parties: 1. 2. 3. 4. 5. 6. Les fichiers de configuration rseau La commande ifconfig La commande arp La commande route La commande netstat La commande traceroute

Les fichiers de configurationLe fichier /etc/hostsLe fichier hosts donne un moyen d'assurer la rsolution de noms, de donner un nom FQDN un hte Exemple de fichier hosts127.0.0.1 localhost localhost.localdomain 192.168.1.1 uranus.foo.org uranus

Le fichier /etc/networksIl permet d'affecter un nom logique un rseaulocalnet 127.0.0.0 foo-net 192.168.1.0

Cette option permet par exemple d'adresser un rseau sur son nom, plutt que sur son adresse. route add foo-net au lieu de route add -net 192.168.1.0.

Le fichier /etc/host.confIl donne l'ordre dans lequel le processus de rsolution de noms est effectu. Voici un exemple de ce que l'on peut trouver dans ce fichier :order hosts,bind

La rsolution est effectue d'abord avec le fichier hosts, en cas d'chec avec le DNS.

Le fichier /etc/resolv.confIl permet d'affecter les serveurs de noms. Exemple

Nameserver 192.168.1.1 Nameserver 192.168.1.2 Nameserver 192.168.1.3

Ici le fichier dclare le nom de domaine et les 3 machines charges de la rsolution de noms.

Les fichiers de configuration des interfaces rseauVous trouverez ces fichiers dans /etc/network/interfaces. Voici un exemple qui contient 3 interfaces.# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) # The loopback interface # automatically added when upgrading auto lo eth0 eth1 iface lo inet loopback iface eth0 inet static address 192.168.90.1 netmask 255.255.255.0 network 192.168.90.0 broadcast 192.168.90.255 gateway 192.168.90.1 iface eth1 inet static address 192.168.0.1 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255

Les outils de l'administrateur rseauLa commande ifconfigLa commande ifconfig permet la configuration locale ou distance des interfaces rseau de tous types d'quipements (unit centrale, routeur). Sans paramtres, la commande ifconfig permet d'afficher les paramtres rseau des interfaces. La ligne de commande est :ifconfig interface adresse [parametres].

Exemple : ifconfig eth0 192.168.1.2 (affecte l'adresse 192.168.1.2 la premire interface physique). Voici les principaux arguments utiliss :interface up

logique ou physique, il est obligatoire,

active l'interface

down mtu

dsactive l'interface

dfinit l'unit de transfert des paquets affecter un masque de sous-rseau dfinit l'adresse de broadcast

netmask

broadcast arp

ou -arp activer ou dsactiver l'utilisation du cache arp de l'interface

paramtre utilis pour l'tablissement des routes dynamiques, et dterminer le cot (nombre de sauts ou hops ) d'un chemin par le protocole RIP.metric multicast promisc

active ou non la communication avec des machines qui sont hors du rseau.

ou -promisc activer ou dsactiver le mode promiscuit de l'interface. En mode promiscuous, tous les paquets qui transitent sur le rseau sont reus galement par l'interface. Cela permet de mettre en place un analyseur de trame ou de protocole. Description du rsultat de la commande ifconfig eth0 : 1. 2. 3. 4. 5. 6. 7. eth0 Link encap:Ethernet HWaddr 00:80:C8:32:C8:1E inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:864 errors:0 dropped:0 overruns:0 frame:0 TX packets:654 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 Interrupt:10 Base address:0x6100

Explications : Ligne 1: l'interface est de type Ethernet. La commande nous donne l'adresse MAC de l'interface. Ligne 2 : on a l'adresse IP celle de broadcast, celle du masque de sous-rseau Ligne 3 : l'interface est active (UP), les modes broadcast et multicast le sont galement, le MTU est de 1500 octets, le Metric de 1 Ligne 4 et 5 : RX (paquets reus), TX (transmis), erreurs, suppressions, engorgements, collision Mode d'utilisation : Ce paragraphe dcrit une suite de manipulation de la commande ifconfig. Ouvrez une session en mode console sur une machine. 1 - Relevez les paramtres de votre machine l'aide de la commande ifconfig. Si votre machine n'a qu'une interface physique, vous devriez avoir quelque chose d'quivalent cela.

Lo Link encap:Local Loopback inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0 UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1 RX packets:146 errors:0 dropped:0 overruns:0 frame:0 TX packets:146 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 eth0 Link encap:Ethernet HWaddr 00:80:C8:32:C8:1E inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:864 errors:0 dropped:0 overruns:0 frame:0 TX packets:654 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 Interrupt:10 Base address:0x6100

2 - Dsactivez les 2 interfaces lo et eth0ifconfig lo down ifconfig eth0 down

3 - Tapez les commandes suivantes :ping localhost ping 192.168.1.1 telnet localhost

Aucune commande ne fonctionne, car mme si la configuration IP est correcte, les interfaces sont dsactives. 4 - Activez l'interface de loopback et tapez les commandes suivantes :ifconfig lo up ping localhost

/* activation de l'interface de loopback */ ou telnet localhost /* a ne marche toujours pas */ /* on ajoute une route sur l'interface de loopback */

route add 127.0.0.1 ping localhost

ou telnet localhost /* maintenant a marche */ /* a ne marche pas car il manque encore une route*/

ping 192.168.1.1

On peut dduire que :

pour chaque interface il faudra indiquer une route au protocole. dans la configuration actuelle, aucun paquet ne va jusqu' la carte, donc ne sort sur le rseau.

Voici le rle de l'interface loopback. Elle permet de tester un programme utilisant le protocole IP sans envoyer de paquets sur le rseau. Si vous voulez crire une application rseau, (telnet, ftp, ou autre), vous pouvez la tester de cette faon. 5 - Activez l'interface eth0 et tapez les commandes suivantes :ifconfig eth0 up

/* activation de l'interface */

route add 192.168.1.1 ifconfig

/* l'information Tx/Rx de l'interface eth0 vaut 0 */

/* Aucun paquet n'est encore pass par la carte.*/ping 127.0.0.1 ifconfig

/* on voit que l'information Tx/Rx de lo est modifie */

/* pas celle de eth0, on en dduit que les paquets */ /* destination de lo ne descendent pas jusqu' l'interface physique */ping 192.168.1.1 ifconfig

/* test d'une adresse locale */

/* Ici on peut faire la mme remarque. Les paquets ICMP */

/* sur une interface locale, ne sortent pas sur le rseau */ /* mais ceux de l'interface lo sont modifis*/ping 192.168.1.2 ifconfig

/* test d'une adresse distante */

/* Ici les paquets sont bien sortis. Les registres TX/RX de eth0 */

/* sont modifis, mais pas ceux de lo */ 6 -Ralisez les manipulations suivantes, nous allons voir le comportement de la commande ping sur les interfaces. Sur la machine tapez la commande 192.168.1.1 ifconfig /* relevez les valeurs des registres TX/RX */ 192.168.1.2 ping 192.168.1.1 192.168.1.1 ifconfig /* relevez les nouvelles valeurs des registres TX/RX */ /* il y a bien eu change Rception et envoi de paquets*/ 192.168.1.2 ping 192.168.1.3

192.168.1.1 ifconfig /* On voit que le registre Rx est modifi mais */ /* le registre Tx n'est pas modifi. La machine a bien reu*/ /* le paquet mais n'a rien renvoy */ 192.168.1.2 ping 192.168.1.2 192.168.1.2 ifconfig /* aucun registre n'est modifi, donc les paquets */ /* ne circulent pas jusqu' l'interface physique avec un ping*/ /* sur l'interface locale */ 7 - le MTU (Message Transfert Unit) dtermine l'unit de transfert des paquets. Vous allez, sur la machine 192.168.1.1 modifier le MTU par dfaut 1500, pour le mettre 300, avec la commande :ifconfig eth0 mtu 300

Sur la machine d'adresse 192.168.1.2, vous allez ouvrir une session ftp et chronomtrer le temps de transfert d'un fichier de 30 MO. Relevez le temps et le nombre de paquets transmis ou reus (commande ifconfig, flags TX/RX). Restaurez le paramtre par dfaut sur la premire machine. Refaites le mme transfert et comparez les chiffres. La diffrence n'est pas norme sur le temps car le volume de donnes est peu important. Par contre la diffrence sur le nombre de paquets, elle, est importante.

La commande arpDescription de la commande La commande arp permet de visualiser ou modifier la table du cache arp de l'interface. Cette table peut tre statique et (ou) dynamique. Elle donne la correspondance entre une adresse IP et une adresse MAC (Ethernet). A chaque nouvelle requte, le cache ARP de l'interface est mis jour. Il y a un nouvel enregistrement. Cet enregistrement une dure de vie (ttl ou Time To Live). Voici un exemple de cache ARP obtenu avec la commande arp -va :? (192.168.1.2) at 00:40:33:2D:B5:DD [ether] on eth0 >Entries: 1 Skipped: 0 Found: 1

On voit l'adresse IP et l'adresse MAC correspondante. Il n'y a qu'une entre dans la table. Voici les principales options de la commande arp :

arp -s (ajouter une entre statique), exemple : arp -s 192.168.1.2 00:40:33:2D:B5:DD arp -d (supprimer une entre), exemple : arp -d 192.168.1.2 Voir la page man pour les autres options. La table ARP et le fonctionnement du cache ARP. Cela est ralis par la configuration de tables ARP statiques. Mode d'utilisation : Attention certaines interprtations de ce paragraphe. Il dpend de votre configuration. Soit vous tes en rseau local avec une plage d'adresse dclare, soit vous utilisez une carte d'accs distant. Premire partie : 1. Affichez le contenu de la table ARP avec la commande arp -a, 2. Supprimez chaque ligne avec la commande arp -d @ip, o @ip est l'adresse IP de chaque hte apparaissant dans la table, 3. La commande arp -a ne devrait plus afficher de ligne, 4. Faites un ping, sur une station du rseau local, 5. arp -a, affiche la nouvelle entre de la table, 6. Ouvrez une session sur Internet, puis ouvrez une session ftp anonyme sur un serveur distant en utilisant le nom, par exemple ftp.cdrom.com. Utilisez une adresse que vous n'avez jamais utilise, supprimez galement tout gestionnaire de cache. 7. Affichez le nouveau contenu de la table avec arp -a. Le cache ARP ne contient pas l'adresse Ethernet du site distant, mais celle de la passerelle par dfaut. Cela signifie que le client n'a pas connatre les adresses Ethernet des htes trangers au rseau local, mais uniquement l'adresse de la passerelle. Les paquets sont ensuite pris en charge par les routeurs. 8. Refaites une tentative sur le site choisi prcdemment. Le temps d'ouverture de session est normalement plus court. Cela est justifi, car les serveurs de noms ont maintenant dans leur cache la correspondance entre le nom et l'adresse IP. Deuxime partie : La commande arp permet de diagnostiquer un dysfonctionnement quand une machine prend l'adresse IP d'une autre machine. 1. Sur la machine 192.168.1.1, faites un ping sur 2 htes du rseau 192.168.1.2 et 192.168.1.3, 2. A l'aide de la commande arp, relevez les adresses MAC de ces noeuds, 3. Modifiez l'adresse IP de la machine 192.168.1.2 en 192.168.1.3 4. relancez les 2 machines en vous arrangeant pour que la machine dont vous avez modifi l'adresse ait redmarr la premire, 5. Sur la machine d'adresse 192.168.1.1, remettez jour les tables ARP. 6. Quel est le contenu, aprs cela de la table ARP ?

Conclusion : vous allez avoir un conflit d'adresses. Vous allez pouvoir le dtecter avec la commande arp. Autre problme, si vous faites un telnet sur 192.168.1.3, il y a de fortes chances pour que ce soit la machine qui tait d'adresse 192.168.1.2, qui vous ouvre la session. Nous sommes (par une action volontaire bien sr) arrivs mettre la pagaille sur un rseau de 3 postes. Cette pagaille pourrait tourner vite au chaos sur un grand rseau, d'o la ncessit pour un administrateur de faire preuve d'une grande rigueur. O en suis-je ? Exercice 1 : Vous tes sur un rseau d'adresse 192.168.1.0 avec une interface d'adresse MAC 00:40:33:2D:B5:DD, Vous n'avez aucun fichier host sur votre machine, Il n'y a pas de DNS La passerelle par dfaut est 192.168.1.9 Vous faites un ping 195.6.2.3 qui a une interface d'adresse MAC 00:45:2D:33:C2 est localise sur Internet Le rseau fonctionne parfaitement et tout est parfaitement configur Cochez la bonne rponse: A - On a dans la table arp ? (192.168.1.2) at 00:40:33:2D:B5:DD [ether] on eth0 B - On a dans la table arp ? (192.168.1.2) at 00:45:2D:33:C2 [ether] on eth0 C - On a dans la table arp ? (195.6.2.3) at 00:40:33:2D:B5:DD [ether] on eth0 D - On a dans la table arp ? (195.6.2.3) at 00: 00:45:2D:33:C2 [ether] on eth0 E - Il faut un fichier host, ou DNS pour raliser l'opration ping demande F - Il n'est pas possible dans la configuration actuelle d'atteindre l'hte 195.6.2.3 Rponse F, car la plage d'adresse 192.168.1.1 192.168.1.254 n'est pas route sur l'Internet, sinon vous auriez l'adresse de la passerelle par dfaut dans le cache ARP. Exercice 2 : Vous tes sur un rseau d'adresse 192.5.1.0 avec une interface d'adresse MAC 00:40:33:2D:B5:DD, Vous n'avez aucun fichier host sur votre machine, Il n'y a pas de DNS,

La passerelle par dfaut est 192.5.1.9 Vous faites un ping www.existe.org dont l'adresse IP est 195.6.2.3, et qui a une interface d'adresse MAC 00:45:2D:33:C2 Le rseau fonctionne parfaitement et tout est parfaitement configur Cochez la bonne rponse: A - On a dans la table arp ? (192.5.1.0) at 00:40:33:2D:B5:DD [ether] on eth0 B - On a dans la table arp ? (192.5.1.0) at 00:45:2D:33:C2 [ether] on eth0 C - On a dans la table arp ? (195.6.2.3) at 00:40:33:2D:B5:DD [ether] on eth0 D - On a dans la table arp ? (195.6.2.3) at 00: 00:45:2D:33:C2 [ether] on eth0 E - Il faut un fichier host, ou DNS pour raliser l'opration ping demande F - Il n'est pas possible dans la configuration actuelle d'atteindre l'hte 195.6.2.3 Rponse E, car la rsolution de noms ne peut tre effectue Exercice 3 : Vous tes sur un rseau d'adresse 192.5.1.0, sur une machine d'adresse 192.5.1.1, et une interface d'adresse MAC 00:40:33:2D:B5:DD, Vous n'avez aucun fichier host sur votre machine, Il n'y a pas de DNS La passerelle par dfaut est 192.5.1.9, d'adresse MAC 09:44:3C:DA:3C:04 Vous faites un ping 195.6.2.3, et qui a une interface d'adresse MAC 00:45:2D:33:C2 Le rseau fonctionne parfaitement et tout est parfaitement configur Cochez la bonne rponse: A - On a dans la table arp ? (192.5.1.0) at 00:40:33:2D:B5:DD [ether] on eth0 B - On a dans la table arp ? (192.5.1.0) at 00:45:2D:33:C2 [ether] on eth0 C - On a dans la table arp ? (195.6.2.3) at 00:40:33:2D:B5:DD [ether] on eth0 D - On a dans la table arp ? (192.5.1.9) at 09:44:3C:DA:3C:04 [ether] on eth0 E - Il faut un fichier host, ou DNS pour raliser l'opration ping demande

F - Il n'est pas possible dans la configuration actuelle d'atteindre l'hte 195.6.2.3 Rponse D, l'hte a bien t trouv, la table ARP a t mise jour avec l'adresse IP de la passerelle par dfaut et son adresse Ethernet.

La commande routeLa commande route a dj t entrevue un peu plus haut, avec la commande ifconfig. Le routage dfinit le chemin emprunt par les paquets entre son point de dpart et son point d'arrive. Cette commande permet galement la configuration de pc, de switchs de routeurs. Il existe 2 types de routages : - le routage statique - le routage dynamique. Le routage statique consiste imposer aux paquets la route suivre. Le routage dynamique met en oeuvre des algorithmes, qui permettent aux routeurs d'ajuster les tables de routage en fonction de leur connaissance de la topologie du rseau. Cette actualisation est ralise par la rception des messages reus des noeuds (routeurs) adjacents. Le routage dynamique permet d'avoir des routes toujours optimises, en fonction de l'tat du rseau (nouveaux routeurs, engorgements, pannes). On combine en gnral le routage statique sur les rseaux locaux au routage dynamique sur les rseaux importants ou tendus. Un administrateur qui dispose par exemple de 2 routeurs sur un rseau, peut quilibrer la charge en rpartissant un partie du flux sur un port avec une route, et une autre partie sur le deuxime routeur. Exemple de table de routage :Kernel IP routing table Destination Gateway Genmask Flags 192.168.1.0 * 255.255.255.0 U 127.0.0.0 * 255.0.0.0 U default 192.168.1.9 0.0.0.0 UG Metric 0 0 0 Ref Use 0 2 0 2 0 10 Iface eth0 lo eth0

Commentaire gnraux : Destination : adresse de destination de la route Gateway : adresse IP de la passerelle pour atteindre la route, * sinon Genmask : masque utiliser. Flags : indicateur d'tat (U - Up, H - Host - G - Gateway, D - Dynamic, M - Modified)

Metric : cot mtrique de la route (0 par dfaut) Ref : nombre de routes qui dpendent de celle-ci Use : nombre d'utilisation dans la table de routage Iface : interface eth0, eth1, lo Commentaire sur la 3me ligne : Cette ligne signifie que pour atteindre tous les rseaux inconnus, la route par dfaut porte l'adresse 192.168.1.9. C'est la passerelle par dfaut, d'o le sigle UG, G pour gateway. Ajout ou suppression d'une route : route add [net | host] addr [gw passerelle] [mtric cot] [ netmask masque][dev interface]

- net ou host indique l'adresse de rseau ou de l'hte pour lequel on tablit une route, - adresse de destination, - adresse de la passerelle, - valeur mtrique de la route, - masque de la route ajouter, - interface rseau qui on associe la route. Exemples : route add 127.0.0.1 lo /* ajoute une route pour l'adresse 127.0.0.1 sur l'interface lo */ route add -net 192.168.2.0 eth0 /* ajoute une route pour le rseau 192.168.2.0 sur l'interface eth0 */ route add saturne.foo.org /* ajoute une route pour la machine machin sur l'interface eth0 */ route add default gw ariane /* ajoute ariane comme route par dfaut pour la machine locale */ /* ariane est le nom d'hte d'un routeur ou d'une passerelle */ /* gw est un mot rserv */ route add duschmoll netmask 255.255.255.192 /* Encore un qui a cr des sous rseaux., Il s'agit ici d'une classe C */

/* avec 2 sous rseaux, il faut indiquer le masque. */ Suppression d'une route : route del -net 192.168.1.0 route del -net toutbet-net

WarningAttention, si on utilise des noms de rseau ou des noms d'htes, il faut qu' ces noms soient associs les adresses de rseau ou des adresses IP dans le fichier /etc/networks pour les rseaux, et /etc/hosts ou DNS pour les noms d'htes. Vous pouvez galement voir l'atelier sur la mise en place d'un routeur logiciel. Petite tude de cas : Premire partie - ralisation d'une maquette On dispose de 2 rseaux (A et B) relis par une passerelle. Le rseau A est galement reli Internet par un routeur. Le rseau A dispose d'un serveur de noms. Chaque rseau a deux machines.Rseau Nom du rseau Machine A metaux-net 192.3.2.2 192.3.2.3 192.3.2.4 B roches-net 130.2.0.2 130.2.0.3 Nom des machines platine uranium mercure(serveur de noms) quartz silex

La passerelle entre le rseau A et B a 2 interfaces : - eth0 192.3.2.1 - eth1 130.2.0.1 Le rseau A, a une passerelle par dfaut pour Internet 130.2.0.9, qui est l'interface d'un autre routeur. On veut : - que les stations de chaque rseau puissent accder Internet, - que les stations de chaque rseau puissent communiquer entre-elles, - que les stations du rseau B, utilisent le serveur de noms le moins possible. On demande : 1 - d'expliquer comment seront configurs les postes du rseau B,

2 - de donner la configuration des fichiers suivants pour chaque machine (hosts, resolv.conf, fichier de configuration de carte). 3 - de donner la liste des routes mettre : - sur les postes du rseau B, - sur les postes du rseau A, - sur la passerelle qui relie les 2 rseaux, - sur le routeur du rseau A.

La commande netstatLa commande netstat, permet de tester la configuration du rseau, visualiser l'tat des connexions, tablir des statistiques, notamment pour surveiller les serveurs. Liste des paramtres utilisables avec netstat : Sans argument, donne l'tat des connexions,-a -i -c -n -r -t -u

afficher toutes les informations sur l'tat des connexions, affichage des statistiques, rafrachissement priodique de l'tat du rseau, affichage des informations en mode numrique sur l'tat des connexions, affichage des tables de routage, informations sur les sockets TCP informations sur les sockets UDP.

Etat des connexions rseau avec netstat, dont voici un exemple :Proto Recv-Q Send-Q Local Address Foreign Address State Tcp 0 126 uranus.planete.n:telnet 192.168.1.2:1037 ESTABLISHED Udp 0 0 uranus.plan:netbios-dgm *:* Udp 0 0 uranus.plane:netbios-ns *:* Active UNIX domain sockets (w/o servers) Proto RefCnt Flags Type State I-Node Path unix 2 [ ] STREAM 1990 /dev/log unix 2 [ ] STREAM CONNECTED 1989 unix 1 [ ] DGRAM 1955

Explications sur la premire partie qui affiche l'tat des connexions :

Proto : Protocole utilis Recv-q : nbre de bits en rception pour ce socket Send-q : nbre de bits envoys LocalAdress : nom d'hte local et port ForeignAdress : nom d'hte distant et port State : tat de la connexion Le champ state peut prendre les valeurs suivantes: Established : connexion tablie Syn snet : le socket essaie de se connecter Syn recv : le socket a t ferm Fin wait2 : la connexion a t ferme Closed : le socket n'est pas utilis Close wait : l'hte distant a ferm la connexion; Fermeture locale en attente. Last ack : attente de confirmation de la fermeture de la connexion distante Listen : coute en attendant une connexion externe. Unknown : tat du socket inconnu Explications sur la deuxime partie qui affiche l'tat des sockets (IPC - Inter Processus Communication) actifs : Proto : Protocole, en gnral UNIX, Refcnt : Nombre de processus associs au socket Type : Mode d'accs datagramme (DGRAM), flux orient connexion (STREAM), brut (RAW), livraison fiable des messages (RDM) State : Free, Listening, Unconnected, connecting, disconnecting, unknown Path : Chemin utilis par les processus pour utiliser le socket. Affichage et tat des tables de routage avec netstat : netstat -nr ou netstat -rKernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface

192.168.1.0 127.0.0.0

* *

255.255.255.0 255.0.0.0

U U

1500 3584

0 0

0 0

eth0 lo

Explications sur la commande netstat -r Destination : adresse vers laquelle sont destins les paquets Gateway : passerelle utilise, * sinon Flags : G la route utilise une passerelle, U l'interface est active, H on ne peut joindre qu'un simple hte par cette route) Iface : interface sur laquelle est positionne la route. Affichage de statistiques avec netstat -iIface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flags Lo 3584 0 89 0 0 0 89 0 0 0 BLRU eth0 1500 0 215 0 0 0 210 0 0 0 BRU

Explications sur la commande netstat -i RX-OK et TX-OK rendent compte du nombre de paquets reus ou mis, RX-ERR ou TX-ERR nombre de paquets reus ou transmis avec erreur, RX-DRP ou TX-DRP nombre de paquets limins, RX-OVR ou TX-OVR recouvrement, donc perdus cause d'un dbit trop important. Les Flags (B adresse de diffusion, L interface de loopback, M tous les paquets sont reus, O arp est hors service, P connexion point point, R interface en fonctionnement, U interface en service) Exercices : On donne les rsultats de 3 commandes netstat ci-dessous, extraites de la mme machine :$

netstat -nr

Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 198.5.203.0 0.0.0.0 255.255.255.0 U 1500 0 0 eth0 127.0.0.0 0.0.0.0 255.0.0.0 U 3584 0 0 lo 0.0.0.0 198.5.203.3 0.0.0.0 UG 1500 0 0 eth0$

netstat

Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State Tcp 0 127 uranus.toutbet:telnet 194.206.6.143:1027 ESTABLISHED$

netstat -i

Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flags Lo 3584 0 764 0 0 764 89 0 0 0 BLRU eth0 1500 0 410856 0 0 33286 210 0 0 0 BRU On demande : 1. 2. 3. 4. 5. Quels sont les noms et adresse de la machine consulte ? Quel type de session est-elle en train de supporter ? A quoi correspond l'adresse 198.5.203.3? Pourquoi une interface porte-t-elle les Flags BLRU et l'autre BRU ? Quelle est la taille des paquets utilise par la passerelle par dfaut ?

La commande tracerouteLa commande traceroute permet d'afficher le chemin parcouru par un paquet pour arriver destination. Cette commande est importante, car elle permet d'quilibrer la charge d'un rseau, en optimisant les routes. Voici le rsultat de la commande traceroute www.nat.fr, tape depuis ma machine.traceroute to sancy.nat.fr (212.208.83.2), 30 hops max, 40 byte packets 1 195.5.203.9 (195.5.203.9) 1.363 ms 1.259 ms 1.270 ms 2 194.79.184.33 (194.79.184.33) 25.078 ms 25.120 ms 25.085 ms 3 194.79.128.21 (194.79.128.21) 88.915 ms 101.191 ms 88.571 ms 4 cisco-eth0.frontal-gw.internext.fr (194.79.190.126) 124.796 ms[] 5 sfinx-paris.remote-gw.internext.fr (194.79.190.250) 100.180 ms[] 6 Internetway.gix-paris.ft.NET (194.68.129.236) 98.471 ms [] 7 513.HSSI0-513.BACK1.PAR1.inetway.NET (194.98.1.214) 137.196 ms[] 8 602.HSSI6-602.BACK1.NAN1.inetway.NET (194.98.1.194) 101.129 ms[] 9 FE6-0.BORD1.NAN1.inetway.NET (194.53.76.228) 105.110 ms [] 10 194.98.81.21 (194.98.81.21) 175.933 ms 152.779 ms 128.618 ms[] 11 sancy.nat.fr (212.208.83.2) 211.387 ms 162.559 ms 151.385 ms[]

Explications : Ligne 0 : le programme signale qu'il n'affichera que les 30 premiers sauts, et que la machine www du domaine nat.fr, porte le nom effectif de sancy, dans la base d'annuaire du DNS du domaine nat.fr. Cette machine porte l'adresse IP 212.208.83.2. Pour chaque tronon, on a galement le temps maximum, moyen et minimum de parcours du tronon.

Ensuite, on a pour chaque ligne, l'adresse du routeur que le paquet a travers pour passer sur le rseau suivant. Ligne 4 et 5, le paquet a travers 2 routeurs sur le mme rseau 194.79.190. Ligne 4, 5, 6, 7, 8, 9, 11, on voit que les routeurs ont un enregistrement de type A dans les serveurs de noms, puisqu'on voit les noms affichs. Conclusion : depuis ma machine, chaque requte HTTP passe par 11 routeurs pour accder au serveur www.nat.fr. L'accs sur cet exemple est ralis sur Internet. Un administrateur, responsable d'un rseau d'entreprise sur lequel il y a de nombreux routeurs, peut, avec cet outil, diagnostiquer les routes et temps de routage. Il peut ainsi optimiser les trajets et temps de rponse.

La commande digLa commande dig remplace ce qui tait la commande nslookup. Cette commande sert diagnostiquer des dysfonctionnements dans la rsolution de noms (Service DNS). Utilisation simple de dig :$ dig any freenix.org ; DiG 9.2.2 any freenix.org ;; global options: printcmd ;; Got answer: ;; ->>HEADER uranus.planete.net: icmp: echo reply uranus.planete.net > 192.168.1.2: icmp: echo request 192.168.1.2 > uranus.planete.net: icmp: echo reply

Explications : Ligne 1, uranus demande qui est 192.168.1.2 (requte ARP) Le paquet est diffus tous les htes du rseau. Ligne 2 rponse ARP : je suis l'adresse Ethernet 00:40:33:2d:b5:dd Lignes 3 6 : changes de paquets ICMP entre les 2 htes.

Chapter 5. La rsolution d'adresses physiques - Travaux PratiquesRevision History Revision 0.1 Table of Contents Tester la prsence d'un poste sur le rseau avec la commande ping Interface couche 3 / couche 2 , IP / ethernet : utilisation du protocole ARP Le cache ARP La commande ARP Tromper ARP avec une adresse inexistante Tromper ARP avec une adresse Ethernet existante mais mal associe Utilisation de l'analyseur de trames Ethereal examen de paquets ARP Conditions de ralisation Ce TP ncessite des machines Windows ou Linux relies par un rseau Ethernet et TCP/IP, et disposant d'un routeur connect internet. L'adresse du rseau utilis par ce TP est 10.69.0.0, mais peut tre modifie sans problme. Il faut disposer d'un analyseur de trames, les exemples utilisent Ethereal (http://www.ethereal.com/). Figure 5.1. Schma du rseau utilis 1 Octobre 2005

Tester la prsence d'un poste sur le rseau avec la commande pingCes tests peuvent tre raliss partir d'un poste de travail Linux ou Windows

partir de votre poste, ouvrez une fentre d'invite de commandes quelle commande utilisez-vous pour afficher les informations concernant votre carte rseau ? testez l'adresse IP de loopback pour vrifier que les liaisons dfinies par TCP/IP sont correctes : ping 127.0.0.1 testez avec l'adresse IP de votre poste testez avec l'adresse du poste d'un voisin testez avec l'adresse du rseau : 10.69.0.0 (notez le rsultat)

Que signifient les rponses ?

testez avec l'adresse de broadcast sur ce rseau : 10.69.255.255 (notez le rsultat)

Que signifient les rponses ?

testez une adresse IP non utilise sur le rseau par exemple 10.69.0.99 (idem)

Que peut-on dduire de la rponse ? Le poste existe t-il ? Le poste n'est pas actif ?

testez l'adresse de la passerelle : 10.69.0.254 testez une adresse existante au del de votre passerelle : 192.168.0.n (idem)

Comment expliquez vous votre rsultat ? Pourquoi ce poste rpond-il alors que son adresse rseau est diffrente de la vtre ?

testez une adresse au hasard ne faisant pas partie du rseau : 200.110.20.37 (idem)

Que pouvez vous dduire du rsultat ?

Interface couche 3 / couche 2 , IP / ethernet : utilisation du protocole ARP2 stations pour dialoguer doivent utiliser les adresses MAC, il faut donc un moyen pour passer de l'adresse IP l'adresse MAC et vice versa. IP fournit pour cela le protocole ARP (Adress Resolution Protocol) et RARP (Reverse Adress Resolution Protocol)

Le cache ARP

Affichez le cache ARP : tapez la commande arp -al'invite de commandes Notez le rsultat faites un ping sur une autre station Affichez de nouveau le cache arp (n