Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
(version1)
Par
1
Ce cours est la version 1, merci de m’envoyer par émail toutes vos remarques pour le
corriger et le compléter.
2
Les références :
Andrew Tanenbaum : Réseaux, cours et exercices.
3
Table des matières
Chapitre 1 : Introduction aux réseaux informatiques
1.1. Introduction
1.2. Définitions
1.3. Types de réseaux
1.4. Topologies
1.5. Comment transmettre une information sur un réseau ?
1.6. Mode de fonctionnement d’un réseau
1.7. Qu’apporte les réseaux ?
1.8. Modèles de références OSI et TCP/IP
4
Chapitre 1 :
5
1.1. Introduction
Nous commençons ce chapitre par quelques définitions, par la suite nous exposerons les
différents types et topologies des réseaux, mode de transmission connecté et non connecté, le
mode de fonctionnement d’un réseau et nous terminerons ce chapitre par la présentation du
modèle OSI et l’architecture TCP/IP en citant les fonctionnalités de chaque couche et les points
de différences entre les TCP/IP et OSI.
1.2. Définitions
1.2.1. Réseaux informatiques
Les Réseaux informatiques sont nés du besoin de faire communiquer des terminaux
distants avec un site central (serveur) puis des ordinateurs entre eux. Dans un premier temps,
ces communications étaient juste destinées aux transports de données informatiques alors
qu'aujourd'hui, on se dirige plutôt vers des réseaux qui intègrent à la fois des données, la parole
et la vidéo.
6
1.2.3. Nœud
C’est une station de travail, une imprimante, un serveur ou toute entité pouvant être
adressée par un numéro unique.
Par exemple une adresse logique. Nous pouvons distinguer deux types d’adresses : une
adresse logique et une adresse physique.
1.2.4. Serveur
Dépositaire centrale d’une fonction spécifique : service de base de données, de calcul,
de fichier, mail, ….etc.
1.2.5. Paquet :
C’est la plus petite unité d’information pouvant être envoyer sur le réseau. Un paquet
contient en général l’adresse de l’émetteur, l’adresse du récepteur et les données à transmettre.
1.2.6. Topologie
C’est une organisation physique et logique d’un réseau et nous pouvons distinguer
deux types de topologies :
La topologie physique, concerne la façon dont les machines sont connectées entre elles
(Bus, Anneau, Étoile ….).
La topologie logique montre comment les informations circulent sur les réseaux
(diffusion ou point à point).
1.2.9. Protocoles
Un protocole est un ensemble de règles destinées à une tâche de communication
particulière. Dans les réseaux informatiques et les télécommunications, un protocole de
7
communication est une spécification de plusieurs règles pour un type de communication
particulier.
Deux ordinateurs doivent utiliser le même protocole pour pouvoir communiquer entre
eux. En d’autres termes, ils doivent parler le même langage pour se comprendre.
Suivant la distance qui sépare les ordinateurs nous pouvons distinguer plusieurs types
de réseaux :
Le réseau local, ou encore appelé réseau local d'entreprise, est un réseau constitué
d'ordinateurs et de périphériques reliés entre eux dans une même entreprise et à caractère privé
(partage des ressources). En générale, il ne dépasse pas une centaine de machines situées dans
un espace géographique de quelques kilomètres. Les différentes architectures des réseaux
locaux sont normalisées en : IEEE802.x
8
1.4.2. Réseau MAN
En général le câble co-axial est le support physique le plus utilisé dans ce type de réseau.
Actuellement, c’est la fibre optique qui est utilisée pour ce type de réseau.
Dans un réseau FDDI (figure 1.2), si par exemple une machine 1 veut envoyer une donnée à la
machine 2, elle peut utiliser soit le bus A ou le bus B.
Le WAN : un réseau grande distance (Wide Area Network) est un réseau multi-services
couvrant un pays ou un groupe de pays. Un réseau WAN est constitué, en général, d'un
ensemble de réseaux locaux interconnectés.
9
Un résaeau WAN peut être privé (comme les réseaux privés MPLS, Ipsec…) ou public (comme
le réseau publique Internet), et les grandes distances qu'il couvre (plusieurs centaines de kms)
font que les liaisons sont assurés par du matériel moins sophistiqué (pour des raisons
financières) et le débit s'en trouve un peu pénalisé.
10
1.5. Types de topologies
Un réseau de type bus est ouvert à ses extrémités. Chaque PC y est connecté par l'intermédiaire
d'un connecteur spécial. Certains périphériques, comme des imprimantes, peuvent également
être directement reliés au réseau. Ils doivent alors comporter une carte adaptateur réseau.
A chaque extrémité, le réseau est terminé par une résistance (appelé bouchon) pour empêcher
l'apparition de signaux parasites. L’avantage de ce type de montage est simple à mettre en œuvre
et peu coûteux et son inconvénient est que s'il y a rupture du câble tout le réseau tombe en
panne.
L'exemple le plus courant de ce type de réseau est le réseau Ethernet 10base5 et Ethernet
10base2.
11
Figure 1.4. Topologie BUS
Dans un réseau en étoile, chaque nœud du réseau est relié à un contrôleur (hub) par un câble
différent. Le contrôleur est un appareil qui recevant un signal de données par une de ses entrées,
va retransmettre ce signal à chacune des autres entrées sur lesquelles sont connectés des
ordinateurs ou périphériques, voir d'autres contrôleurs. L’avantage d’une topologie en étoile est
que, si un nœud tombe en panne, il ne peut pas affecter les autres nœuds du réseau. Et
l’inconvénient de ce type d'architecture est qu’il est plus coûteux que les réseaux en bus et en
anneau. En effet, la longueur du câblage est importante, ce qui entraîne un coût supplémentaire.
De plus le contrôleur est un élément relativement cher. D'autre part, une panne du contrôleur
provoque la déconnexion du réseau de tous les nœuds qui y sont reliés
12
1.5.3. Le réseau en anneau
Il s'agit d'un réseau local dans lequel les nœuds sont reliés en boucle fermée ou des réseaux
doublement connecté pour éviter l’isolation des machines en cas de rupture de la liaison entre
les machines.
En conclusion, aucun de ces trois plans de câblage (le bus, étoile, anneau) n'est idéal et le choix
de l'un ou l'autre sera influencé par des questions de coût, de configuration du site auquel le
réseau est destiné. Et pour optimiser le fonctionnement d'un réseau sans atteindre des coûts
exorbitants, on peut utiliser conjointement plusieurs architectures. Les petits réseaux sont
souvent basés sur une seule topologie et les plus grands réseaux peuvent inclure les trois types
de topologies.
13
1.6. Comment transmettre une information sur un réseau ?
Deux modes de transmission des données sont utilisés dans les réseaux : le mode de diffusion
(braodcast en anglais) et le mode point à point.
Le mode de diffusion consiste à partager un seul support de transmission entre les machines et
chaque message envoyé par une machine sur le réseau est reçu par tous les autres machines. En
effet, l’adresse physique (MAC)/logique(IP) placée dans le message permettra à chaque
équipement de déterminer si le message lui est adressé ou non.
A tout moment chaque équipement a le droit d’envoyer un message sur le support, il faut juste
écouter au préalable si la voie est libre, sinon il doit attendre.
Les réseaux locaux adoptent pour la plupart des cas, le mode diffusion sur une architecture en
bus ou en anneau.
Dans le mode de communication point à point, le support physique (câble) relie une paire
d’équipement seulement et quand deux équipements, non directement connectés entre eux,
veulent communiquer, ils le font par l’intermédiaire des autres nœuds du réseau.
Par exemple dans un réseau connecté en boucle simple, chaque nœud reçoit un message de son
voisin en amont et le réexpédie à son voisin en aval.
14
Dans une topologie double boucle, chaque boucle fait tourner les messages dans un sens opposé.
Et en cas de panne d’un équipement, une boucle simple est reconstruite avec les éléments actifs
des deux boucles.
15
1.7. Mode de fonctionnement d’un réseau
Dans le monde des réseaux, nous pouvons citer deux types de réseaux : les réseaux à
commutation qui fonctionne en mode connecté et les réseaux à routage qui fonctionne en mode
non connecté.
Dans ce paragraphe, nous exposerons un exemple illustratif qui permet d’expliquer les deux
modes de fonctionnement de réseaux.
16
1.8. Modèles de réseaux
1.8.1. Normalisation
Pour connecter tous les réseaux qui existent dans le monde de communication, il fallait établir
des normes pour éviter l’incompatibilité entre les différents réseaux. Par exemple deux cartes
réseaux différentes ne peuvent pas communiquer entre elles sans établir des règles (ensemble
de protocoles).
17
1.8.3.1. Les fonctionnalités de chaque couche du modèle OSI :
Couche physique : Assure le transfert de bits, on trouve dans cette couche :
L’étude des interfaces de connexion.
L’étude des modems, la modulation, des multiplexeurs et concentrateurs.
1.8.3.2.Architecture TCP/IP
TCP/IP est une architecture définie par la défense américaine (DoD). Le but de ce réseau est la
connexion de plusieurs réseaux utilisant des protocoles de communication différents et
incompatibles.
18
Figure 1.9. Architecture TCP/IP
TCP/IP est un réseau souple par rapport la couche physique et liaison de données. Il peut
fonctionner sur les réseaux Locaux tels que : Ethernet, Wifi ou sur des réseaux tels que ADSL.
TCP/IP contient trois couches (réseau, transport et application) et une couche qui représente
l’accès au medium (couche physique et liaison de données). Contrairement, OSI est normalisé
sur 7 couches. La couche application de TCP/IP comportent les trois couches de l’OSI : la
couche session, présentation et application. Un point de différence important entre OSI et
TCP/IP est que le premier fonctionne en mode connecté (commutation de paquet, cellule,..) et
TCP/IP en mode non connecté (routage).
19
Figure 1.10. Analogie entre TCP/IP et OSI
s
Figure 1.11. Exemple de communication locale entre deux machines sous TCP/IP
20
1.8.3.5. Encapsulation/Décapsulation
Le paquet est l'unité d'information de base transférée via le réseau. Il contient en général un
champ « en-tête » et un champ « données à transférer». Lorsque le paquet parcourt la pile de
protocoles TCP/IP, les protocoles de chaque couche ajoutent ou suppriment des champs de l'en-
tête de base. Lorsqu'un protocole sur le système émetteur (récepteur) ajoute (supprime) des
données à l'en-tête du paquet, le processus s'appelle encapsulation (décapsulation) de données.
21
Chapitre 2 :
Adressage IPv4
2.1. Introduction
2.2. Définitions
2.3. Classes d’Adresses IP
2.4. Sous adressage IP
2.5. Adressage VLSM
22
2.1. Introduction
Une adresse IP (Internet Protocol) est un numéro d'identification qui est attribué de
façon permanente ou provisoire à chaque appareil (machine, routeur, imprimante etc…)
connecté à un réseau informatique utilisant le protocole Internet. L'adresse IP est à la base de
toutes les communications sur le réseau Internet et elle représente l’information principale pour
l'acheminement (le routage) des messages entres les réseaux.
Il existe des adresses IP de version 4 (sur 32 bits, soit 4 octets) et de version 6 (sur 128
bits, soit 16 octets). La version 4 est actuellement la plus utilisée ; elle est généralement
représentée en notation décimale avec quatre nombres compris entre 0 et 255, séparés par des
points. Ces dernières années et avec la demande croissante des adresses IP, les plages d'adresses
IPv4 étant proches de la saturation. Malgré les techniques utilisées pour remédier à ce problème,
l’adressage IPv4 reste insuffisant et c’est pour cela les opérateurs incitent à la transition d'IPv4
vers IPv6.
Une adresse IP est un codage sur quatre octets, elle peut donc prendre des valeurs entre
0 et 232 – 1. Et chaque octet pour prendre une valeur de 0 à 255. Les adresses sont données par
les valeurs de chaque octet séparées par des points.
Exemple 1 :
23
Une adresse IP est constituée de deux parties : l'adresse du réseau (identificateur réseau
ou la partie réseau (Netid)) et l'adresse de la machine (identificateur de la machine ou la partie
machine (Hostid)), elle permet donc de distinguer une machine sur un réseau. Deux machines
se trouvant sur un même réseau possèdent la même adresse réseau mais ne pas la même adresse
machine.
Exemple 2 :
C’est le masque qui permet de distinguer un réseau, une machine ou une adresse de
diffusion.
Exemple 3 :
192.6.8.200 est une adresse IP et son masque 255.255.255.0 indique que les trois
premiers octets (les 24 premiers bits à gauche) représente l’adresse du réseau et le dernier octet
(les 8 derniers bits à droite) pour la machine.
24
Nous pouvons représenter le masque sous format décimal ou par préfixe.
Exemple 4 :
Soit l’adresse IP est 9.0.0.0 et un masque 255.0.0.0 (/8 en préfixe). Dans cet exemple le
premier octet (8 bits pour la partie réseau) à gauche dont la valeur décimal égale à 9 représente
la partie réseau et les trois octets à droite représentent la partie machine (24 bits pour la partie
machine ce qui permet d’adresser 224 -2 machines dans le réseau 9.0.0.0).
Exemple 5 :
Soit l’adresse IP est 9.16.0.0 et un masque 255.240.0.0 (/12 en préfixe). Dans cet
exemple les 12 bits à gauche dont les valeurs en binaires sont 00001001.0001 représentent la
partie réseau et les 20 bits à droite dont les valeurs sont 0000.00000000.00000000 représentent
la partie machine (20 bits pour la partie machine ce qui permet d’adresser 220 -2 machines dans
le réseau 9.0.0.0). La valeur 20 qui représente la partie machine est calculée par soustraction de
12 de 32, avec 32 est la valeur binaire pour 4 octets d’une adresse IP et 12 pour 12 bits de la
partie réseau, cette dernière valeur est représentée par le masque /12.
Une adresse réseau est une adresse IP dont tous les bits de la partie machine sont égaux
à zéro.
Exemple 6 :
L’adresse IP est 3.0.0.0/8 ; dans cet exemple le premier octet à gauche dont la valeur
décimal égale à 3 (dit le réseau 3.) représente la partie réseau et 0.0.0 (on dit la machine 0.0.0)
représente la partie machine
Exemple 7 :
3.5.0.0/16 ; dans cet exemple les deux octets à gauche dont les valeurs sont 3 et 5
représente la partie réseau (on dit le réseau 3.5) et les deux octets à droite dont les valeurs sont
égales à 0 représentent la partie machine (on dit la machine 0.0).
25
NB. Nous allons voir la différence entre ces deux exemples dans la partie adressage
sous réseau.
Une adresse machine est adresse IP dont la partie machine contient au moins un bit égal
à 0 et un bit égal à 1.
Exemple 8 :
3.0.0.8/24 ; dans cet exemple les trois octets à gauche dont les valeurs sont 3, 0 et 0
représentent la partie réseau (on dit le réseau 3.0.0) et l’octet à droite dont la valeur est égale à
8 représente la partie machine (on dit la machine 8).
Exemple 9 :
3.7.0.0/8 ; dans cet exemple l’octet à gauche dont les valeurs sont 3 représente la partie
réseau (on dit le réseau 3) et les trois octets à droite dont les valeurs sont égales à 7, 0 et 0
représentent la partie machine (on dit la machine 7.0.0).
Une adresse de diffusion (braodcast address) est une adresse qui représente toutes les
machines d’un réseau. C’est une adresse courante utilisée pour diriger (diffuser) un message
vers tous les systèmes sur un réseau. L'adresse de diffusion est basée sur l'adresse réseau et le
masque de sous-réseau. Elle est calculé en remplaçant tous les bits de la partie machine par 1.
Exemple 10 :
L’adresse IP est 3.0.0.0/8 ; dans cet exemple la partie machine est représenté par les 3
octets de droite 0.0.0. L’adresse broadcast de cette adresse réseau, en remplaçant tous les bits
de la partie machine par des 1, est l’adresse IP 3.255.255.255
Exemple 11 :
26
3.5.0.0/16 ; dans cet exemple les deux octets à droite dont les valeurs sont égales à 0
représentent la partie machine. Donc, l’adresse broadcast de cette adresse réseau est l’adresse
IP 3.5.255.255
Exemple 12 :
Exemple 13 :
L’adresse IP 9.12.8.0/24 c’est une adresse sous réseau qui est 9.12.8.0
Exemple 14 :
Exemple 15 :
L’adresse IP 130.12.0.255/24 c’est une adresse broadcast dans le sous réseau 130.12.0.0
27
2.3. Classes d’adresses IP
Il existe différents découpages possible que l'on appelle : classes d'adresses IP. À
chacune de ces classes correspond un masque réseau différent. Nous pouvons distinguer 5
classes différentes dans l’adressage IP (la classe A, B, C, D et E). Les adresses de classe A
permettent de créer des réseaux avec plus de machines, par contre, il y a beaucoup plus de
réseaux dans la classe C. les classes A, B et C sont réservées pour les machines et les réseaux,
la classe D est une classe utilisée pour le multicast et la classe E est réservée (n’est pas utilisée).
2.3.1. Classe A
Dans cette classe, le premier bit de l’octet à gauche a une valeur égale à zéro, cela
implique que les valeurs de ce premier octet sont comprises entre 0 et 127. Dans la classe A la
partie réseau est représenté par 1 octet (octet à gauche) et la partie machines par 3 octets (3
octets à droite). Le premier octet désigne le numéro de réseau (netid) et les 3 autres à droite
correspondent à l'adresse de la machine (hostid). Le nombre de réseau de la classe A est 28
adresses réseaux (y compris les adresses non routable) et 224-2 adresses machines par réseau Le
masque de la classe A est 255.0.0.0 ou /8.
Dans la classe A, l'adresse 0.0.0.0 est illégale en tant qu'adresse de destination, mais elle
peut être utilisée localement dans une application pour indiquer n'importe quelle interface
réseau. L'adresse 127.0.0.1 dénote l'adresse de bouclage (localhost ou loopback) est une adresse
réservée pour les communications en boucle locale. L’adresse 10.0.0.0 est réservée pour
l’adressage privé.
28
Toute machine disposant d’une pile TCP/IP fonctionnelle permet de s’adresser à
localhost, même si cette machine n’est reliée à aucun réseau physique ou virtuel. On peut ainsi
vérifier que la pile TCP/IP d’une machine est opérationnelle en utilisant le protocole PING. Un
retour effectif d’un écho émis par PING permet ainsi d’éliminer une défaillance de la couche
réseau inférieure à TCP.
2.3.2. Classe B
Dans la classe B, les deux premiers bits à gauche (2 bits de poids fort) du premier octet
sont égaux à 10, ce qui implique que les valeurs de cet octet sont comprises entre 128 et 191.
Dans cette classe, les deux premiers octets à gauche désignent la partie réseau (Netid) et les
deux octets à droite représente la partie machine (Hostid). Le nombre de réseau de la classe B
est 214 adresses réseaux (y compris les adresses non routable) et 216-2 adresses machines par
réseau et le masque de cette classe est 255.255.0.0 ou /16
29
Les différentes adresses de la classe B sont :
128.0.0.0, 128.1.0.0, 128.2.0.0 …………….128.255.0.0, 129.0.0.0,129.1.0.0…….191.255.0.0
2.3.3. Classe C
Dans la classe C, les trois premiers bits à gauche (3 bits de poids fort) du premier octet
sont égaux à 110, ce qui implique que les valeurs de cet octet sont comprises entre 192 et 223.
Dans cette classe, les trois premiers octets à gauche désignent la partie réseau (Netid) et l’octet
à droite représente la partie machine (Hostid). Le nombre de réseau de la classe C est 221
adresses réseaux (y compris les adresses non routable) et 28-2 adresses machines par réseau et
le masque de cette classe est 255.255.255.0 ou /24
30
Les adresses de la classe A (les adresses valides et non valide) sont :
de 192.0.0.0.0 à 223.255.255.255
2.3.4. Classe D
Cette classe est réservé pour le multicast ou la diffusion vers des groupes de machines.
Le premier octet d’une adresse de la classe D a une valeur comprise entre 224 et 239 ; soit 3
bits de poids fort égaux à 111.
2.3.5. Classe E
Le premier octet a une valeur comprise entre 240 et 255. Il s'agit d'une zone d'adresses
réservées aux expérimentations. Ces adresses ne doivent pas être utilisées pour adresser des
machines ou des groupes de machines.
31
2.3.5. Adresses réseaux privés
Une adresse de réseau privé est une adresse non routable à usage privé (elle ne peut pas
figurer dans la table de routage et ne peut pas circuler dans le réseau. Elle peut être utilisée dans
un adressage interne dans un établissement par exemple et la traduction en adressage publique
peut être réalisée par un serveur NAT). Leur utilisation par un réseau privé est encouragée pour
éviter de réutiliser les adresses publiques enregistrées. Dans chaque classe d'adresses, certaines
adresses réseaux sont réservées aux réseaux privés.
32
2.4. Adressage IPv4 des sous-réseaux (subneting)
Pour segmenter un réseau en sous-réseaux, il faut décomposer la partie machine (hostid) de
l’adresse IP (figure 2.6) en deux parties (figure 2.7) :
une partie de l’adresse sous-réseau (subnetid)
une partie de l’adresse machine (hostid).
Autrement dit, il faut prendre un ensemble de bits de la partie machine de l’adresse IP (Hostid)
et les associer à la partie réseau (Netid). Les bits qui restent représentent la partie machine
(Hostid) du sous réseau (figure 2.8).
33
Exemple 16 :
Soit l’adresse IP de la classe A : 99.0.0.0/99 et 3 bits pour l’adressage sous réseau
Le masque de départ (/8) change et doit maintenant englober la partie netid et la partie subnetid.
Ce nouveau masque se nomme masque de sous-réseaux (/11).
Pour l’exemple en haut, pour une adresse de la classe A et un sous réseau codé sur 3 bits, le
masque de sous réseau est /8 + 3 = /11 c’est-à-dire 255.224.0.0
34
2.4.1. Plage d’adresses des sous-réseaux (subneting)
Soit l’adresse 192.168.1.0/24 de la classe C pour adresser 4 sous réseaux.
La partie machine de cette adresse est codée sur 8 bits. Pour segmenter cette adresse en 4 sous
réseaux, il nous faut 2 bits (4 = 22) pour la partie sous réseau (subnetid). Cela implique que la
le nouveau masque pour le sous adressage est /24 + 4 = /28
En représentation décimale, le masque est :
35
2.4.1. Plage d’adresses machines du sous-réseau
Pour calculer les différentes adresses machines du sous réseau 192.168.1.0, il faut garder la
partie sous réseau (subnetid) égale à 0000 et prendre toutes les combinaisons possible de la
partie machine (xxxx).
Comme vous avez remarqué, la première adresse dont la partie machine est égale à 0000
représente l’adresse sous réseau.
Et la dernière adresse sont la partie machine est égale à 1111, représente l’adresse broadcast du
sous réseau 192.168.1.0/28
36
2.5. Masque de sous-réseau de longueur variable (VLSM)
Dans tous les exemples précédents de la division d'un réseau en sous-réseaux, notez que le
même masque de sous-réseau a été appliqué pour tous les sous-réseaux. Cela signifie que
chaque sous-réseau a le même nombre d'adresses d'hôte disponibles. Vous pouvez parfois en
avoir besoin mais, dans la plupart des cas, le fait d'avoir le même masque de sous-réseau pour
tous les sous-réseaux aboutit à un gaspillage de l'espace d'adressage. Par exemple (voir solution
en bas), dans un réseau d’adresse 199.2.7.0/24 de la classe C divisé en cinq sous réseaux et dont
le premier et le deuxième sous réseau contiennent 30 machines chacun, le troisième et le
quatrième sous réseaux contiennent 10 machines chacun et le cinquième sous réseau contient 4
machines. En effet, ce réseau de classe C est divisé en cinq sous-réseaux de taille égale ;
cependant, chaque sous-réseau n'a pas utilisé toutes les adresses machines disponibles, ce qui a
entraîné un gaspillage de l'espace d'adressage.
Pour avoir 5 adresses sous réseaux nous avons besoin de 3 bits donc le nouveau masque est /27
~ 255.255.255.224. Ce masque fixe nous permettra d’adresser 30 machines par sous réseaux.
37
2.5.2. Adressage VLSM
Pour résoudre ce problème de gaspillage d’adresse IP, nous avons besoin d’utiliser un
adressage avec un masque variable (Variable Length Subnet Mask en anglais) qui changera
avec le nombre de machines par sous réseau. En effet, les masques de sous-réseau de longueur
variable (VLSM) vous permettent d'utiliser différents masques pour chaque sous-réseau, ce qui
optimise l'utilisation de l'espace d'adressage.
Avant d’établir un plan d’adressage VLSM, nous allons nous entrainer à diviser une
adresse réseau de la classe A ou B ou C en adresses sous réseaux et par la suite nous diviserons
de nouveau une de ces adresses sous réseaux en adresses sous réseaux (c’est à dire nous
calculons des adresses SR d’une adresse SR d’une classe par défaut A ou B ou C). Autrement
dit, nous allons passer d’un masque par exemple /16 vers un masque /21 (32 SR) et par la suite
vers un masque /27 (64 sous réseaux par adresse SR). Voir schéma suivant :
Exemple 1 :
Soit l’adresse 160.0.0.0/16 pour adresser 32 sous réseaux et par la suite diviser une
de ces dernières adresses en 64 adresses sous réseaux.
Pour avoir 32 sous réseaux nous avons besoin de 5 bits, donc les adresses sous réseaux sont :
38
Sous réseaux Adresses IP Masque
1er 160.0.0.0 /21
2ème 160.0.8.0 /21
3ème 160.0.16.0 /21
4ème 160.0.24.0 /21
.
.
.
31ème 160.0.240.0 /21
32ème 160.0.248.0 /21
Pour la suite supposons que nous diviserons en sous réseaux la première et la 11ème
adresse SR en 64 adresses sous réseaux.
Nous avons besoin de 6 bits donc le nouveau masque sera : /21+6 = /27 ~ 255.255.255.224
39
Le réseau suivant en appliquant la notion de pas est : 160.0.8.0. Cette dernière est l’adresse
suivante de l’adresse 160.0.0.0/21. C’est pour cette raison la dernière adresse SR est
160.0.7.224 celle qui précède 160.0.8.0
Avant de donner les adresses SR, il faut d’abord calculer l’adresse suivante de cette adresse en
utilisant la notion de pas. Et par la suite citer toutes les adresses comprises entre ces deux
adresses pour définir la première et la dernière adresse.
Solution :
L’adresse qui suit l’adresse sous réseau 11 (SR11) 160.0.80.0/21 est l’adresse sous réseau 12
(SR12) 160.0.88.0/21
40
2.5.3. Exemple 1 d’adressage VLSM
Soit l’adresse IP 200.0.0.0/24 de la classe C pour adresser 6 sous réseaux voir le schéma
suivant :
Il faut commencer par réserver une adresse sous réseau pour le réseau dont le nombre de
machines est le plus élevé (Res1). En effet, pour avoir 100 machines nous avons besoin de 7
bits pour la partie machine et 1 bit pour la partie SR. Donc le nouveau masque sera /25.
41
200.0.0. X 0 0 0 0 0 0 0
Il reste l’adresse 200.0.0.128/25 à diviser pour avoir les autres adresses SR.
NB. Pour la suite de la solution, nous allons présenter que l’octet 4 de l’adresse IP car nous
sommes dans la classe C donc les 3 premiers octets à gauche ne changeront pas (200.0.0.X) .
Le réseau dont le nombre de machines est le plus grand est Res4 (60 machines).
Pour avoir 60 machines nous avons besoin de 6 bits pour la partie machines donc le masque
sera /26. Cela signifie qu’il faut réserver 1 bit de plus pour la partie SR (il faut garder le 1 bit à
1).
Admettons que l’adresse 200.0.0.128/26 sera réservée pour le Res4 cela implique qu’il faut
diviser l’adresse 200.0.0.192/26 pour les autres adresses SR.
NB. Pour passer d’un masque à un masque plus grand, utiliser la méthode que nous avons
exposé en haut (la partie de division des adresses SR)
42
2.5.3. Exemple 2 d’adressage VLSM
Etablir un plan d’adressage pour le schéma suivant en utilisant l’adresse IP 200.0.0.0/24
Res1 : 200.0.0.128/25
Res2 : 200.0.0.96/30
Res3 : 200.0.0.100/30
Res4 : 200.0.0.0/27
Res5 : 200.0.0.32/27
Res6 : 200.0.0.64/28
43
Chapitre 4 :
(entête IP)
Sommaire
4.1. Introduction
4.2. Descriptions des champs de l’entête du datagramme IP
4.3. La fragmentation des datagrammes IP
4.4. Exemple illustratif de fragmentation
4.5. Vérification du champ « checksum »
44
4.1. Introduction
Dans ce chapitre, nous expliquerons la signification des différents champs de l’entête IP. Par la
suite, nous allons introduire deux applications qui supposent connaitre la signification de
chaque champ de l’entête IP à savoir la fragmentation et l’analyse des trames.
Les paquets transmis par IP sont appelés des datagrammes. Ces derniers sont formés de deux
parties :
Données
45
4.2. Descriptions des champs de l’entête du datagramme IP
VER : signifie la version d'IP soit égale à 4 pour la version IPv4 ou 6 pour la version IPv6 et
comme nous travaillons sur la version 4 avec un adressage IP sur 4 octets la valeur de VER est
0100 en binaire ou 4 en hexadécimale.
IHL : signifie la longueur de l'en-tête IP (en mots de 32 bits). L’entête IP varie entre 20 octets
et 60 octets. Cela signifie que la valeur de IHL varie entre la valeur 0101 et 1111 en binaire ou
5 et F en hexadécimale.
NB. L'entête IP standard n'utilise pas le champ "Option", elle a donc une longueur de 20 octets
(IHL = 5 mots de 4 octets).
TOS : Type de service, indique la qualité du service demandé pour un datagramme. Autrement
dit, ce champ donne des indications aux équipements qu'il traverse sur son niveau de priorité et
sa classe de service. Ce champ est défini sur 8 bits et divisé en 5 parties :
Il faut noter que ce champ est rarement utilisé. Cependant, avec l'arrivée de nouvelles
technologies comme le MPLS (Multi Protocol Label Switching) on commence à utiliser le
champ TOS bits 0 à 2 pour définir des classes de services qui sont exploitées par MPLS.
46
Certaines applications utilisaient déjà ce champ TOS pour définir des priorités d'acheminement
de leurs paquets dans le réseau, mais cela restait rare.
NB. Durant tous les travaux dirigés, si la taille n’est pas mentionnées, il faut prendre IHL =
20 octets.
FLAG : est un indicateur codé sur 3 bits qui permet de faire la différence entre 3 types de
datagrammes dans le cas où un datagramme est fragmenté ou non fragmenté.
Exemple :
Si un datagramme initial F(x DF MF) est fragmenté par exemple en 3 fragments F1(001),
F2(001) et F3 (000), le 2ème bit (DF) de ces derniers est égal à 0. Cela veut dire que ces
datagrammes (fragments) appartiennent à un fragment initial qui a supporté une fragmentation).
Le 3ème bit(MF) de F1 et F2 est égal à 1 cependant celui de F3 est égal à 0. Cela signifie que
F3 est le dernier fragment et les fragments F1 et F2 ne sont pas les derniers fragments.
47
OFFSET : Ce champ, codé sur 13 bits, en multipliant sa valeur par 8, indique la position de
chaque fragment par rapport aux autres fragments, autrement dit, ce champ représente le
pointeur de chaque fragment ou le premier octet de chaque fragment. L’offset du premier
fragment d’un datagramme fragmenté ou non fragmenté est 0.
Exemple :
Un datagramme de taille égale à 220 octets (200 octets données et un entête égal à 20 octets);
si ce datagramme est fragmenté en 3 fragments de tailles 100 octets, 100 octets et 60 octets.
Cela signifie que les offsets de cette fragmentation sont 0 (représente l’octet 0), 10 (représente
l’octet 80) et 20 (représente l’octet 160).
TTL : signifie la durée de vie restante (codé sur 8 bits) : ce champ indique le nombre maximal
de routeurs traversés par un datagramme. Ainsi ce champ est décrémenté à chaque passage dans
un routeur (le temps est estimé à une seconde), lorsque celui-ci atteint la valeur 0, le routeur
détruit le datagramme et envoie un message d’erreur ICMP. Cela signifie qu’un datagramme
ne peut pas tourner à l’infini dans le réseau et évite l'encombrement du réseau par les
datagrammes perdus.
48
NB. A chaque passage par un routeur, il faut recalculer le Checksum car les routeurs
décrémentent le champ TTL.
Quand un routeur reçoit un datagramme IP de taille très grande par rapport à la taille de
données supportées par le réseau de la sortie (l'unité de transmission maximale (MTU)), il doit
le fragmenter avant de l’envoyer sur le réseau. Donc, le message de la couche supérieure ne
doit pas être transmis dans un seul datagramme IP mais plutôt décomposé en morceaux appelés
fragments qui sont envoyés séparément sous forme de datagrammes.
La figure 4.1 donne un exemple illustratif d’un routeur connecté à deux réseaux
différents. Ce routeur est connecté via l’interface I1 vers un réseau qui ne peut supporter que
100 octets au maximum (MTU1=100 octets) et via l’interface I2 vers un autre réseau qui ne
peut supporter que 300 octets au maximum (MTU2 = 300 octets). Ce routeur peut envoyer le
datagramme reçu via l’interface I0 vers l’interface I2 sans fragmentation car la taille du
datagramme reçu (240 octets) est inférieure à la taille du MTU2 (300 octets). Cependant, ce
routeur doit fragmenter, si le bit DF du champ FLAG est positionné à 0, le datagramme reçu
(240 octets) en fragments de taille 100 octets au maximum pour les envoyer via l’interface I1.
49
Figure 4.1. Un schéma illustratif de la fragmentation au niveau d’un routeur.
Donnez dans un tableau les différents fragments (offset, FLAG et taille du fragment
(TF)) de la fragmentation d’un datagramme de taille 240 octets par un MTU1 = 100 octets et
MTU2 = 128 octets.
Solution :
220= (240 -20) = 80 x 2 + 60 implique que le nombre de fragments est 3 (2 fragments de taille
100 et 1 fragment de taille 80).
Table 4.2. Les différents fragments dans le cas du MTU1 = 100 octets et un datagramme initial
de talle 240 octets
50
2) MTU2 = 128 octets
220= (240 -20) = 104 x 2 + 12 implique que le nombre de fragments est 3 (2 fragments de taille
124 et 1 fragment de taille 32).
Table 4.3. Les différents fragments dans le cas du MTU2 = 128 octets et un datagramme initial
de talle 240 octets
Soit l’entête IP ci-dessus, nous avons besoin de trier tous ces champs en mots de 16 bits et les
convertir en binaire. Puis calculez le complément à 1 de la somme de tous ces mots.
Solution :
51
AC10 1010 1100 0001 0000
0a0c 0000 1010 0000 1100
4500 0100010100000000
003C 0000000000111100
453C 0100010100111100 <- Ceci est le résultat premier.
52
1440C 1 0100 0100 0000 1100
0440D 0100 0100 0000 1101 <- Ceci est le résultat septième.
Ici, nous n’avons pas encore fini, nous devons appliquer maintenant la dernière opération
binaire, qui est le complément, et le résultat (le contrôle lui-même) Sera:
53
00000000 200.0.0.0/25 (Res1)
10000000 200.0.0.128/25
10000000 200.0.0.128/26 (Res2)
11000000 200.0.0.128/26
11000000 200.0.0.192/27 (Res3)
11100000 200.0.0.224/27
1 1 1 0 0 0 0 0 200.0.0.224/28 (Res4)
1 1 1 1 0 0 0 0 200.0.0.224/28
1 1 1 1 0 0 0 0 200.0.0.240/29 (Res5)
1 1 1 1 1 0 0 0 200.0.0.248/29 (Res6)
54