IPAddress-Lookup.com

Explication du découpage en sous-réseaux et de la notation CIDR (avec des exemples)

IPAddress-Lookup.com ·

Si vous vous êtes déjà retrouvé à fixer une adresse telle que 192.168.1.0/24 et que vous vous êtes demandé ce que signifiaient réellement cette barre oblique et ce nombre, vous êtes exactement au bon endroit. Le sous-réseautage et la notation CIDR sont au cœur de la conception, de la sécurisation et du routage des réseaux modernes, mais ce sujet a la réputation d’être intimidant. Cela n’a pourtant pas lieu d’être. Une fois que vous aurez compris qu’une adresse IP n’est en réalité qu’une suite de bits, et qu’un masque de sous-réseau vous indique simplement où s’arrête la partie « réseau » et où commence la partie « hôte », tout le reste s’éclaircira. Dans ce guide, nous allons construire ce concept à partir des principes fondamentaux, étudier en détail plusieurs exemples concrets et vous fournir une fiche de référence que vous pourrez garder à portée de main, près de votre clavier. Tout au long de ce guide, vous pourrez vérifier vous-même chaque calcul à l’aide de notre outil « Calculateur de sous-réseau ».

Qu’est-ce qu’un sous-réseau, et pourquoi procède-t-on au découpage en sous-réseaux ?

Un sous-réseau, abréviation de « sous-réseau », est une subdivision logique d’un réseau IP plus vaste. Au lieu de placer chaque appareil sur un immense réseau plat, les ingénieurs divisent cet espace d’adressage en blocs plus petits et autonomes. Chaque bloc constitue un sous-réseau doté de sa propre plage d’adresses, de sa propre adresse réseau et de sa propre adresse de diffusion. Les routeurs acheminent le trafic entre les sous-réseaux, tandis que les appareils au sein d’un même sous-réseau peuvent communiquer directement entre eux sans passer par un routeur.

Le découpage en sous-réseaux n’est pas une tâche superflue. Plusieurs raisons concrètes expliquent pourquoi les réseaux sont divisés de cette manière :

  • Efficacité et économie d’adresses. Attribuer à une organisation un seul bloc géant revient à gaspiller des adresses. Le sous-réseautage permet d’allouer exactement le nombre d’adresses dont un service, un étage ou une succursale a réellement besoin, plutôt que d’arrondir à la classe supérieure la plus proche.
  • Des domaines de diffusion plus petits. Certains types de trafic, tels que les requêtes ARP, sont diffusés vers tous les hôtes d’un sous-réseau. Sur un réseau plat comptant des milliers de périphériques, ce trafic devient paralysant. La division en sous-réseaux permet de maintenir chaque domaine de diffusion à une taille réduite et de préserver la rapidité du réseau.
  • Segmentation de sécurité. En plaçant les serveurs, le Wi-Fi pour les visiteurs et les postes de travail internes sur des sous-réseaux distincts, vous pouvez appliquer des règles de pare-feu et des listes de contrôle d’accès entre eux. Un appareil d’un visiteur compromis ne peut pas accéder à un serveur de base de données si les deux se trouvent sur des sous-réseaux isolés.
  • Routage plus simple et plus rapide. Les routeurs prennent leurs décisions en fonction des préfixes réseau. Des sous-réseaux bien conçus peuvent être regroupés en une seule route, ce qui réduit la taille des tables de routage et accélère les décisions de transfert sur Internet.

Petit rappel sur le binaire : bits, octets et masques

Une adresse IPv4 comporte 32 bits. On l’écrit sous la forme de quatre nombres décimaux séparés par des points, par exemple 192.168.1.10, mais chacun de ces nombres est en réalité un groupe binaire de 8 bits appelé « octet ». Huit bits par octet, quatre octets, soit 32 bits au total. Chaque octet peut contenir une valeur comprise entre 0 et 255, car huit bits peuvent représenter 2^8 = 256 valeurs distinctes.

