Вы находитесь на странице: 1из 11

Protocole IPv4 : Les bases

ciscomadesimple.be /2014/11/08/protocole-ipv4-les-bases/

Steve De 08/11/2014
Jongh

Le protocole IPv4 : les bases

Introduction
IPv4 est un protocole routable , de la couche rseau du modle OSI (couche 3), entendez par l quil dfini
principalement un systme dadressage permettant de router des paquets.
Ce protocole est dcrit dans la RFC791 publie en 1981. Son objectif initial tait de permettre linterconnexion de
rseaux.
Le principe sur lequel il est btit est relativement simple: attribuer aux machines une (ou plusieurs) adresses(s)
dune taille donne afin que celle-ci puissent schanger des paquets de donnes. Ces adresses permettent aux
machines composant le rseau de choisir un itinraire pour acheminer les donnes depuis une source vers une
destination.

Analogie
Si je veux transmettre une lettre un voisin qui habite la mme rue que moi, je ne me proccupe pas de ladresse
de la rue. Tout ce que jai besoin de savoir cest ce qui distingue sa maison de la mienne. Une caractristique
physique de sa maison.
Par contre, si je souhaite envoyer une lettre un correspondant ltranger, je vais gnralement faire appel un
service qui acheminera ma lettre son destinataire. Pour que ce service puisse faire son travail, je dois lui indiquer
qui jenvoie la lettre, mais surtout, o cette personne habite. Hors pour prciser cette information, je dois disposer
dun systme dadressage. Le service postal utilisera ladresse du destinataire pour dfinir litinraire que prendra la
lettre.
En y rflchissant de plus prs, mme moi jai besoin de cet adressage. Sans lui je ne pourrais raisonnablement pas
dfinir si le destinataire est dans la mme rue que moi. Donc au final, quand jenvoie la lettre, le compare ladresse
du destinataire la mienne, si nous sommes dans la mme rue, je lui apporte moi mme (cest plus simple non ?),
si ce nest pas le cas, je fais appel un service qui lacheminera vers sa destination.

1/11
Le systme postal que nous connaissons fonctionne (Si si, il fonctionne ou pas ) parce que nous utilisons
un protocole qui consiste indiquer sur lenveloppe ladresse du destinataire un endroit dfini, au dos, nous
marquons notre propre adresse, pour un retour ventuel, nous laffranchissons, indiquons aussi dventuelles
options (courrier prioritaire, colis fragile) etc.
Du point de vue rseau, le concept est similaire

Len-tte IPv4
Lorsque des donnes doivent tre vhicules sur un rseau, les machines les encapsulent dans un paquet muni
dun en-tte qui comporte toutes les informations ncessaires au routage des donnes. Voici len-tte:

2/11
Chacune des case reprsente un champs qui apporte une information prcise pour le traitement du paquet IPv4:

Version: indique la version du protocole (toujours gal 4 pour IPv4)


IHL: Longueur de len-tte IPv4 (ncessaire en raison de la prsence possible doptions)
ToS: Marquage diffrentiel pour la qualit de service (permet de marquer un paquet comme tant plus
important).
TPL: Longueur totale du paquet IPv4.
Fragment ID: Identification dun fragment de paquet, permet de le reconstituer plus tard. Utilis lorsquun
paquet doit tre fragment parce que sa taille dpasse la capacit du rseau sur lequel il doit tre mis.
FLAG: Marqueurs permettant dindiquer si un paquet peut/doit ou ne peut pas tre fragment.
Fragment Offset: Indique la position du fragment au sein du paquet original.
TTL: Time To Live, reprsente le nombre dintermdiaire (routeurs) par lesquels le paquet peut encore
passer avant dtre dtruit. Il sagit dun mcanisme permettant dviter quun paquet ne tourne indfiniment
dans un rseau suite un problme de routage. On peut comparer cela une date de premption.
Protocol: Contient une valeur numrique qui identifie la nature du contenu du paquet.
Checksum: SOmme de contrle calcule sur len-tte du paquet IPv4. Permet de contrler lintgrit de
lentte et donc de le dtruire sil avait t altr.
Source IP: Adresse IPv4 de la machine qui a mis le paquet.
Destination IP: Adresse IPv4 de la machine laquelle est destine le paquet.
Options: Permet dajouter diffrentes informations optionnelles et rarement utilises.
Data: Les donnes vhicules dans le paquet.

