AccueilCCNACCNA coursIP ou le petit village du sud-ouest?

IP ou le petit village du sud-ouest ?

Dans ce cha­pitre on va décor­ti­quer l’en­tête IP ver­sion 4 qui appar­tient à la couche 3 du modèle OSI ou aus­si appe­lé couche réseau.

A quoi sert l’adresse IP ?

Ah la bonne question !

J’en vois cer­tains me deman­der pour­quoi on a besoin d’une adresse IP alors que les cartes réseaux des PC et des ser­veurs ont des iden­ti­fiants qu’on appelle adresse MAC ?

Il est vrai que ces équi­pe­ments ont déjà des iden­ti­fiants uniques qui dans la tech­no­lo­gie Ether­net sont les adresses MAC. Le hic est qu’E­ther­net est une tech­no­lo­gie qui per­met de faire de la com­mu­ta­tion de trame Ether­net uni­que­ment loca­le­ment. C’est à dire qu’une trame Ether­net (avec son adresse MAC source et adresse MAC des­ti­na­tion) ne tra­verse pas les équi­pe­ments niveau 3, soit le routeur.

Il nous faut donc trou­ver un autre type d’a­dresse (et donc un nou­veau pro­to­cole) pour pou­voir joindre le PC qui se trouve à l’autre bout de la pla­nète et qui est sépa­ré par des routeurs.

Fai­sons le point sur ce qu’on souhaite :

  • Il nous faut un iden­ti­fiant unique au niveau mon­dial pour pou­voir envoyer du tra­fic n’im­porte où mais aus­si être joint par n’im­porte qui
  • Il faut que cet iden­ti­fiant soit com­pris par les équi­pe­ments inter­mé­diaires, les rou­teurs. Sinon ça ne sert pas à grand chose…
  • Vu le nombre d’équipements réseau (PC, ser­veurs, impri­mante, télé­phone por­table…), il nous faut un grand nombre d’identifiants !
  • Comme il existe plu­sieurs tech­no­lo­gies niveau 2 comme Ether­net, Frame-Relay, ATM, MPLS… il faut que l’i­den­ti­fiant puisse être com­pa­tible qu’im­porte ce qu’il y a en des­sous. Pour rap­pel, ima­gi­nez la couche 2 comme un wagon de train dont la taille est variable en fonc­tion des technologies
Suite à ce constat, plu­sieurs pro­to­coles de couche 3 ont été créés dont IPX, Apple­Talk et bien sûr IP. Cha­cun a son propre adres­sage et per­met de com­mu­ni­quer entre des PC, des ser­veurs, quelque soit la couche 2 du des­sous (le fameux wagon).
Même si c’est IP qui est domi­nant aujourd’­hui, pour le CCNA rete­nez tout de même l’exis­tence de ces autres pro­to­coles, ça peut être une question. 

Définition de l’entête IP

Comme chaque entête, celui d’IP com­porte des champs que nous allons détailler ici. Tout d’a­bord, l’en­tête est codé par bloc de 32 bits, c’est pour cela qu’on repré­sente l’en­tête en une suc­ces­sion de lignes de 32 bits (c’est aus­si simple que ça:) )

Voi­ci l’ex­pli­ca­tion de chaque champ :

  • Ver­sion : pré­cise si c’est un entête IP ver­sion 4 ou ver­sion 6
  • Long : défi­nit la lon­gueur de l’en­tête. Atten­tion cette valeur peut évo­luer si on rajoute des options dans le champ du même nom
  • TOS/Type of Ser­vice : champ dédié à la dif­fé­ren­tia­tion du tra­fic, très utile pour mettre en place de la qua­li­té de ser­vice dans un réseau. Par exemple prio­ri­ti­ser la voix à la don­nées. On en repar­le­ra dans un cha­pitre dédié
  • Lon­gueur data­gramme : lon­gueur de l’en­tête ET des Données
  • Iden­ti­fi­ca­tion : iden­ti­fiant qui per­met de numé­ro­ter les frag­ments d’un même paquet
  • Drapeau/flag : per­met de pré­ci­ser si le paquet est frag­men­té ou si au contraire on inter­dit la fragmentation
  • Place du frag­ment : posi­tion du frag­ment par rap­port au pre­mier frag­ment du paquet 
  • Durée de vie/TTL : ce champ est décré­men­té à chaque fois que le paquet IP tra­verse un rou­teur. Quand le TTL arrive à 0, le paquet est sup­pri­mé. Ça per­met d’é­vi­ter qu’un paquet se bal­lade indé­fi­ni­ment dans un réseau (on appelle ça une boucle de rou­tage, on ver­ra cette notion dans un cha­pitre dédié)
  • Pro­to­cole : iden­ti­fie le pro­to­cole de la couche supé­rieure (couche trans­port). Donc ce sera très sou­vent TCP ou UDP
  • Check­sum : per­met de véri­fier que les don­nées de l’en­tête n’ont pas été cor­rom­pues. Si c’est le cas, le paquet est supprimé
  • Adresse source : adresse IP de celui qui envoi le paquet
  • Adresse des­ti­na­tion : adresse IP du des­ti­na­taire du paquet
  • (Options): option­nel
  • Données/payload : tout ce qui a au des­sus de l’en­tête IP, c’est à dire les entêtes des couches 4, 5, 6 et 7 et les don­nées de l’utilisateur