Les positions des bits dans un octet ont les valeurs de poids respectives de 128, 64, 32, 16, 8, 4, 2 et 1. Pour effectuer la conversion, additionnez les positions qui contiennent un 1. Par exemple, l’octet 11000000 vaut 128 + 64 = 192, et 10101000 est égal à 128 + 32 + 8 = 168. Ainsi, 192.168.1.10 en binaire, cela donne :

  • 192 = 11000000
  • 168 = 10101000
  • 1 = 00000001
  • 10 = 00001010

Le masque de sous-réseau est une autre valeur de 32 bits, mais elle est particulière : il s’agit toujours d’une suite de 1 suivie d’une suite de 0. Les 1 indiquent la partie réseau de l’adresse et les 0 indiquent la partie hôte. Un masque de 255.255.255.0 est 11111111.11111111.11111111.00000000 en binaire, soit 24 uns suivis de 8 zéros. Pour déterminer le réseau auquel appartient une adresse, on effectue un ET bit à bit entre l’adresse et le masque : là où le masque contient un 1, le bit de l’adresse est conservé ; là où le masque contient un 0, le bit devient 0. Cette opération ET est le calcul le plus important de tout le subnettage.

L'adressage par classes : un bref retour historique

Aux débuts d’Internet, les adresses étaient attribuées selon des « classes » fixes en fonction de la valeur du premier octet. C’est ce qu’on appelle l’adressage par classes ; bien qu’il soit aujourd’hui obsolète, sa compréhension permet d’expliquer pourquoi le CIDR a constitué une telle avancée.

  • La classe A couvrait les premiers octets de 1 à 126 et utilisait une partie réseau de 8 bits (masque 255.0.0.0, un /8) et attribuait à chaque réseau environ 16,7 millions d’hôtes.
  • La classe B couvrait les octets de 128 à 191, utilisait une partie réseau de 16 bits (masque 255.255.0.0, a /16) et offrait environ 65 000 hôtes par réseau.
  • La classe C couvrait les adresses de 192 à 223, utilisait une partie réseau de 24 bits (masque 255.255.255.0, un /24) et ne fournissait que 254 hôtes utilisables.

Le problème résidait dans cette rigidité. Une organisation ayant besoin de 2 000 adresses était trop grande pour une classe C (254 hôtes), mais devait se voir attribuer une classe B (65 000 hôtes), ce qui entraînait un gaspillage de plus de 60 000 adresses. Avec la croissance exponentielle d’Internet, ce gaspillage menaçait d’épuiser complètement l’espace IPv4. Il fallait trouver une solution plus flexible.

Découvrez le CIDR : explication de la notation bit par bit

Le CIDR, ou Classless Inter-Domain Routing (routage inter-domaines sans classe), a été introduit en 1993 pour remplacer le système de classes rigide. Au lieu de lier la taille du réseau au premier octet, le CIDR permet de placer la limite entre le réseau et l’hôte n’importe où dans les 32 bits. On exprime cela à l’aide de la notation par barre oblique désormais familière, appelée préfixe CIDR.

Le nombre après la barre oblique correspond simplement au nombre de bits à 1 dans le masque de sous-réseau, c’est-à-dire au nombre de bits appartenant au réseau. Ainsi :

  • /8 correspond à 8 bits de réseau, le masque 255.0.0.0 (ancienne taille de classe A).
  • /16 signifie 16 bits de réseau, masque 255.255.0.0 (ancienne taille de classe B).
  • /24 correspond à 24 bits de réseau, masque 255.255.255.0 (ancienne taille de classe C).
  • /26 correspond à 26 bits de réseau, masque 255.255.255.192, ce qui ne laisse que 6 bits d'hôte.

La formule magique permettant de déterminer le nombre d’adresses contenues dans un préfixe est 2^(32 − n), où n est la longueur du préfixe. Comme l’espace IPv4 total est de 32 bits, la soustraction des bits de réseau laisse les bits d’hôte, et 2 élevé à cette puissance donne le nombre total d’adresses dans le bloc. Pour un /24 cela donne 2^(32−24) = 2^8 = 256 adresses au total. Pour un /26 , cela donne 2^(32−26) = 2^6 = 64 adresses. Plus le numéro de préfixe est élevé, plus le sous-réseau est petit.

Calcul des valeurs clés d’un sous-réseau