Chaque machine travaillant au niveau de la couche rseau (couche 3) du modle OSI analysera cette en-tte et
agira en consquence. Par exemple, les routeurs lutiliseront pour acheminer les donnes vers la destination en
fonction de ladresse IPv4 de destination.
3/11
Types de communications IPv4
Il existe en IPv4, trois manires de communiquer

Le paquet unicast: Un paquet mis par une machine, destin une et une seule autre machine. Une
communication de un--un.
Le paquet broadcast (de diffusion): Un paquet mis par une machine et destin toutes les machines dun
rseau. Une communication de un--tous.
Le paquet multicast (de multi diffusion): Un paquet mis par une machine et destin un groupe de
machine. Une communication de un--plusieurs.

La majorit des changes de donnes sont des communications unicast. Par exemple, lorsque je surfe sur un site
web, cest ma machine (le client) qui dialogue avec le site distant (le serveur). On a donc bien une relation de un
un.
Chaque type de communication utilise un adressage diffrent bien que dfini dans une structure unique.

Ladressage IPv4
Pierre angulaire du protocole IPv4, ladresse IPv4 est donc une valeur numrique code sur 32 bits (soit 2^32
adresses IPv4 au total) que lon attribue principalement aux interfaces des machines afin que celles-ci puissent
schanger des donnes. Malheureusement, toutes ces adresses ne sont pas utilisables pour adresser une
machine, nous y reviendrons.
Ces adresses sont reprsentes gnralement sous la forme de 4 octets exprims en valeur dcimale, spars par
un point. (Ex: 192.168.0.1, 80.200.14.58, etc.)
Un octet tant compos de 8 bits, sa valeur ne peut pas excder 255. Toutes les adresses IPv4 sont donc
comprises entre 0.0.0.0 et 255.255.255.255.

Pour comprendre la structure dune adresse IPv4, le plus simple est de rflchir ladresse dune srie de maisons
dans une rue:

Toutes les maisons dune mme rue auront une partie de leur adresse commune (le nom de la rue, la
commune, la ville, le pays, etc.)
Chaque maison aura dans son adresse un lment qui lui est propre: le numro de la maison dans la rue.

Ladressage IPv4 fonctionne exactement sur le mme principe. Toutes les interfaces de machines dans un mme
rseau auront une partie de leur adresse qui sera commune: lidentifiant rseau et une deuxime partie qui lui sera
propre: lidentifiant hte. Ces deux lments ensembles formant ladresse complte de la machine dans son rseau.
Voici ce que a donne dun point de vue conceptuel:

Lidentifiant rseau est form par un certain nombre de bits ( gauche, les bits de poids fort), et lidentifiant hte (
droite, les bits de poids faible) reprsent par ce qui reste de bits.
Normalement une question doit vous venir lesprit Combien de bits ct rseau ? et donc combien ct hte
? Et cest ici que les Romains sempoignrent!

Comment dfinir la limite entre lidentifiant rseau et lidentifiant hte ?

Les classes
4/11
La premire ide tait de faire simple, enfin, humainement simple en tout cas: on dfinit 5 classes. A chaque classe
correspond une dfinition en terme de limite didentifiant rseau/hte ou autre etc.

Classe A: Toutes les adresses dont le premier bit vaut 0 (donc de 0.0.0.0 127.255.255.255). Ces adresses
ont 8 bits pour la partie rseau, et donc 24 pour la partie hte.
Classe B: Toutes les adresses dont les deux premiers valent 10 (donc de 128.0.0.0 191.255.255.255). Ces
adresses ont 16 bits pour la partie rseau, et donc 16 pour la partie hte.
Classe C: Toutes les adresses dont les trois premiers valent 110 (donc de 192.0.0.0 223.255.255.255).
Ces adresses ont 24 bits pour la partie rseau, et donc 8 pour la partie hte.
Classe D: Toutes les adresses dont les quattre premiers valent 1110 (donc de 224.0.0.0 239.255.255.255).
Ce sont les adresses multicast. Elles reprsentent une groupe de machine et nentrent donc pas dans la
logique dadresse dune machine unique.
Classe E: Toutes les adresses restantes (donc de 240.0.0.0 255.255.255.254). Adresses rserves pour
utilisation futures ou pas donc non utilisables pour adresser une machine.

