Approfondissement aux Réseaux Informatiques : Comprendre l'IPv4

Approfondissement aux Réseaux Informatiques : Comprendre l'IPv4

Cet article fait suite aux articles Introduction aux Réseaux Informatiques : Comprendre les Bases , Qu'est-ce que le Protocole TCP/IP et Comment Fonctionne-t-il ? et Approfondissement aux Réseaux Informatiques : Comprendre le binaire. Si vous ne les avez pas encore lus, il est conseillé de les lire afin de mieux comprendre celui-ci.

L'IPv4 (Internet Protocol version 4) est l'une des technologies fondamentales d'Internet et des réseaux. C'est grâce à ce protocole que les appareils communiquent entre eux en s'envoyant des données via des adresses uniques. Dans cet article, nous allons explorer l'IPv4 en détail, en expliquant ce qu'il est, comment il fonctionne, et pourquoi il est si crucial pour les réseaux informatiques, même si l'arrivée de son successeur, l'IPv6, commence à le remplacer progressivement.

Qu'est-ce que l'IPv4 ?

L'IPv4 est la quatrième version du protocole Internet, et c'est celle qui est actuellement la plus utilisée. Le protocole Internet (IP) permet de transporter des données sous forme de paquets à travers différents réseaux, et chaque appareil connecté à un réseau utilisant l'IPv4 se voit attribuer une adresse IP unique.

Structure d'une adresse IPv4

Une adresse IPv4 est constituée de 32 bits, ce qui permet de générer environ 4,3 milliards d'adresses uniques (2^32). Ces adresses sont généralement représentées sous forme de quatre nombres décimaux compris entre 0 et 255, séparés par des points. Voici un exemple d'adresse IPv4 :

Comment Fonctionne l'IPv4 ?