Décomposition de l’adresse IP

Main­te­nant que l’en­tete est clair dans votre tete, la notion impor­tante est bien évi­dem­ment l’adresse IP (source et/ou destination).

Une adresse IP se com­pose en 32 bits (je vois sur le tableau pré­cé­dent que le champ « adresse source » ou « adresse des­ti­na­tion » prend toute la ligne, donc c’est bien 32 bits) et s’écrit sous forme de 4 octets en déci­mal (1 octet = 8 bits). Par exemple : 10.1.103.253

Chaque octet (le 10, le 1, le 103 ou le 253) peut avoir comme valeur pos­sible : 0, 1, 2,3 … jusqu’à 255 !

En fai­sant un cal­cul rapide, on a alors envi­ron 4 mil­liards de com­bi­nai­sons pos­sibles (2 expo­sant 32). Pour exact, le nombre est 4 294 967 296 !

Cli­quer sur l’i­mage pour la sau­ve­gar­der sur votre PC

Pour sim­pli­fier, on a créé des groupes d’a­dresses IP qu’on appelle « classe A, B, C, D ou E » et qui englobe toutes les pos­si­bi­li­tés d’a­dresses IP. Chaque classe est plus ou moins grande dans le sens où elle contient plus ou moins d’a­dresses IP.

Définition des classes

Voi­ci la répar­ti­tion des adresses IP par classe :

Il est pri­mor­dial de connaitre ces classes pour le CCNA, je sais c’est pas fun d’ap­prendre par coeur ces valeurs mais vous allez sur­ement avoir une ques­tion la des­sus (genre, l’a­dresse IP 23.64.34.95 appar­tient a quelle classe ?).

Sachez aus­si que cette notion de classe est obso­lète aujourd’­hui mais il impor­tant de com­prendre le méca­nisme, sur­tout pour l’examen.

Masque de réseau

Alors pour­quoi a‑t-on créé des classes ?

Ima­gi­nons que j’ai l’a­dresse 192.1.1.1 –> avec le tableau ci des­sus je sais que mon adresse fait par­tie de la classe C. Avec ça, je suis bien avancé… 🙂

En fait, ce qui est impor­tant est qu’à chaque classe est asso­ciée une valeur appe­lée « masque de réseau » qui defi­nit dans quel réseau mon adresse IP appar­tient. Et oui, c’est bien d’a­voir une adresse IP, c’est mieux de savoir dans quel réseau je suis et avec qui je peux communiquer.

Comme à l’e­poque, les orga­nismes ne savaient pas que pro­to­cole IP allait avoir autant de suc­cès, ils ont défi­ni des masques par défaut de la manière suivante :

  • pour une classe A, le masque est 255.0.0.0 (ou /8) et donc n’im­porte quel réseau de cette classe contient 16 mil­lions d’a­dresses IP !
  • pour une classe B, le masque est 255.255.0.0 (ou /16) et donc n’im­porte quel réseau de cette classe contient 65 536 d’a­dresses IP !
  • pour une classe C, le masque est 255.255.255.0 (ou /24) et donc n’im­porte quel réseau de cette classe contient 255 adresses IP (là c’est deja plus réaliste 🙂 )
Pour les classes D et E, il n’y en a pas parce que :
  • classe D : réser­vée pour faire du mul­ti­cast. Aller faire un tour ici pour com­prendre la notion d’a­dresse mul­ti­cast. Un autre cha­pitre sera dédié au pro­to­cole de rou­tage multicast
  • classe E : réser­vée et non uti­li­sable (phase de test et/ou non déterminé)
Pour le cal­cul du masque et le nombre d’a­dresses IP conte­nu dans un réseau, on ver­ra ça dans un pro­chain chapitre.
Cli­quer sur l’i­mage pour la sau­ve­gar­der sur votre PC

L’exemple avec le petit village du sud-ouest…

Pre­nons un exemple concret car j’en vois déjà cer­tains qui me regardent bizarrement 🙂

  • Assi­mi­lez la classe à un type de ville (petit vil­lage, moyenne ville, grande métropole…)
  • Assi­mi­lez un réseau de cette classe à un nom de ville (Paris, Tou­louse, Lille…)
  • Assi­mi­lez l’adresse IP qui appar­tient à ce reseau à une adresse pos­tale (13 rue Dupont)