Nous nous retrouvons donc avec 3 classes utilisables. La premire qui dfini des rseaux pouvant comporter 2^24
machines ( 16,7 millions de machines !!! ), la seconde qui permet dadresser des rseaux de 2^16 machines
(65536), et enfin la plus petite, qui permet elle dadresser des rseaux de 2^8 machines (256).

Faites une pause de quelques secondes, et demandez-vous combien de socits que vous connaissez disposent
de plus de 16 millions de machines ? Et environ 65000 machines ?

Il faut remettre tout a dans son contexte. IPv4 est apparu alors quInternet nexistait pas encore. A lpoque, ce qui
est maintenant le rseau des rseaux ntait quune interconnexion dtablissements militaires, universitaires etc,
nomm ARPAnet. Ce nest quune bonne dizaine dannes plus tard que les particuliers ont commenc tout
doucement disposer dun accs Internet.
Lide de base avait du sens: une socit forme un rseau de machines, donc, on attribuait une plage dadresses
plus ou moins grande en fonction de la taille de la socit. Donc si je suis un gant de linformatique de lpoque, je
reois une classe A, par exemple toutes les adresses de 23.0.0.0 23.255.255.255. Ds lors lorsquun paquet doit
tre transmis une machine, en fonctionne de ladresse de destination je peux dterminer la classe de celle-ci, et
donc savoir combien de bits reprsentent le rseau. Dans lexemple prcdent, cela signifie que toutes les adresses
dont le premier octet vaut 23 sont dans le mme rseau.

Cest donc un principe qui suivait la logique de lpoque mais qui manquait cruellement de vision. Quand laccs
Internet a commenc se dmocratiser, dabord pour les entreprises, et ensuite pour les particuliers, un problme
est apparu: il tait impossible de fournir suffisamment de plages dadresses et ce parce que les classes ont dcoup
lespace global dadresses IPv4 en des ensembles trop grossiers qui ne correspondent plus aux besoins.

Autre problme, mais celui-l inhrent IPv4, le nombre dadresse IPv4 disponible au total est insuffisant. 2^32
adresses au total, soit un peu moins de 4,3 milliards dadresses, pour lheure actuelle quelques 7 milliards dtres
humains. Si en plus on attribue les adresses par classe, gaspillant ainsi une quantit norme dadresses, on
comprend vite que a ne peut mener qu une impasse.
Si jattribue toutes les adresses de 23.0.0.0 23.255.255.255 une socit mais que celle-ci nen utilise que 10%,
cela reprsente approximativement 15 millions dadresses perdues puisquon ne peut pas donner une adresse
de cette classe une machine qui nest pas dans ce rseau. Cela reviendrait mettre le mme nom de rue des
maison qui ne sont pas physiquement dans la mme rue.

Le CIDR (Classless Inter-Domain Routing)

La seule chose faire tait donc dabandonner les classes de dfinir des rseaux dont la taille peut tre ajuste en

5/11
fonction des besoins rels afin dviter tant que faire se peut le gaspillage de ces adresses.
Si on abandonne les classes, on abandonne donc aussi la dfinition de leur taille en terme didentifiant rseau et
identifiant hte. Il faut donc un nouvel lment qui servira de dlimitation: le masque de rseau.

Masque de (sous-)rseau

Le masque est une valeur numrique qui comme ladresse IPv4 est cod sur 32bits et reprsent en dcimal sous
forme de 4 octets spars par des points. (Ex: 255.255.255.0, 255.255.224.0). Son rle est dindiquer quels sont les
bits de ladresse qui identifient la partie rseau et donc aussi ceux qui identifient la partie hte.
Les bits de poids fort ( gauche) reprsentent la partie rseau et ont leur valeur 1. Les bits de poids faible (
droite) ont leur valeur 0 et identifient la partie hte de ladresse.

Cest donc le masque du rseau qui dtermine sa taille, et donc le nombre dadresses qui font partie de ce rseau.
Plus le masque est grand (plus il y a de bits 1) plus le rseau est petit (il y a moins de bits ct hte). Plus le
masque est petit, plus le rseau est grand.

Prenons par exemple le masque suivant:

255.255.255.192

En binaire cela donne:

11111111.11111111.11111111.11000000

Il y a 26 bits 1, donc 26 bits qui identifient la partie rseau. Il en reste donc 32-26=6 bits pour les adresses htes,
soit 2^6=64.

Par contre avec le masque

255.255.224.0

Qui scrit en binaire

11111111.11111111.11100000.00000000

