Masque de sous-réseau et CIDR expliqués
Un masque de sous-réseau indique à un appareil quelle partie d'une adresse IPv4 identifie le réseau et quelle partie identifie l'hôte. La notation CIDR écrit la même information sous la forme d'une barre oblique suivie d'un nombre, par exemple /24, ce qui signifie que les 24 premiers bits constituent la partie réseau. Le masque 255.255.255.0 et le préfixe /24 sont deux façons d'écrire la même chose.
Un masque en binaire
Une adresse IPv4 comporte 32 bits. Un masque de sous-réseau est une suite de bits à 1 suivie d'une suite de bits à 0. Les bits à 1 marquent la partie réseau et les bits à 0 la partie hôte. La longueur du préfixe est le nombre de bits à 1.
/24 11111111.11111111.11111111.00000000 = 255.255.255.0
/26 11111111.11111111.11111111.11000000 = 255.255.255.192
/20 11111111.11111111.11110000.00000000 = 255.255.240.0
Chaque octet du masque prend l'une de neuf valeurs : 0, 128, 192, 224, 240, 248, 252, 254 ou 255. Ce sont les sommes des bits en partant de la gauche : 128, 128+64=192, 192+32=224, et ainsi de suite.
Le nombre de bits d'hôte est 32 - préfixe. Un sous-réseau contient au total 2^(bits d'hôte) adresses. Normalement, deux ne sont pas utilisables : la première est l'adresse réseau et la dernière est l'adresse de diffusion (broadcast). Le nombre d'adresses utilisables est donc 2^(bits d'hôte) - 2.
Exemple détaillé : 192.168.10.37/26
Déterminez le réseau, l'adresse de diffusion et la plage d'hôtes de 192.168.10.37/26.
- Le masque est
255.255.255.192. Seul le dernier octet est partiellement utilisé. - La taille du bloc est
256 - 192 = 64. Les sous-réseaux du dernier octet commencent à 0, 64, 128 et 192. - La valeur 37 se situe entre 0 et 63, donc le sous-réseau commence à 0.
| Élément | Valeur |
|---|---|
| Adresse réseau | 192.168.10.0 |
| Premier hôte utilisable | 192.168.10.1 |
| Dernier hôte utilisable | 192.168.10.62 |
| Adresse de diffusion | 192.168.10.63 |
| Nombre total d'adresses | 64 (26) |
| Hôtes utilisables | 62 |
Vous pouvez vérifier le résultat avec un ET bit à bit : l'adresse réseau est l'adresse ET le masque. Dans le dernier octet, 37 s'écrit 00100101 et 192 s'écrit 11000000 ; le ET donne 00000000, soit 0. Vous pouvez vérifier n'importe quel exemple avec le calculateur de sous-réseaux.
Aide-mémoire CIDR de /8 à /32
| CIDR | Masque de sous-réseau | Nombre total d'adresses | Hôtes utilisables |
|---|---|---|---|
| /8 | 255.0.0.0 | 16,777,216 | 16,777,214 |
| /9 | 255.128.0.0 | 8,388,608 | 8,388,606 |
| /10 | 255.192.0.0 | 4,194,304 | 4,194,302 |
| /11 | 255.224.0.0 | 2,097,152 | 2,097,150 |
| /12 | 255.240.0.0 | 1,048,576 | 1,048,574 |
| /13 | 255.248.0.0 | 524,288 | 524,286 |
| /14 | 255.252.0.0 | 262,144 | 262,142 |
| /15 | 255.254.0.0 | 131,072 | 131,070 |
| /16 | 255.255.0.0 | 65,536 | 65,534 |
| /17 | 255.255.128.0 | 32,768 | 32,766 |
| /18 | 255.255.192.0 | 16,384 | 16,382 |
| /19 | 255.255.224.0 | 8,192 | 8,190 |
| /20 | 255.255.240.0 | 4,096 | 4,094 |
| /21 | 255.255.248.0 | 2,048 | 2,046 |
| /22 | 255.255.252.0 | 1,024 | 1,022 |
| /23 | 255.255.254.0 | 512 | 510 |
| /24 | 255.255.255.0 | 256 | 254 |
| /25 | 255.255.255.128 | 128 | 126 |
| /26 | 255.255.255.192 | 64 | 62 |
| /27 | 255.255.255.224 | 32 | 30 |
| /28 | 255.255.255.240 | 16 | 14 |
| /29 | 255.255.255.248 | 8 | 6 |
| /30 | 255.255.255.252 | 4 | 2 |
| /31 | 255.255.255.254 | 2 | 2 (liaisons point à point, RFC 3021) |
| /32 | 255.255.255.255 | 1 | 1 (un seul hôte) |
Masques inverses (wildcard)
Un masque inverse (wildcard) est l'inverse d'un masque de sous-réseau : chaque bit est inversé. Là où le masque de sous-réseau a un 1, le masque inverse a un 0, et inversement. Les routeurs et pare-feu (par exemple les listes de contrôle d'accès Cisco et les instructions network d'OSPF) utilisent des masques inverses, dans lesquels un bit à 0 signifie « doit correspondre » et un bit à 1 signifie « n'importe quelle valeur ».
/24, masque 255.255.255.0, donne le masque inverse0.0.0.255/26, masque 255.255.255.192, donne le masque inverse0.0.0.63/20, masque 255.255.240.0, donne le masque inverse0.0.15.255
Pour le calculer rapidement : soustrayez chaque octet du masque de 255.
Découper un /24 en quatre sous-réseaux /26
Prenons le réseau de documentation 198.51.100.0/24. En ajoutant deux bits au préfixe, on obtient 22 = 4 sous-réseaux de 64 adresses chacun.
| Sous-réseau | Réseau | Plage utilisable | Diffusion |
|---|---|---|---|
| 1 | 198.51.100.0/26 | 198.51.100.1 – 198.51.100.62 | 198.51.100.63 |
| 2 | 198.51.100.64/26 | 198.51.100.65 – 198.51.100.126 | 198.51.100.127 |
| 3 | 198.51.100.128/26 | 198.51.100.129 – 198.51.100.190 | 198.51.100.191 |
| 4 | 198.51.100.192/26 | 198.51.100.193 – 198.51.100.254 | 198.51.100.255 |
Les quatre sous-réseaux réunis contiennent 4 × 62 = 248 hôtes utilisables, contre 254 pour le /24 d'origine. La différence de six adresses correspond aux adresses réseau et de diffusion supplémentaires. Le découpage en sous-réseaux sert à séparer les services, les serveurs et le Wi-Fi invités, et à limiter le trafic de diffusion.
Conventions de préfixes IPv6
IPv6 utilise la même notation avec barre oblique, mais les règles de planification sont différentes. L'espace d'adressage étant immense, on ne compte pas les hôtes. Les conventions courantes sont :
- /64 pour chaque réseau local (LAN) ordinaire. Des fonctions comme SLAAC (configuration automatique des adresses) exigent une partie hôte de 64 bits. N'utilisez pas de préfixe plus long sur un LAN ordinaire.
- /56 ou /48 pour un client ou un site. Un /48 contient 65,536 réseaux /64, et un /56 en contient 256.
- /32 est une attribution typique pour un fournisseur d'accès à internet, et
2001:db8::/32est la plage de documentation. - /128 désigne une seule adresse, comme /32 en IPv4.
Par exemple, un site disposant de 2001:db8:abcd::/48 peut utiliser 2001:db8:abcd:1::/64 pour un VLAN et 2001:db8:abcd:2::/64 pour le suivant.
Pour aller plus loin
Pour les bases sur les adresses, lisez ce qu'est une adresse IP. Pour calculer rapidement n'importe quel réseau, utilisez le calculateur de sous-réseaux.