Découpage du réseau : Subnetting & Supernetting

Dans un réseau informatique il peut être nécessaire de procéder à des séparations (sous réseaux ou subnets) afin de distinguer un ou plusieurs groupes de périphériques les uns des autres, ou au contraire de regrouper plusieurs sous réseaux (supernets) en une seule plage par exemple pour la définition de routes afin d’économiser en ressources.

Dans un réseau TCP/IP, on parle souvent d’adresse IP, l’adresse sur le réseau d’un périphérique précis, mais on parle moins souvent du masque réseau (netmask) sans lequel l’adresse IP n’a qu’une valeure relative. En effet le masque va définir l’appartenance de l’adresse IP à un groupe bien particulier (sous réseau), ainsi on peut restreindre ou agrandir la plage du réseau couverte à l’aide de celui-ci.

Le Subnetting

Le principe du subnetting est de découper une partie d’un réseau à partir d’une adresse IP et d’un masque en différent sous-réseau afin de séparer les différents sous-réseau les uns des autres.
Pour ce faire il faut vérifier le nombre maximum d’IP à attribuer afin d’ajuster le masque pour qu’il englobe cette totalité d’adresses différentes.

Par exemple si l’on part d’une adresse IP tel que : 192.168.1.10 et que l’on veut pouvoir attribuer 81 postes répartis comme suit :

  • 10 postes de secrétariat
  • 50 postes d’employés
  • 12 postes de cadres
  • 6 postes de RH
  • 3 postes de direction

Par contre, pour le calcul du masque, il va falloir prendre en compte le nombre maximal d’IP de chaque sous réseau.
Je m’explique : en binaire (codage des informations en informatique), un bit peut prendre 2 valeurs 0 ou 1. Donc avec 1 bit nous obtenons 2 possibilités. Si l’on code la partie variable de l’IP sur 2 bits, nous obtenons 4 possibilités (2 pour le premier bit et 2 autres pour le second). En fait la quantité de possibilités s’expriment sous forme de puissance de 2 :2n où n représente le nombre de bits utilisés.
Donc pour notre exemple 23=8 et 24=16, nous allons donc utilisé 24 car sur 3 bits nous n’avons pas suffisamment de possibilités pour l’attribution des 10 postes.
NB : Il faut penser à retirer 2 possibilités à ce total qui sont réservés au sous-réseau et au broadcast pour obtenir le nombre de machines réellement adressable dans ce sous-réseau !

Donc si nous revenons à notre exemple nous aurons donc les possibilités suivantes :

  • Secrétariat=10, soit 24=16
  • Employés=50, soit 26=64
  • Cadres=12, soit 24=16
  • RH=6, soit 23=8
  • Direction=3, soit 23=8 -> et non 22=4, car 4-2=2 insuffisant pour nos 3 postes !

Donc nous aurons besoin d’un masque de sous-réseau capable de coder : 16+64+16+8+8=112 adresses différentes.
La puissance de 2 la plus proche de 112 est 128 qui correspond à 27 car 26=64 qui ne suffirait pas pour nos 112 possibilités.
Il est à rappeler qu’une adresse réseau type IPv4 est codée par un groupe de 4 octets (soit 4 groupes de 8 bits).
Nous allons donc utilisé 7 bits du masque de sous-réseau pour coder la partie variable des adresses IP que l’on attribuera aux différentes machines, ce qui nous donne donc le masque suivant :