Il y a 19 bits ct rseau et donc 32-19=13 bits cts hte. Ce qui donne 2^13=8192 adresses dans un mme
rseau.

Une autre notation du masque est galement souvent utilise, en suivant le format suivant: adresse_ip /
bits_rseaux
Exemple: 21.58.63.250/26, cette notation revient crire 21.56.63.250 / 255.255.255.192

Au lieu dcrire lexpression dcile du masque, on indique uniquement

6/11
Avec le CIDR, une adresse seule na plus de sens. Elle doit toujours tre accompagne dun masque. Sans quoi il
est impossible de dterminer quel rseau elle appartient.

Ladresse de (sous-)rseau

A chaque rseau correspond une adresse qui lidentifie. Il sagit de la premire adresse du rseau lui mme. Celle
pour laquelle tous les bits htes vallent 0.
Une opration simple (un ET logique) entre une adresse quelconque et le masque qui lui est joint permet de
retrouver ladresse du rseau auquel elle appartient.

Prenons par exemple lexemple dune machine qui aurait la configuration suivante:

Adresse IPv4: 158.98.45.33


Masque rseau: 255.255.255.0

Lapplication dun ET logique (une opration binaire) entre ces deux valeurs donnent ladresse du rseau:

10011110.01100010.00101101.00100001 (158.98.45.33)
ET 11111111.11111111.11111111.00000000
(255.255.255.0)
=======================================
10011110.01100010.00101101.00000000 (158.98.45.0)

Ladresse du rseau dans lequel se trouve la machine est donc 158.98.45.0. Notez que si on tenait compte des
classes. Les adresses 158 commencent par 10 en binaire et donc auraient fait partie de la classe B 158.98.0.0.

Autre exemple:

Adresse IPv4: 89.27.250.45


Masque rseau: 255.255.255.248

On retrouve donc ladresse rseau de cette machine par lopration suivante:

01011001.00011011.11111010.00101101 (89.27.250.45)
ET 11111111.11111111.11111111.11111000
(255.255.255.248)
=======================================
01011001.00011011.11111010.00101000 (89.27.250.40)

Ladresse rseau de cette machine est donc 89.27.250.40

Il est important de noter que ladresse du rseau ne peut pas tre attribue une machine. Une machine est un
lment du rseau et non le rseau lui-mme.

Ladresse de diffusion (broadcast) du (sous-)rseau

Pour chaque rseau, il existe une adresse dite de diffusion (de broadcast). Cette adresse a pour but dmettre un
paquet et de ladresser lensemble des machines du rseau en question (Communication de un tous). Il sagit de
la dernire adresse du rseau. Celle pour laquelle tous les bits htes vallent 1.

7/11
Exemple:

Adresse: 121.43.98.205
Masque: 255.255.255.128

On obtient donc ladresse rseau par lopration logique ET (comme plus haut):

01111001.00101011.01100010.11001101 (121.43.98.205)
ET 11111111.11111111.11111111.10000000
(255.255.255.128)
========================================
01111001.00101011.01100010.10000000 (121.43.98.128)

Ladresse du rseau est donc 121.43.98.128.


A partir de l il suffit de mettre tous les bits htes, cest dire les 7 bits droite 1:

01111001.00101011.01100010.11111111
(121.43.98.255)

Ladresse broadcast de ce rseau est donc 121.43.89.255.

Plage dadresses utilisables

Puisque ladresse du rseau est la premire adresse dans ce rseau et que ladresse broadcast est la dernire.
Tout ce qui se trouve entre les deux forme la plage dadresses utilisables.
On obtient le nombre dadresses utilisable dans un rseau par la formule suivante: nb adresses = 2^n-2, o n est
le nombre de bits htes. On soustrait deux units pour ladresse du rseau et ladresse broadcast.

Exemple rcapitulatif

Les donnes de bases tant les suivantes:

Adresse: 188.56.58.39
Masque: 255.255.248.0

On optient ladresse rseau en appliquant le masque ladresse

10111100.00111000.00111010.00100111 (188.56.58.39)
ET 11111111.11111111.11111000.00000000
(255.255.248.0)
========================================
10111100.00111000.00111000.00000000 (188.56.56.0)

Ladresse rseau est donc 188.56.56.0

Pour obtenir ladresse broadcast, il faut remplacer mettre les bits htes 1

8/11
10111100.00111000.00111111.11111111
(188.56.63.255)

Ladresse broadcast est donc 188.56.63.255