Chaque sous-réseau comporte quelques adresses spéciales que vous devrez identifier. Voici ce que chacune d’entre elles signifie et comment la trouver.

  1. Adresse réseau. La toute première adresse du bloc. Tous les bits d’hôte sont à 0. Elle identifie le sous-réseau lui-même et ne peut pas être attribuée à un périphérique.
  2. Adresse de diffusion. Il s’agit de la toute dernière adresse du bloc. Tous les bits d’hôte sont à 1. Le trafic envoyé à cette adresse atteint tous les hôtes du sous-réseau ; elle ne peut donc pas non plus être utilisée comme adresse d’hôte.
  3. Premier hôte utilisable. Une adresse au-dessus de l'adresse réseau (réseau + 1).
  4. Dernier hôte utilisable. Une adresse en dessous de l’adresse de diffusion (diffusion − 1).
  5. Nombre total d’adresses. 2^(32 − n).
  6. Hôtes utilisables. Le total moins 2, car les adresses réseau et de diffusion sont réservées. La formule est 2^(32 − n) − 2.

Il existe une autre valeur qu’il est utile de connaître : le masque générique. Il s’agit de l’inverse du masque de sous-réseau, obtenu en inversant chaque bit (en soustrayant 255 de chaque octet). Alors qu’un masque de sous-réseau de 255.255.255.0 sélectionne le réseau, son masque générique 0.0.0.255 sélectionne la plage d’hôtes. Les masques génériques apparaissent constamment dans les listes de contrôle d’accès Cisco et la configuration OSPF ; il est donc utile de les reconnaître.

Exemple pratique n° 1 : 192.168.1.0/24

Commençons par le cas le plus simple possible. Une /24 se termine proprement sur une limite d’octet, ce qui évite toute manipulation binaire. Avec 24 bits de réseau, la partie hôte correspond à l’intégralité du dernier octet.

PropriétéValeur
Notation CIDR192.168.1.0/24
Masque de sous-réseau255.255.255.0
Masque générique0.0.0.255
Adresse réseau192.168.1.0
Adresse de diffusion192.168.1.255
Premier hôte utilisable192.168.1.1
Dernier hôte utilisable192.168.1.254
Nombre total d'adresses256 (2^8)
Hôtes utilisables254

Il s'agit du réseau classique pour la maison et les petites entreprises. Tout, de .1 à .254 est disponible pour les appareils, .0 désigne le réseau, et .255 est l'adresse de diffusion.

Exemple pratique n° 2 : 10.0.0.0/26

Passons maintenant à un préfixe qui ne tombe pas sur une limite d’octet. Un /26 signifie 26 bits de réseau, donc le dernier octet est divisé : ses deux premiers bits appartiennent au réseau et les six bits restants sont des bits d’hôte. Six bits d’hôte donnent 2^6 = 64 adresses au total par sous-réseau. Cela signifie que /26 les sous-réseaux se succèdent par incréments de 64 dans le dernier octet : 0, 64, 128, 192.

Si l’on se concentre sur le premier bloc 10.0.0.0/26, le masque de réseau est 255.255.255.192 car 11000000 dans le dernier octet est égal à 192.

PropriétéValeur
Notation CIDR10.0.0.0/26
Masque de sous-réseau255.255.255.192
Masque générique0.0.0.63
Adresse réseau10.0.0.0
Adresse de diffusion10.0.0.63
Premier hôte utilisable10.0.0.1
Dernier hôte utilisable10.0.0.62
Nombre total d'adresses64 (2^6)
Hôtes utilisables62

Le sous-réseau suivant dans la séquence serait 10.0.0.64/26 (hôtes de .65 à .126, diffusion .127), puis 10.0.0.128/26, et enfin 10.0.0.192/26. Remarquez que la taille du bloc, 64, correspond exactement au « nombre magique » qui détermine le point de départ de chaque sous-réseau.

Exemple pratique n° 3 : 172.16.5.0/28

Notre dernier exemple réduit encore davantage la taille du sous-réseau. Un /28 comporte 28 bits de réseau et seulement 4 bits d’hôte, ce qui donne 2^4 = 16 adresses au total et seulement 14 hôtes utilisables. Le dernier octet est utilisé 11110000 pour la partie réseau, ce qui équivaut à 240 ; le masque est donc 255.255.255.240. Les sous-réseaux sont délimités par incréments de 16.