En binaire (#b) : 11111111.11111111.11111111.[10000000]
soit en décimal (#d) : 255.255.255.128

Dans un masque, les bits à 1 indiquent que l’on ne change rien par rapport à l’IP d’origine (la partie fixe du réseau), et les 0 représentes les bits qui changeront selon les postes.

Nous allons commencer à pouvoir découper le réseau indiquer en différents sous-réseau, nous allons rappeler les caractéristiques du réseau.
IP : 192.168.1.10
Mask : 255.255.255.128

Afin de calculer l’étendue du réseau, il nous faut calculer le début du réseau et le broadcast.
Le début du réseau se calcul en faisant une opération de ET logique entre l’adresse IP et le masque exprimée en binaire. Le résultat du ET nous donne un bit à 1 uniquement si les 2 bits comparés sont à 1. On peut donc ne travailler que sur la partie variable de l’IP, car pour la partie fixe du réseau, tous les bits du masque sont à 1, nous aurons donc le même résultat pour cette partie de l’IP.
Pour le calcul du broadcast (fin du réseau), le calcul revient à la capacité maximum utilisé par le masque (les bits à 0), on va donc passer les bits correspondant de l’adresse IP à 1 afin de calculer l’adressage maximum.
IP=192.168.1.10 -> #b=0000 1010
Mask=255.255.255.128 -> #b=1000 0000
ss/réseau : #b=0000 0000 #d=0
Broadcast : #b=0111 1111 #d=127

Ce qui nous donne, retranscrit en intégralité :

ss/réseau : 192.168.1.0
Broadcast : 192.168.1.127

Nous avons bien nos 128 possibilités, car le 0 compte comme une possibilité.
Nous pouvons donc commencer l’attribution de la 1° adresse IP utilisable par 192.168.1.1 et la dernière adresse utilisable sera 192.168.1.126.

Afin de procéder à la découpe du réseau en sous-réseau, il faut calculer le masque de sous-réseau pour chacun des sous-réseau en fonction du nombre de possibilités dont nous aurons besoin.
Il est à rappeler aussi qu’il faut procéder par ordre décroissant des possibilités, c’est à dire commencer l’attribution par le sous-réseau ayant le plus grand nombres de possibilités et continuer ainsi de suite vers le plus petit.

Dans notre exemple le plus grand sous-réseau sera celui attribué aux employés (50). Je vous rappel que l’on avait défini qu’il nous fallait 6 bits afin d’englober ces 50 possibilités. Donc nous allons utilisé un masque de sous-réseau utilisant les 6 derniers bits à 0 :
Masque : #b=11111111.11111111.11111111.11000000 soit #d=255.255.255.192

Afin de calculer l’étendue de ce sous-réseau, nous allons calculer comme vu plus haut le début du ss/réseau et le broadcast de celui-ci.

1° ss/réseau : Employé

Nbr de postes : 50

Nbr de bits pour codage : 26
Masque : 255.255.255.192 #b=11111111.11111111.11111111.[11000000]
IP de base : 192.168.1.10 #b=11000000.10101000.00000001.[00001010]
ss/réseau : 192.168.1.0 #b=00000000
Broadcast : 192.168.1.63 #b=00111111

Pour rappel, on a calculé le début du sous réseau en faisant un & entre l’IP de base et le masque de sous-réseau, et le Brodcast en mettant à 1 tous les bits de l’adresse IP de base utilisé pour codé les possibilités (6 bits en gras). On ne travail que sur la partie variable de l’IP, car la partie fixe ne change pas !

Ce sous réseau s’étend donc de 192.168.1.0 -> 192.168.1.63 soit 64 possibilités.
Le premier poste aura pour IP : 192.168.1.1
Le dernier poste aura pour IP : 192.168.1.62
On peut donc bien attribuer nos 50 postes prévus avec une certaine réserve.

On continue ainsi avec les autres sous-réseau jusqu’au dernier, que je détail ci-dessous, sans réexpliquer car la procédure est la même, on ajuste juste l’adresse IP de base de chaque sous-réseau qui commencera juste à la suite du broadcast du sous-réseau précédent.

2° ss/réseau : Cadres

Nbr de postes : 12
Nbr de bits pour codage : 24
Masque : 255.255.255.240 #b=11111111.11111111.11111111.[11110000]
IP de base : 192.168.1.64 #b=11000000.10101000.00000001.[01000000]
ss/réseau : 192.168.1.64 #b=01000000
Broadcast : 192.168.1.79 #b=01001111

3° ss/réseau : Secrétariat

Nbr de postes : 10
Nbr de bits pour codage : 24
Masque : 255.255.255.240 #b=11111111.11111111.11111111.[11110000]
IP de base : 192.168.1.80 #b=11000000.10101000.00000001.[01010000]
ss/réseau : 192.168.1.80 #b=01010000
Broadcast : 192.168.1.95 #b=01011111

4° ss/réseau : RH

Nbr de postes : 6
Nbr de bits pour codage : 23
Masque : 255.255.255.248 #b=11111111.11111111.11111111.[11111000]
IP de base : 192.168.1.96 #b=11000000.10101000.00000001.[01100000]
ss/réseau : 192.168.1.96 #b=01100000
Broadcast : 192.168.1.103 #b=01100111

5° ss/réseau : Direction

Nbr de postes : 3
Nbr de bits pour codage : 23
Masque : 255.255.255.248 #b=11111111.11111111.11111111.[11111000]
IP de base : 192.168.1.104 #b=11000000.10101000.00000001.[01101000]
ss/réseau : 192.168.1.104 #b=01101000
Broadcast : 192.168.1.111 #b=01101111

Le Supernetting

A l’inverse du subnetting, que l’on vient de voir, le supernetting va permettre de regrouper plusieurs sous réseaux afin de couvrir l’ensemble des plages IP faisant partie de ceux-ci.

Il est très utilisé dans la notion de routage, afin d’économiser des ressources pour déclarer plusieurs routes en une seule fois.

Laisser un commentaire