Les adresses comprises entre 188.56.56.0 et 188.56.63.255 forment donc la plage dadresses utilisables.
Leur nombre est de 2^11-2 = 2046 adresses.

Routage IPv4
Router un paquet consiste lacheminer vers la destination en fonction de sa table de routage. Cette table contient
la liste des rseaux vers lesquels elle est apte acheminer les donnes ainsi que les informations ncessaires au
traitement du paquet.

Table de routage

La table de routage est une liste de routes, cest--dire, une liste de rseaux auxquels sont attachs les informations
ncessaires au routage du paquet: un next-hop (la prochaine machine qui le paquet doit tre transmis), une
interface (celle par laquelle le paquet devra tre mis), une mtrique (une valeur permettant de comparer deux
routes), etc.

exemple de table de routage sous Windows 7

IPv4 Table de routage


===========================================================================
Itinraires actifs :
Destination rseau Masque rseau Adr. passerelle Adr. interface
Mtrique
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.9
10
127.0.0.0 255.0.0.0 On-link 127.0.0.1
306
127.0.0.1 255.255.255.255 On-link 127.0.0.1 306
127.255.255.255 255.255.255.255 On-link 127.0.0.1 306
192.168.1.0 255.255.255.0 On-link 192.168.1.9 266
192.168.1.9 255.255.255.255 On-link 192.168.1.9 266
192.168.1.255 255.255.255.255 On-link 192.168.1.9 266
224.0.0.0 240.0.0.0 On-link 127.0.0.1
306
224.0.0.0 240.0.0.0 On-link 192.168.1.9
266
255.255.255.255 255.255.255.255 On-link 127.0.0.1 306
255.255.255.255 255.255.255.255 On-link 192.168.1.9 266
===========================================================================

Destination rseau: Ladresse du rseau de destination.


Masque rseau: Dtermine la taille du rseau en question.
Adresse passerelle: L4adresse IPv4 de la machine qui le paquet doit tre transmis pour lacheminer vers
le rseau en question.

9/11
Adresse Interface: Ladresse de linterface par laquelle le paquet devra tre mis/rout.
Mtrique: permet de choisir en plusieurs routes qui indiquerait la mme destination.

Exemple de table de routage sur un routeur Cisco

Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B -


BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter
area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route

Gateway of last resort is 10.0.0.1 to network 0.0.0.0

10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks


C 10.0.0.0/30 is directly connected, Serial0/0
O 10.0.10.0/24 [110/782] via 10.0.0.1, 00:53:35, Serial0/0
192.168.0.0/30 is subnetted, 1 subnets
C 192.168.0.0 is directly connected, FastEthernet0/0
192.168.1.0/24 is variably subnetted, 3 subnets, 2 masks
C 192.168.1.0/28 is directly connected, FastEthernet0/0.10
C 192.168.1.16/28 is directly connected, FastEthernet0/0.20
C 192.168.1.32/29 is directly connected, FastEthernet0/0.30
O*E2 0.0.0.0/0 [110/1] via 10.0.0.1, 00:50:51, Serial0/0

Lorsquon y est pas habitu, cet affichage put perturber. Ceci dit, chaque route est prcde dun symbole. Dans le
cas prsent, les routes commenant par un C indiquent une route directement connecte. Donc un rseau
directement attach au routeur (dans Windows 7, on le voit avec la mention On-link ).
Les routes commenant par O sont des routes apprises laide dun protocole de routage, OSPF. Ce sont des
routes vers des rseaux qui se trouvent au-del dune autre machine.

Pour chacun de ces routes on a donc un format du genre:

ORIGINE Rseau/Masque [AD/Mtrique] next-hop


Interface

Le terme AD reprsente la distance administrative. Il sagit dune notion que lon retrouve surtout sur les
routeurs Cisco. Cette lment permet lui aussi de diffrencier des routes. Chaque source dinformation aura sa
distance administrative. Par exemple une route connecte a une AD=0, une route statique AD=1, une route OSPF
AD=110, etc. (valeurs par dfaut).

Pour plus dexplication concernant les tables de routage, je vous invite lire cet article: Table de routage
Comment a marche?

VN:F [1.9.22_1171]
traitement en cours...
Rating: 9.0/10 (12 votes cast)
Protocole IPv4 : Les bases, 9.0 out of 10 based on 12 ratings
10/11
2017 Default copyright text

11/11

Вам также может понравиться