Le rôle principal de l'IPv4 est de router les paquets de données d'un appareil à un autre à travers un réseau. Voici les étapes principales du fonctionnement de l'IPv4 :

  1. Attribution de l'adresse IP : Chaque appareil connecté à Internet ou à un réseau local se voit attribuer une adresse IPv4. Cela peut se faire de manière statique (adressage manuel) ou dynamique (via un serveur DHCP).
  2. Encapsulation des données en paquets : Lorsque vous envoyez des données (comme un email ou une requête web), celles-ci sont divisées en petits morceaux appelés paquets. Chaque paquet contient :
    • Les données à envoyer.
    • L’adresse IP de l'expéditeur.
    • L’adresse IP du destinataire.
    • Un en-tête qui contient des informations importantes comme la longueur du paquet et son numéro de séquence (pour permettre la reconstitution des données à l'arrivée).
  3. Acheminement des paquets via le réseau : Les paquets sont acheminés à travers des routeurs, qui utilisent les adresses IP pour diriger chaque paquet vers sa destination. Chaque routeur examine l'adresse de destination et détermine le chemin optimal pour l'atteindre.
  4. Réception et réassemblage : Une fois que les paquets atteignent leur destination, ils sont réassemblés en fonction des informations de l'en-tête, et les données originales sont reconstituées et lues par l'application.

Types d'Adresses IPv4

Les adresses IPv4 peuvent être classées en différentes catégories selon leur usage. Il existe trois types d'adresses principaux :

  1. Adresses publiques :
    • Ces adresses sont utilisées pour identifier de manière unique un appareil sur Internet. Elles sont attribuées par des organismes comme l'IANA (Internet Assigned Numbers Authority).
    • Exemple : 203.0.113.5
  2. Adresses privées :
    • Elles sont utilisées pour les réseaux locaux (LAN) et ne sont pas routées sur Internet. Ces adresses permettent aux appareils d'un réseau local de communiquer entre eux.
    • Les plages d'adresses privées les plus courantes sont :
      • 192.168.0.0 à 192.168.255.255
      • 10.0.0.0 à 10.255.255.255
      • 172.16.0.0 à 172.31.255.255
    • Exemple : 192.168.1.10 (typique d’un réseau domestique)
  3. Adresses de bouclage (loopback) :
    • Ces adresses sont utilisées pour tester les interfaces réseau d’un appareil localement, sans utiliser le réseau physique.
    • L'adresse la plus courante est 127.0.0.1 (souvent appelée localhost).

Classes d'Adresses IPv4

Les adresses IPv4 sont également classées en plusieurs classes, définies par les premiers bits de l'adresse. Ces classes étaient initialement utilisées pour diviser les adresses en groupes de tailles différentes. Voici les classes principales :

Masques de Sous-Réseau

Un masque de sous-réseau est une combinaison de 32 bits utilisée pour diviser un réseau en sous-réseaux plus petits. Cela permet de mieux gérer les adresses IP au sein d'un réseau local. Le masque de sous-réseau détermine quelle partie d'une adresse IP est utilisée pour le réseau (NetID), et quelle partie identifie un appareil (HostID).

Qu'est-ce que le NetID ?

Le NetID (Network Identifier) est la partie d'une adresse IPv4 qui identifie un réseau spécifique. Toutes les adresses IP dans un même réseau auront le même NetID, ce qui permet de regrouper plusieurs appareils dans un seul réseau local ou étendu.

Par exemple, si vous avez l'adresse IP 192.168.1.10/24, le NetID est 192.168.1, car ce réseau utilise un masque de sous-réseau de 24 bits (255.255.255.0), qui indique que les trois premiers octets (24 bits) représentent la partie réseau.

Dans ce cas, toutes les adresses IP qui commencent par 192.168.1 appartiendront au même réseau local. Cela signifie que, par exemple, les adresses 192.168.1.5 et 192.168.1.100 font partie du même réseau.

Qu'est-ce que le HostID ?

Le HostID (Host Identifier) est la partie d'une adresse IPv4 qui identifie un appareil unique (ou hôte) sur le réseau. C'est ce qui permet de différencier les appareils au sein d'un même réseau.

Dans l'exemple précédent 192.168.1.10/24, le HostID est 10, car il est localisé dans le dernier octet de l'adresse IP. Le NetID, lui, étant déjà défini par les 24 premiers bits (192.168.1), le dernier octet (10) est utilisé pour identifier l'appareil spécifique au sein du réseau.

Le nombre d'adresses hôtes disponibles dans un réseau dépend de la longueur du masque de sous-réseau. Par exemple, dans un réseau utilisant le masque 255.255.255.0 (ou /24), il y a 256 adresses possibles (de 192.168.1.0 à 192.168.1.255), dont deux adresses spéciales :

  • 192.168.1.0 est réservée pour identifier le réseau lui-même (NetID).
  • 192.168.1.255 est réservée pour les broadcasts, qui permettent d'envoyer des messages à tous les appareils du réseau.

Masque de Sous-Réseau et Séparation NetID/HostID

Le masque de sous-réseau (ou subnet mask) détermine la taille du NetID et du HostID dans une adresse IPv4. Il est exprimé sous forme de 32 bits, avec un certain nombre de bits affectés au NetID et le reste affecté au HostID.

Voici comment un masque de sous-réseau fonctionne :

  • Les bits du NetID sont représentés par des 1 dans le masque de sous-réseau.
  • Les bits du HostID sont représentés par des 0 dans le masque de sous-réseau.

Prenons un exemple pratique :

Adresse IP : 192.168.1.10
Masque de sous-réseau : 255.255.255.0 (ou /24)

En binaire, cela donne :

Adresse IP :         10101100.00010000.00000000.00000101
Masque de sous-réseau : 11111111.11111111.00000000.00000000

Le masque de sous-réseau peut être exprimé de deux manières : soit en notation décimale pointée (par exemple, 255.255.0.0), soit en notation CIDR. La notation CIDR est plus compacte et se présente sous la forme /n, où n représente le nombre de bits à 1 dans le masque de sous-réseau.

Exemple de Conversion en CIDR

Prenons le masque de sous-réseau 255.255.0.0 :

  • En binaire, ce masque de sous-réseau est :
11111111.11111111.00000000.00000000
  • Il contient 16 bits à 1, ce qui signifie que les 16 premiers bits sont utilisés pour le NetID (la partie réseau), et les bits restants sont utilisés pour identifier les hôtes (les appareils sur le réseau).

Ainsi, en notation CIDR, ce masque de sous-réseau s’écrit /16. Cela signifie que les 16 premiers bits de l'adresse IP identifient le réseau, et les 16 bits restants sont utilisés pour les hôtes du réseau.

Règle pour la Construction d'un Masque de Sous-Réseau

Il est important de comprendre qu’un masque de sous-réseau est une série contiguë de bits à 1, suivie de bits à 0, partant de la gauche vers la droite. En d'autres termes, les bits à 1 doivent toujours commencer à gauche et être suivis uniquement de bits à 0. Il n'est pas possible d'avoir un masque de sous-réseau où les bits à 1 et les bits à 0 sont mélangés de manière non contiguë.

Exemple de Masque de sous-réseau valide

Un masque de sous-réseau valide pourrait être :

11111111.11111111.00000000.00000000

En décimal, cela donne 255.255.0.0, et en notation CIDR, cela s’écrit /16 (car les 16 premiers bits sont à 1).

Exemple de Masque de sous-réseau non valide

Un exemple de masque non valide serait :

11111111.10111111.00000000.00000000

Ce masque n'est pas valide car les bits à 1 ne sont pas continus. Après le premier bloc de 1, il y a un 0, suivi à nouveau par des 1, ce qui n'est pas autorisé dans un masque de sous-réseau.

Exemple de Réseaux et Subnetting

Les masques de sous-réseau permettent également de diviser un réseau en sous-réseaux plus petits, appelés subnets, ce qui est très utile pour optimiser l'utilisation des adresses IP dans des réseaux plus larges.

Prenons un autre exemple :

Adresse IP : 172.16.0.5
Masque de sous-réseau : 255.255.0.0 (ou /16)

En binaire, cela donne :

Adresse IP :            (netid:10101100.00010000).(hostid:00000000.00000101)
Masque de sous-réseau : (netid:11111111.11111111).(hostid:00000000.00000000)

Dans ce cas :

  • Les 16 premiers bits représentent le NetID (172.16).
  • Les 16 derniers bits représentent le HostID, qui permet d'identifier jusqu'à 65 536 appareils uniques (2^16 - 2 adresses réservées pour le réseau et les broadcasts).

Cela illustre comment des masques de sous-réseau plus petits peuvent être utilisés pour gérer de plus grands réseaux avec davantage d'appareils.

En conclusion

Le NetID et le HostID sont deux concepts essentiels pour comprendre le fonctionnement des adresses IPv4 et des réseaux. Le NetID identifie le réseau dans lequel se trouvent les appareils, tandis que le HostID permet de différencier les appareils à l'intérieur du réseau. Le masque de sous-réseau est la clé qui permet de séparer ces deux parties dans une adresse IP, et il joue un rôle crucial dans l'organisation et la gestion des réseaux.

Grâce à ces concepts, vous devriez maintenant mieux comprendre comment les adresses IPv4 fonctionnent et comment les réseaux sont structurés. Si vous souhaitez aller plus loin, vous pouvez explorer des sujets tels que le subnetting avancé ou la transition vers IPv6, qui offre une structure d'adressage encore plus flexible.

Le ET logique et son rôle pour déterminer un réseau à partir de son adresse IP et de son masque de sous-réseau

Dans les réseaux informatiques, pour identifier précisément à quel réseau appartient une adresse IP, on utilise une opération appelée ET logique (ou AND en anglais). Cette opération se fait entre une adresse IP et un masque de sous-réseau. Cela permet d'extraire le NetID de l'adresse IP, qui identifie le réseau auquel appartient l'appareil.

Voyons en détail ce que cela signifie et comment cela fonctionne.

L'opération de ET logique

L'opération de ET logique est une opération binaire qui compare deux bits à la fois. Elle suit des règles simples :

Autrement dit, l'opération ET logique ne retourne un 1 que si les deux bits sont à 1, sinon elle retourne 0.

Dans le contexte des réseaux, cette opération est utilisée pour déterminer l'adresse du réseau en combinant l'adresse IP avec le masque de sous-réseau.

Comment Utiliser le ET logique pour Trouver un Réseau

Pour trouver l'adresse réseau d'une adresse IP donnée, on effectue un ET logique entre l'adresse IP et le masque de sous-réseau associé. Le résultat de cette opération est le NetID, ou adresse du réseau.

Prenons un exemple concret pour illustrer cela.

Exemple

Adresse IP : 192.168.1.10
Masque de sous-réseau : 255.255.255.0 (ou /24)

Convertissons les adresses en binaire :

  • Adresse IP : 192.168.1.10 en binaire devient :
11000000.10101000.00000001.00001010

Masque de sous-réseau : 255.255.255.0 en binaire devient :

11111111.11111111.11111111.00000000

Effectuons l'opération de ET logique :

  11000000.10101000.00000001.00001010 (Adresse IP)
  11111111.11111111.11111111.00000000 (Masque de sous-réseau)
  -----------------------------------
  11000000.10101000.00000001.00000000 (Résultat : NetID)

Résultat en décimal : Ce qui correspond à 192.168.1.0 en décimal.

Conclusion : L'adresse réseau de 192.168.1.10/24 est 192.168.1.0.

Limites de l'IPv4 : L'Épuisement des Adresses

L'une des principales limites d'IPv4 est son espace d'adressage limité. Avec seulement 4,3 milliards d'adresses disponibles, l'augmentation rapide du nombre d'appareils connectés à Internet (ordinateurs, téléphones, objets connectés, etc.) a entraîné une pénurie d'adresses IPv4.

Pour pallier ce problème, plusieurs solutions ont été mises en œuvre :

  • Le NAT (Network Address Translation) : Il permet à plusieurs appareils d'un réseau privé (comme dans un foyer) de partager une seule adresse IP publique.
  • IPv6 : La sixième version du protocole IP a été développée pour remplacer IPv4. Elle offre un espace d'adressage beaucoup plus large (2^128 adresses possibles) et permet ainsi de connecter un nombre presque illimité d'appareils.

Pourquoi l'IPv4 est-il Toujours Utilisé ?

Malgré l'épuisement des adresses IPv4, ce protocole reste largement utilisé pour plusieurs raisons :

  • Compatibilité : De nombreuses infrastructures réseau existantes sont construites autour d'IPv4. Il est donc difficile de passer entièrement à IPv6 du jour au lendemain.
  • Transition progressive : Des technologies comme le dual-stack permettent aux appareils de fonctionner à la fois avec IPv4 et IPv6, facilitant la transition vers IPv6 sans nécessiter une rupture complète avec IPv4.

Conclusion

L'IPv4 reste une technologie clé pour la communication sur Internet, malgré ses limites d'adressage. Il permet aux appareils de communiquer à travers des réseaux locaux et mondiaux en utilisant des adresses uniques et un système fiable de routage des paquets de données. Avec la croissance exponentielle des appareils connectés, l'avenir se tourne vers IPv6, mais IPv4 continuera de jouer un rôle crucial dans les réseaux pendant encore plusieurs années.