Université de Strasbourg Licence Pro ARS UFR de Mathématiques et Informatique Année 2009/2010 1 Adressage IP 1.1 Limites du nombre d adresses IP 1.1.1 Adresses de réseaux valides Réseaux Locaux TP 04 : ICMP, ARP, IP Les adresses IP de réseaux valides appartiennent forcément aux classes A, B ou C. Elles satisfont en outre les contraintes suivantes : 1. Partie id. réseau : (a) ne peut pas être "tout à zéro" (c est à dire tous ses bits à 0) (b) ne peut pas être "tout à un" pour la classe A 2. Partie id. station : (a) doit être "tout à zéro" Exercice Pour chaque classe A, B et C, calculer le nombre d adresses IP de réseaux valides attribuables. 1.1.2 Adresses de stations valides Toute adresse IP de station valide, quelle que soit la classe de son réseau d appartenance, a sa partie id. station qui satisfait les contraintes suivantes : 1. ne peut pas être "tout à zéro" (réservé pour l adresse de son réseau) 2. ne peut pas être "tout à un" (réservé pour l adresse de diffusion générale sur son réseau) Exercice Pour chaque classe A, B et C, calculer le nombre d adresses IP de stations valides attribuables par réseau. 1.2 Analyse d adresses IP 1.2.1 Adresses IP sous forme binaire Soient les 4 adresses IP suivantes, codées sur 32 bits, où les bits sont regroupés ici en octets pour en faciliter la lecture: 10010011 11011000 01100111 10111010 01101100 10110100 10010101 11000101 11100000 10000001 10100010 01011001 11010110 01010100 10110100 11010001 Pour chaque adresse : 1. L écrire en notation décimale pointée. 2. Déterminer sa classe à partir de la représentation binaire. 1
3. Isoler sa partie classe + id. réseau de sa partie id. station si cela a un sens, et déterminer l écriture binaire de l adresse de son réseau d appartenance (appelée aussi "son adresse de réseau"). 4. Écrire son adresse de réseau en notation décimale pointée. 1.2.2 Adresses IP en notation décimale pointée Soient les 4 adresses IP suivantes, exprimées selon la notation décimale pointée : 1. 139.124.5.25 2. 194.199.116.255 3. 12.34.56.78 4. 224.0.0.2 Pour chaque adresse : 1. Écrire en binaire sur un octet, le nombre de gauche de l adresse (jusqu au premier point). 2. Les bits codant la classe de l adresse sont contenus dans cet octet, quelque soit la classe de l adresse. En déduire sa classe. 3. Selon que la classe est A, B ou C, la partie id. station correspond respectivement aux 3 derniers, 2 der- niers ou au dernier octet de l adresse. En déduire son adresse de réseau en notation décimale pointée sans transformer l écriture en binaire. 2 Routage et sous-réseaux Dans cette section, nous allons utiliser le routage avec masques de sous-réseaux, qui est le plus utilisé actuel- lement. Ce type de routage est dû à la technique du subnetting. 2.1 Rappels sur le subnetting Le subnetting est une technique qui permet d attribuer une seule adresse de réseau à plusieurs réseaux physiques, gérés par une seule organisation. Ceci est contradictoire avec le schéma d adressage d origine de IP, où une adresse de réseau devait correspondre à un seul réseau physique. Les adresses de réseau étaient utilisées pour savoir si deux stations étaient raccordées au même réseau et servaient comme entrées des tables de routage. Prenons l exemple d une entreprise qui possède deux réseaux locaux (un réseau Ethernet et un Token Ring) et qui désire les interconnecter entre eux ainsi qu à l Internet. La solution la plus simple consiste à utiliser un routeur qui servira aussi bien pour les communications internes à l entreprise que pour les communications avec l Internet. Ainsi, le schéma d interconnexion est le suivant : 2
Les avantages d utiliser une seule adresse de réseau pour ces deux réseaux sont nombreux mais le principal est que le réseau de l entreprise est vu de l extérieur (c est à dire de l Internet) comme un unique réseau. Outre une certaine confidentialité organisationnelle, cela permet de minimiser les informations de routage pour atteindre un de ces deux réseaux : seule la route vers le réseau (global) de l entreprise doit être connue dans l Internet. C est principalement pour minimiser la taille des tables de routage, et réduire le nombre d adresses réseaux nécessaires aux entreprises que le subnetting a été inventé. Nombre d entreprises disposent de plusieurs réseaux physiques. Si chacun possèdait une adresse de réseau propre, le nombre d entrées des tables de routage serait multiplié, alors qu il se limite généralement à une entrée par entreprise connectée. 2.2 Adresses de sous-réseaux En fait, si les deux réseaux physiques partagent la même adresse de réseau, ils ont chacun une adresse de sous-réseau qui leur est propre. Ces adresses leur sont attribuées par l administrateur réseau de l entreprise et n ont aucun intérêt du point de vue de l Internet. Leur connaissance est uniquement nécessaire localement pour router les datagrammes au sein de l entreprise. C est un autre avantage du subnetting : l administrateur de ce réseau peut l organiser à sa guise et attribuer comme bon lui semble les adresses de sous-réseaux, tant que ces attributions sont connues localement. En conséquence, le réseau de l entreprise peut évoluer sans qu aucune allocation d adresse ni mise à jour des tables de routage ne soit nécessaire au sein de l Internet. L ajout et la suppression d un réseau dans l entreprise sont uniquement pris en compte localement, à un coût minimum, sans avoir besoin de changer d adresse de réseau, ni d ajouter ou de supprimer des routes dans les tables de l Internet. 2.3 Attribution des adresses de sous-réseaux Pour comprendre comment les (sous-)réseaux de l entreprise peuvent se voir attribuer des adresses de sous- réseaux, il faut regarder la forme générale d une adresse IP. Celle-ci est composée d une partie classe + identifiant de réseau et d une partie identifiant de station. Leur taille varie selon la classe de l adresse : La partie classe + identifiant de réseau est fixée et attribuée par les instances officielles de l Internet. En revanche, l administrateur du réseau peut gérer à sa guise la partie identifiant de station. 2.4 Identifiant de sous-réseauet partition Celui-ci peut utiliser quelques bits de l identifiant de station pour identifier lessous-réseaux physiques du réseau qu il administre, et introduire un identifiant de sous-réseau, comme suit: 3
2.5 Utilisation des masques Lorsqu une station (ou un routeur) est reliée à un sous-réseau, le masque de sous réseau doit être indiqué au moment de la configuration de son interface, en même temps que son adresse IP. Avec ce masque et l adresse de son sous-réseau, il est aisé de savoir si la remise d un datagramme doit être directe ou indirecte. En effet, soit D l adresse de destination du datagramme, alors la remise est directe si et seulement si la station ou le routeur dispose d une interface avec le sous-réseau R de masque M, telle qu en mettant à zéro tous les bits de D où ils sont à zéro dans M, on retombe sur R. Ceci revient à opérer un ET logique bit à bit entre D et M, puis comparer les 32 bits obtenus avec R. Exemple Si une station ou un routeur, qui est connectée au sous-réseau 194.199.116.0 de masque 255.255.255.128, a un datagramme à envoyer à l adresse 194.199.116.103, alors la remise sera directe. En effet, le résultat du ET logique entre 194.199.116.103 et 255.255.255.128 donne 194.199.116.0, ce qui correspond à un réseau directement accessible. La figure ci-dessous illustre le calcul : 2.5.1 Exercice (Remise directe et masques de sous-réseaux) Soit un routeur connecté à quatre réseaux par l intermédiaire de 4 interfaces: la première d adresse 139.124.5.250 pour le réseau 139.124.5.0 et de masque 255.255.255.0 la seconde d adresse 194.199.10.171 pour le réseau 194.199.10.160 et de masque 255.255.255.224 la troisième d adresse 194.199.10.82 pour le réseau 194.199.10.64 et de masque 255.255.255.224 la quatrième d adresse 138.10.5.50 pour le réseau 138.10.0.50 et de masque 255.255.0.255 Parmi les destinations suivantes, lesquelles lui sont directement accessibles, et par quelle interface? 1. 139.124.20.210 2. 139.124.5.133 3. 194.199.10.2 4. 194.199.10.90 4
5. 194.199.10.103 6. 138.10.5.51 7. 138.10.6.50 Il n est pas nécessaire que l adresse du sous-réseau d une interface soit indiquée à la configuration car elle est déductible de l adresse IP et du masque de sous-réseau. En effet, connaissant le masque, il suffit de l appliquer à l adresse IP de l interface pour en connaître l adresse de sous-réseau. 2.5.2 Exercice (Déduction de l adresse de (sous-)réseau) Quelles sont les adresses de (sous-)réseaux déductibles des couples suivants : 1. Adresse IP 194.199.116.98 et masque 255.255.255.192? 2. Adresse IP 194.199.116.103 et masque 255.255.255.129? 3. Adresse IP 194.199.116.176 et masque 255.255.255.129? 4. Adresse IP 139.124.75.141 et masque 255.255.0.0? 3 Configuration d un sous-réseau Imaginons que vous faites partie d un grand entreprise. Tous les réseaux informatiques de cet entreprise font partie d un grand réseau de classe A - 10.0.0.0/8. Chacun d entre vous est responsable de la gestion d un parc de machines (dans le cas précis - d un parc de deux machines). Le grand réseau de l entreprise est ensuite divisé en sous réseaux, 8 bits pour l identifiant de sous-réseau, un sous-réseau par personne. 1. Choisissez l identifiant de votre sous-réseau (assurez-vous qu il n y a pas de conflits d adresses). 2. Déterminez le masque de sous-réseau, l adresse du réseau, l adresse de broadcast, la première et la dernière adresses IP de votre sous-réseau. 3. Reliez vos machines en passant par les commutateurs indiqués par le prof. 4. Configurez vos machines avec les adresses IP que vous venez à déterminer, mais en utilisant un masque /8. 5. Montrez que vos machines arrivent à communiquer entre elles. 6. Montrez que vous arrivez à joindre la machine à l adresse 10.0.0.1. 7. Montrez que vous arrivez à joindre un de vos collègues. 8. Maintenant, configurez les machines avec les bons adresses IP et masques de sous-réseau. 9. Vous devez toujours être capables à faire communiquer vos machines entre elles, mais pas de communication possible avec vos collègues et avec la machine 10.0.0.1. Expliquez pourquoi! Utilisez Wireshark pour analyser le trafic des trames. Lancez un "ping" depuis la machine 10.0.0.1 et observez avec Wireshark d où vient le problème. 10. Quels sont les modifications nécessaires pour permettre à vos machines de communiquer avec 10.0.0.1 et avec les réseaux de vos collègues? Apportez-les pour la machine en question et pour un de vos collègues. 11. Faites un schéma du réseau que vous avez réalisé! 5
4 ARP 1. Expliquez brièvement quel est le rôle du protocole ARP et à quoi sert la table ARP. 2. Choisissez une des machines à votre disposition et notez l adresse MAC de la carte de votre réseau interne. 3. Lancez la capture de paquets avec Wireshark. 4. Notez la table ARP de votre ordinateur : arp -a 5. Effacez la table ARP : arp -d 6. Envoyer un ping vers 10.0.0.1. 7. Arrêtez la capture de paquets. Affichez la table ARP et expliquez les différentes entrées. 8. Dans Wireshark, trouvez les paquets correspondant aux échanges ARP concernant votre ping. Ensuite, expliquez chaque paquet : Est-ce que c est une requête ou une réponse? Quels sont les champs qui le déterminent? Quelles sont les informations présentes dans tous les paquets ARP concernant cette échange? 5 ICMP 1. Expliques brièvement quel est le rôle du protocole ICMP. 2. Lancez Wireshark sur l interface vers l Internet. 3. Utilisez l utilitaire traceroute pour trouver les routeurs parcourus par un paquet pour joindre le serveur keyo.jp. 4. Arrêter Wireshark et analyser les paquets ICMP correspondant à votre requête. Faites attention au champ "TTL". 5. Ecrivez un script qui utilise le programme "ping" pour effectuer le même résultat que traceroute. Aide: vous pouvez spécifier la durée de vie (TTL) d une requête "ping". 6. Rappelez les différentes types d erreurs signalées par ICMP et trouvez un moyen de provoquer une de ces erreurs. Capturez les paquets avec Wireshark pour les analyser. 6