PropriétéValeur
Notation CIDR172.16.5.0/28
Masque de sous-réseau255.255.255.240
Masque générique0.0.0.15
Adresse réseau172.16.5.0
Adresse de diffusion172.16.5.15
Premier hôte utilisable172.16.5.1
Dernier hôte utilisable172.16.5.14
Nombre total d'adresses16 (2^4)
Hôtes utilisables14

A /28 est une taille couramment utilisée pour les petits réseaux point à point et pour les segments de serveurs étroitement contrôlés où l’on ne souhaite disposer que d’une poignée d’adresses. Si vous n’aviez besoin que de deux hôtes, par exemple pour une liaison entre deux routeurs, vous pourriez descendre jusqu’à un /30, qui offre exactement 2 adresses utilisables.

L'aide-mémoire sur le sous-réseautage

Plutôt que de recalculer les puissances de deux à chaque fois, mémorisez ou ajoutez aux favoris le tableau ci-dessous. Il couvre les préfixes les plus courants, allant /24 jusqu’à /30, en indiquant le masque, le caractère générique, la taille du bloc (nombre total d’adresses) et le nombre d’hôtes utilisables.

CIDRMasque de sous-réseauCaractère génériqueNombre total d'adressesHôtes utilisables
/24255.255.255.00.0.0.255256254
/25255.255.255.1280.0.0.127128126
/26255.255.255.1920.0.0.636462
/27255.255.255.2240.0.0.313230
/28255.255.255.2400.0.0.151614
/29255.255.255.2480.0.0.786
/30255.255.255.2520.0.0.342

Remarquez la régularité : chaque incrément d’un bit dans le préfixe divise par deux le nombre d’hôtes, et chaque valeur de masque dans le dernier octet est l’une des suivantes : 128, 192, 224, 240, 248, 252. Ce sont les seules valeurs valides que peut prendre l’octet de masque final.

VLSM : des sous-réseaux de tailles différentes

Le découpage traditionnel en sous-réseaux divise un réseau en parties de taille égale, ce qui est un gaspillage lorsque vos services ont des besoins très différents. Le masquage de sous-réseaux à longueur variable (VLSM) résout ce problème en vous permettant d’appliquer différentes longueurs de préfixe au sein d’un même réseau global. En effet, vous découpez un sous-réseau en sous-réseaux.

Supposons que vous disposiez 192.168.10.0/24 et que vous deviez desservir un service de 100 hôtes, un autre de 50 hôtes, ainsi que deux liaisons de routeurs comprenant chacune 2 hôtes. Avec le VLSM, vous attribueriez :

  • A /25 (126 hôtes) pour le grand service : 192.168.10.0/25.
  • A /26 (62 hôtes) pour le service de taille moyenne : 192.168.10.128/26.
  • Deux /30 blocs (2 hôtes chacun) pour les liaisons de routeurs, prélevés sur l'espace restant.

La règle d’or du VLSM consiste à attribuer d’abord les sous-réseaux les plus grands, puis à descendre progressivement, afin que les blocs s’imbriquent parfaitement sans se chevaucher. C’est ainsi que les plans d’adressage réels évitent le gaspillage tout en laissant une marge de manœuvre pour l’évolution future.

Remarque sur les préfixes IPv6

Tout ce qui précède concerne l’IPv4, mais la notation CIDR s’applique directement à l’IPv6, avec simplement des nombres beaucoup plus grands. Une adresse IPv6 comporte 128 bits au lieu de 32, de sorte que les préfixes vont jusqu’à /128. Le plus important à retenir est le /64 : selon une convention établie de longue date, un sous-réseau IPv6 est un /64, ce qui réserve les 64 premiers bits au préfixe de réseau et les 64 derniers bits à l’hôte, ou « identifiant d’interface ». Cela laisse 2^64 adresses par sous-réseau, un nombre presque inimaginable, ce qui explique pourquoi IPv6 ne se soucie guère des acrobaties de gestion des adresses qui caractérisent le sous-réseautage IPv4. Si vous souhaitez une comparaison plus approfondie des deux protocoles, consultez notre guide sur IPv4 vs IPv6.

