Je comprends ce qu'est le CIDR et à quoi il sert, mais je ne comprends toujours pas comment le calculer dans ma tête. Quelqu'un peut-il donner une explication de type "pour les nuls" avec des exemples?
46
Je comprends ce qu'est le CIDR et à quoi il sert, mais je ne comprends toujours pas comment le calculer dans ma tête. Quelqu'un peut-il donner une explication de type "pour les nuls" avec des exemples?
Réponses:
CIDR (routage interdomaine sans classe, prononcé "kidder" ou "cidre" - ajoutez votre propre variante locale aux commentaires!) Est un système permettant de définir la partie réseau d'une adresse IP (généralement ce que les gens considèrent comme un masque de sous-réseau) . La raison pour laquelle elle est "sans classe" est qu’elle permet de casser les réseaux IP de manière plus flexible que leur classe de base.
Lorsque les réseaux IP ont été définis pour la première fois, les IP avaient des classes basées sur leur préfixe binaire:
(Notez que c’est la source de personnes qui désignent a / 24 comme une "classe C", bien que ce ne soit pas une comparaison strictement vraie car une classe C devait avoir un préfixe spécifique)
Ces préfixes binaires ont été utilisés pour router de gros morceaux d’espace IP. Cela était inefficace, car de grands blocs étaient attribués à des organisations qui n'en avaient pas nécessairement besoin, mais également parce que les classes C ne pouvaient être attribuées que par incréments de 24 bits, ce qui signifiait que les tables de routage pouvaient devenir inutilement volumineuses lorsque plusieurs classes de classe étaient acheminées. au même endroit.
CIDR a été défini pour permettre l'application de masques de sous-réseau de longueur variable (VLSM) aux réseaux. Selon le nom, les groupes d'adresses ou les réseaux peuvent être divisés en groupes sans relation directe avec la "classe" naturelle à laquelle ils appartiennent.
Le principe de base de VLSM est de fournir le nombre de bits de réseau dans un réseau. Puisqu'une adresse IPv4 est un entier de 32 bits, le VLSM sera toujours compris entre 0 et 32 (bien que je ne sois pas sûr de savoir dans quel cas vous pourriez avoir un masque de longueur nulle).
La meilleure façon de commencer à calculer le VLSM / CIDR dans votre tête est de comprendre les limites "naturelles" de 8 bits:
(En passant, il est parfaitement légal, et assez courant dans les ACL, d'utiliser un masque / 32. Cela signifie simplement que vous vous référez à une seule adresse IP)
Une fois que vous les avez compris, l'arithmétique binaire simple consiste à monter ou descendre pour obtenir le nombre d'hôtes. Par exemple, si un / 24 a 256 adresses IP (nous allons laisser les adresses réseau et de diffusion pour le moment, c’est une autre question de théorie du réseau), augmenter le sous-réseau d’un bit (à / 25) réduira l’espace hôte d’un bit 7), ce qui signifie qu'il y aura 128 adresses IP.
Voici un tableau du dernier octet. Cette table peut être déplacée sur n’importe quel octet pour obtenir l’équivalent quadruple en pointillé.
Comme exemple de décalage de ceux-ci vers un autre octet, / 18 (qui est / 26 moins 8 bits, ainsi décalé d'un octet) serait 255.255.192.0.
la source
Chaque octet vaut 8.
Ainsi, vous pouvez rapidement réduire votre sous-réseau et vous ne vous inquiétez plus que des 8 derniers bits.
J'espère que c'est assez clair
la source
Un jour (sic) en retard, espérons pas un dollar en moins. CIDR est le nombre d'un bit contigu dans le masque IPv4 (32 bits) commençant au bit le plus significatif.
10000000 00000000 00000000 00000000 où 1 = bit le plus significatif
Les masques communs sont / 8, / 16, / 24, qui se trouvent tous sur une limite de 8 bits (octets).
11111111 00000000 00000000 00000000 = / 8 = 255.0.0.0
11111111 11111111 00000000 00000000 = / 16 = 255.255.0.0
11111111 11111111 11111111 00000000 = / 24 = 255.255.255.0
Ce n'est pas vraiment difficile quand il n'est pas aligné octet, mais cela nécessite quelques notions de calcul et de compréhension de ce qu'est un octet.
11111111 11111111 11100000 00000000 = / 19
Les deux premiers octets du masque sont 255.255 (/ 16 est inférieur à / 19). Le dernier octet est 0 (/ 19 est inférieur à / 24). Jusqu'ici nous savons
11111111 11111111 11100000 00000000 = / 19 = 255.255.?.0
En regardant chaque octet, rappelez-vous qu’il s’agit d’une valeur de 8 bits, comprise entre 0 et 255.
Donc, le troisième octet (?) 11100000 est 128 + 64 + 32 = 224. Cela signifie
11111111 11111111 11100000 00000000 = / 19 = 255.255.224.0
la source
Il est très probable que les réseaux non triviaux soient calculés manuellement. Essayez plutôt une calculatrice CIDR .
la source
ipcalc
etsipcalc
sont de meilleurs choix, mais de toute façon +1Au contraire, je pense qu'il est bon de comprendre complètement le CIDR et de pouvoir faire des calculs dans votre cerveau ... mais parfois, vous voulez vérifier vos calculs. J'aime utiliser la calculatrice de sous-réseau PHP : http://share-foo.com/SubnetCalc.php
la source
Un autre bon document à avoir, si vous voulez juste une référence de bureau, est RFC 1878 - Table de sous-réseau de longueur variable pour IPv4 .
la source