Pour compenser les problèmes de distribution de l'espace d'adressage IPv4, la première solution utilisée a consisté à découper une classe d'adresses IPv4 A, B ou C en sous-réseaux. Cette technique appelée subnetting a été formalisée en 1985 avec le document RFC950.
Si cette technique est ancienne, elle n'en est pas moins efficace face aux problèmes d'exploitation des réseaux contemporains. Il ne faut jamais oublier que le découpage en réseaux ou sous-réseaux permet de cloisonner les domaines de diffusion. Les avantages de ce cloisonnement de la diffusion réseau sont multiples.
-
Au quotidien, on évite l'engorgement des liens en limitant géographiquement les annonces de services faites par les serveurs de fichiers. Les services Micro$oft™ basés sur netBT sont particulièrement gourmands en diffusion réseau. En effet, bon nombre de tâches transparentes pour les utilisateurs supposent que les services travaillent à partir d'annonces générales sur le réseau. Sans ces annonces par diffusion, l'utilisateur doit désigner explicitement le service à utiliser. Le service d'impression est un bon exemple.
-
Il existe quantité de vers et|ou virus dont les mécanismes de propagation se basent sur une reconnaissance des cibles par diffusion. Le ver Sasser en est un exemple caractéristique. En segmentant un réseau en plusieurs domaines de diffusion, on limite naturellement la propagation de code malveillant. Le subnetting devient alors un élément de la panoplie des outils de sécurité.
Pour illustrer le fonctionnement du découpage en sous-réseaux,
on utilise un exemple pratique. On reprend l'exemple de la classe C
192.168.1.0
dont le masque réseau
est par définition 255.255.255.0
.
Sans découpage, le nombre d'hôtes maximum de ce réseau est de 254.
Considérant qu'un domaine de diffusion unique pour 254 hôtes est
trop important, on choisit de diviser l'espace d'adressage de cette
adresse de classe C. On réserve 3 bits supplémentaires du 4ème
octet en complétant le masque réseau. De cette façon on augmente la
partie réseau de l'adresse IPv4
et on diminue la partie hôte.
Tableau 3. adresse 192.168.1.0
avec subnetting sur 3 bits
Adresse réseau | 192.168. 1.
0 |
Plage d'adresses utilisables | Adresse de diffusion |
---|---|---|---|
Masque de réseau | 255.255.255.224 |
||
Sous-réseau 0 | 192.168. 1.
0 |
192.168.1.
1 - 192.168.1. 30 |
192.168.1.
31 |
Sous-réseau 1 | 192.168. 1.
32 |
192.168.1.
33 - 192.168.1. 62 |
192.168.1.
63 |
Sous-réseau 2 | 192.168. 1.
64 |
192.168.1.
65 - 192.168.1. 94 |
192.168.1.
95 |
Sous-réseau 3 | 192.168. 1.
96 |
192.168.1.
97 - 192.168.1.126 |
192.168.1.127 |
Sous-réseau 4 | 192.168.
1.128 |
192.168.1.129 - 192.168.1.158 |
192.168.1.159 |
Sous-réseau 5 | 192.168.
1.160 |
192.168.1.161 - 192.168.1.190 |
192.168.1.191 |
Sous-réseau 6 | 192.168.
1.192 |
192.168.1.193 - 192.168.1.222 |
192.168.1.223 |
Sous-réseau 7 | 192.168.
1.224 |
192.168.1.225 - 192.168.1.254 |
192.168.1.255 |
Selon les termes du document RFC950, les sous-réseaux dont les bits de masque sont tous à 0 ou tous à 1 ne devaient pas être utilisés pour éviter les erreurs d'interprétation par les protocoles de routage dits classful comme RIPv1. En effet, ces protocoles de routages de «première génération» ne véhiculaient aucune information sur le masque sachant que celui-ci était déterminé à partir de l'octet le plus à gauche. Dans notre exemple ci-dessus, il y avait confusion aux niveaux de l'adresse de réseau et de diffusion.
-
L'adresse du sous-réseau
192.168.1.0
peut être considérée comme l'adresse réseau de 2 réseaux différents : celui avec le masque de classe C (255.255.255.0
) et celui avec le masque complet après découpage en sous-réseaux (255.255.255.224
). -
De la même façon, l'adresse de diffusion
192.168.1.255
est la même pour 2 réseaux différents :192.168.1.0
ou192.168.1.224
.
Depuis la publication du document RFC950, en 1985, les protocoles de routage qui servent à échanger les tables d'adresses de réseaux connectés entre routeurs ont évolué. Tous les protocoles contemporains sont conformes aux règles de routage inter-domaine sans classe (CIDR). Les protocoles tels que RIPv2, OSPF et BGP intègrent le traitement des masques de sous-réseaux. Ils peuvent même regrouper ces sous-réseaux pour optimiser le nombre des entrées des tables de routage. Pour appuyer cet argument, le document RFC1878 de 1995 spécifie clairement que la pratique d'exclusion des sous-réseaux all-zeros et all-ones est obsolète.