Pour résumer

Le sous-réseautage se résume à trois principes : une adresse IP comporte 32 bits, le masque détermine où s'arrête le réseau, et la formule 2^(32 − n) indique la taille de chaque bloc. Maîtrisez ces principes et le reste n'est qu'une question d'arithmétique. Commencez par identifier le préfixe, convertissez-le en taille de bloc, déterminez les adresses réseau et de diffusion, et la plage utilisable se situe entre ces deux adresses. Entraînez-vous sur quelques exemples et le processus deviendra une seconde nature. Si vous souhaitez vérifier instantanément vos calculs, saisissez n’importe quelle adresse et n’importe quel préfixe dans notre outil « Calculateur de sous-réseaux » et comparez les résultats avec les vôtres.

Foire aux questions

Pourquoi soustrait-on 2 du nombre total d’adresses pour obtenir le nombre d’hôtes utilisables ?

Dans chaque sous-réseau IPv4, deux adresses sont réservées et ne peuvent pas être attribuées à des périphériques : l’adresse réseau (tous les bits d’hôte mis à 0), qui désigne le sous-réseau, et l’adresse de diffusion (tous les bits d’hôte mis à 1), qui sert à atteindre tous les hôtes en même temps. En soustrayant ces deux adresses, on obtient le nombre d’adresses que vous pouvez réellement attribuer aux hôtes, soit 2^(32 − n) − 2.

Quelle est la différence entre un masque de sous-réseau et un préfixe CIDR ?

Ils expriment exactement la même information sous deux formats différents. Un masque de sous-réseau tel que 255.255.255.0 est une valeur décimale pointée de 32 bits, tandis que le préfixe CIDR /24 correspond simplement au nombre de bits à 1 dans ce masque. Tout masque peut être écrit sous forme de préfixe et inversement ; la notation CIDR est simplement plus concise et moins sujette aux erreurs.

Que signifie réellement le /24 dans une adresse IP ?

Le nombre après la barre oblique correspond à la longueur du préfixe, c'est-à-dire le nombre de bits (sur les 32 que compte l'adresse) qui définissent le réseau. Un /24 réserve les 24 premiers bits au réseau et laisse 8 bits aux hôtes, ce qui donne 256 adresses au total (2^8) et 254 adresses utilisables. Cela équivaut au masque de sous-réseau 255.255.255.0.

Pourquoi le CIDR a-t-il remplacé l’adressage par classes ?

L’adressage par classe imposait des paliers très importants pour la taille des réseaux : 254 hôtes, puis 65 000, puis 16 millions, sans aucune option intermédiaire. Les organisations se voyaient systématiquement attribuer bien plus d’adresses qu’elles n’en avaient besoin, ce qui entraînait un gaspillage de l’espace IPv4 limité. Le CIDR permet de placer la limite du réseau sur n’importe quel bit, de sorte que la taille des blocs puisse être adaptée aux besoins ; il permet également de regrouper les routes, ce qui réduit la taille des tables de routage.

À quoi sert un masque générique ?

Un masque générique est l’inverse bit à bit d’un masque de sous-réseau, obtenu en soustrayant 255 de chaque octet. Alors qu’un masque de sous-réseau correspond à la partie réseau, un masque générique spécifie quels bits sont autorisés à varier. Il apparaît principalement dans les listes de contrôle d’accès Cisco et les protocoles de routage comme l’OSPF pour décrire de manière concise des plages d’adresses.

Les mêmes règles de sous-réseautage s’appliquent-elles à IPv6 ?

Le concept CIDR est identique : une longueur de préfixe suivie d’une barre oblique marque la limite du réseau. La différence réside dans l’échelle. Les adresses IPv6 comptent 128 bits au lieu de 32, et la taille standard d’un sous-réseau est de /64, ce qui fournit 2^64 adresses d’hôtes par sous-réseau. L’espace étant si vaste, le sous-réseautage IPv6 met l’accent sur la structure et la hiérarchie plutôt que sur l’exploitation de chaque adresse disponible.