Si je prend l’a­dresse pos­tale sui­vante : 13 rue dupont à Saint-felix-lau­ra­gais dans le Sud-Ouest. « Tra­dui­sons là » en terme pure­ment réseau :

  • c’est un petit vil­lage (car besoin de peu d’a­dresses) –> classe C (255.255.255.0 ou /24 soit 256 adresses possibles)
  • saint-felix-lau­ra­gais –> nom du réseau (par exemple 192.168.1.0)
  • 13 rue Dupont –> c’est l’a­dresse IP (par exemple 192.168.1.23)

Au final, on n’a pas réin­ven­té la roue, on change uni­que­ment la nomenclature.

Une adresse IP, c’est notre adresse pos­tale (13 rue Dupont) et pour savoir dans quelle ville on se trouve, le masque est là pour nous aider. C’est aus­si simple que ça.

A retenir pour le CCNA

Alors pas mal de chose à rete­nir dans cette pre­miere par­tie sur le pro­to­cole IP :

  • Une adresse IP per­met de tra­ver­ser les dif­fé­rentes tech­no­lo­gies niveau 2. Et c’est grâce à ça qu’In­ter­net existe
  • connaitre les dif­fé­rents champs de l’entête IP
  • Une adresse IP ver­sion 4 est codée sur 32 bits, par bloc d’oc­tet, soit 4 blocs de 8 bits chacun
  • connaitre le tableau des classes A, B, C, D et E
  • connaitre les masques asso­ciés a chaque classe
Il nous reste à voir les notions d’a­dresse publique/pri­vée, masque de réseau/sous-réseau, cal­cul d’a­dresse de réseau/broad­cast… mais ce sera dans les pro­chains chapitres !

7 Commentaires

  1. Bon­jour à vous ;
    Mer­ci pour votre site fort utile et qui aide à construire son nid petit à petit.
    Je vou­drai com­prendre la dif­fé­rence entre un masque de sous-réseau et un préfixe.
    Mer­ci de me répondre.
    Salim d’Alger.

  2. Bon­jour,

    Article très clair. A la fin du parle du cha­pitre masque de réseau/­sous-réseau.

    J’ai­me­rai le consul­ter mais je ne le trouve pas.

    clt

  3. Un petit moyen mné­mo­tech­nique de se sou­ve­nir des dif­fé­rentes classes au lieu d’ap­prendre par cœur le tableau :

    à l’i­mage des bits dans un octet d’a­dresse IP (128,64,32,16,8,4,2,1) :

    Classe A : com­mence par 0 (0.0.0.0) / Pour la fin on prend tou­jours l’oc­tet juste avant le début de l’autre (127.255.255.255)
    Classe B : Puis on ajoute 128 (128.0.0.0) / (191.255.255.255) – Juste avant 192
    Classe C : Puis on ajoute 64 (192.0.0.0) / (223.255.255.255) – Juste avant 224
    Classe D : Puis on ajoute 32 (224.0.0.0) / (239.255.255.255) – Juste avant 240
    Classe E : Puis on ajoute 16 (240.0.0.0) / (255.255.255.255)

    Mer­ci pour les expli­ca­tions simples de ton blog.

  4. Il n’y a pas de doute, ces petits sché­mas logiques apportent tou­jours une belle vue d’en­semble sur le sujet.

    Etant un peu puriste sur les bords, la seule chose qui me cha­touille dans tes expli­ca­tions, c’est le terme « datagramme ».

    Dans la RFC1594, un data­gramme est défi­nit comme suit :

    “A self-contai­ned, inde­pendent enti­ty of data carrying
    suf­fi­cient infor­ma­tion to be rou­ted from the source
    to the des­ti­na­tion com­pu­ter without reliance on earlier
    exchanges bet­ween this source and des­ti­na­tion com­pu­ter and
    the trans­por­ting network.”

    Le terme data­gramme devrait nor­ma­le­ment n’i­den­ti­fier que les paquets fai­sant par­tie d’un échange de don­né « non fiable » … comme de l’UDP.

    Je dirais donc … que tout data­gramme est un paquet, mais tout paquet n’est pas un datagramme 😉

    Bon, je l’a­voue, le coupe le che­veux en quatre 🙂

    • En effet, la dif­fé­rence entre paquet et data­gramme est claire dans les RFC (« Request For Com­ment » pour ceux qui ne sau­raient pas). Mal­heu­reu­se­ment aujourd’­hui ces deux termes sont assez mélan­gés et il arrive que dans la plu­part des docu­ments offi­ciels, on mélange les deux.
      Mais au final, rien bien de grave, tant qu’on assi­mile bien un paquet (ou data­gramme) a la couche 3 du modèle OSI, c’est l’essentiel 🙂

      En tout cas, mer­ci beau­coup sur tes pré­ci­sions qui sont impor­tantes pour les puristes 🙂

Répondre à scsc81 scsc81 Annuler la réponse

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici

Les plus populaires