43 votes

Pourquoi avons-nous besoin de masque de sous-réseau ?

Étant donné qu'une adresse IPv4 donne déjà des informations sur le réseau et l'hôte, pourquoi avons-nous encore besoin d'un masque de sous-réseau?

Le 1er octet spécifie déjà la classe de réseau (1-127 : A, 128-191 : B, 192-223 : C, etc.). A, B, ou C implique le nombre d'octets pour le réseau (respectivement, 255.0.0.0, 255.255.0.0, 255.255.255.0), ce qui vous indique automatiquement combien d'hôtes sont autorisés pour chaque classe de réseau.

L'IP donne toutes les informations qu'un masque de sous-réseau a, et plus encore. Pourquoi avons-nous besoin d'un masque de sous-réseau en premier lieu? Si les informations contenues dans un sous-réseau ne sont pas entièrement un sous-ensemble de celles à l'intérieur d'une IP, que contient-il d'autre ou que fait-il en plus, ce qui nous oblige à le spécifier indépendamment?

39voto

Jason Points 886

Nous avons besoin d'un masque de sous-réseau pour les adresses IPv4 car l'adresse ne donne aucune information sur la taille du réseau. Les tailles de classe ne sont pas les tailles de réseau. Dans les réseaux pratiques, tous les réseaux IPv4 sont découpés en sous-réseaux qui sont plus petits que la taille de la classe.

Par exemple, vous pourriez diviser le réseau de classe C 200.200.200.0/255.255.255.0 en deux réseaux plus petits (potentiellement à des emplacements séparés) 200.200.200.0/255.255.255.128 et 200.200.200.128/255.255.255.128 en supposant que ni l'un ni l'autre n'ait besoin de plus de 126 hôtes. En réalité, la plupart des entreprises n'obtiennent que suffisamment d'adresses IPv4 pour les serveurs qui doivent être sur Internet. J'ai personnellement vu des configurations avec des réseaux de 32, 16 et 8 adresses (ce qui serait des masques de 255.255.255.224, 255.255.255.240 et 255.255.255.248 respectivement).

Avoir des réseaux IP uniquement en blocs de taille de classe était trop restrictif et limitait le nombre de réseaux autorisés - les 127 réseaux de classe A occupant la moitié de l'espace. Sans parler du fait qu'avoir un réseau de 24 milliards de nœuds est complètement ingérable. Au lieu de cela, en 1993, l'adressage des réseaux sans classe (CIDR) a été introduit pour permettre la découpe des réseaux.

Aussi, pour être clair, le but du masque de sous-réseau est de déterminer quels hôtes se trouvent sur le réseau local et lesquels sont en dehors du réseau. Les hôtes peuvent parler directement aux hôtes du même réseau, mais ils doivent communiquer avec un routeur pour parler aux hôtes sur des réseaux externes.

23voto

David Schwartz Points 60868

Le 1er octet spécifie déjà la classe de réseau (1-127 : A, 128-191 : B, 192-223 : C etc.). A, B ou C implique le nombre d'octets pour le réseau (respectivement, 255.0.0.0, 255.255.0.0, 255.255.255.0), ce qui vous indique automatiquement le nombre d'hôtes autorisés pour chaque classe de réseau.

D'accord, mais si quelqu'un devait sous-réseau ce réseau, vous auriez besoin du masque de sous-réseau pour savoir dans quel sous-réseau vous vous trouvez. Oui, avec l'adressage de classe, la classe vous indique la taille du réseau et vous permet de savoir si un hôte est dans le même réseau que vous, mais si ce réseau est sous-réseau, sans le masque de sous-réseau, comment sauriez-vous si un autre nœud est dans le même sous-réseau que vous?

Disons que vous êtes sur un réseau Ethernet. Nous utilisons l'adressage de classe avec le sous-réseau. Votre adresse IP est 1.2.3.4 et vous voulez atteindre 1.3.1.1. Utilisez-vous ARP pour atteindre cette adresse? Eh bien, cela dépend de savoir si 1.2.3.4 et 1.3.1.1 sont dans le même sous-réseau. Même s'ils sont dans le même réseau, s'ils sont dans des sous-réseaux différents, un routeur doit être utilisé. S'ils sont dans le même sous-réseau, alors ARP devrait être utilisé.

Vous avez donc besoin du masque de sous-réseau si le sous-réseau est utilisé, même avec des réseaux de classe.

Je pense que vous confondez le sous-réseau avec CIDR, en fait. Sans CIDR, même avec le sous-réseau, vous n'avez pas besoin du masque de sous-réseau entre les régions administratives. Mais vous en avez toujours besoin à l'intérieur du réseau!

8voto

Abe Points 93

Un masque de sous-réseau est utilisé pour effectuer des opérations bit à bit sur une adresse IP, en conjonction avec une adresse réseau. Si ma mémoire est bonne, vous prenez une adresse IP et effectuez un ET bit à bit dessus et le masque de sous-réseau pour un réseau donné. Si le résultat équivaut à l'adresse du réseau, alors l'adresse IP est sur ce réseau particulier. Les routeurs qui possèdent des tables de routage d'adresses réseau et de masques de sous-réseau peuvent utiliser des mathématiques binaires simples (qui sont très rapides, voire les plus rapides pour les ordinateurs à gérer) pour déterminer par quelle interface faire sortir un paquet.

4voto

Bill K Points 287

À l'exception de la réponse de @Adrian, je ne suis pas sûr que l'une de ces réponses mentionne réellement POURQUOI nous utilisons le masque au lieu d'une solution plus simple à comprendre - et il a seulement abordé le fait que le masquage est RAPIDE, je veux dire pourquoi ne pas simplement spécifier que vous vous intéressez aux adresses 192.168.1.200-192.168.1.220, ou pourquoi ne pas utiliser des noms comme *.mon.adresse.com pour cela, en nommant simplement chaque ordinateur au lieu de leur attribuer des numéros?

En réalité, vous pourriez maintenant, dans une certaine mesure, supprimer complètement les numéros du routage, la plupart des PC pourraient gérer les types de trafic qu'ils reçoivent, mais il y a toujours un problème sur les appareils à plus grande échelle.

Le filtrage comme celui-ci se produit tout le temps, et il se produit BEAUCOUP. Le masquage peut être effectué matériellement, éliminant complètement le besoin de perdre du temps sur des paquets sans intérêt (qui étaient auparavant 99% des paquets qui transitaient par votre câble, maintenant avec des commutateurs, vous ne devriez pas en voir un seul qui ne soit pas adressé à votre machine, rendant ainsi cet aspect moins pertinent).

Pour une solution aussi simple en termes de matériel, elle est également très flexible. Le même matériel peut router un réseau de classe A entier (10.x.x.x) ou simplement une ou deux adresses IP avec la même implémentation.

Ce n'est pas un remplacement pour aucune des autres réponses, juste un peu plus d'information.

3voto

LawrenceC Points 70381

« Le premier octet spécifie déjà la classe de réseau (1-127 : A, 128-191 : B, 192-223 : C, etc.). »

Il n'y a pas beaucoup de protocoles couramment utilisés aujourd'hui qui respectent cela (voir le commentaire de @Fiasco Labs - RIP est le seul auquel je pense). Donc, cette déclaration dans votre question :

L'adresse IP contient toutes les informations qu'un masque de sous-réseau a, et même plus.

n'est pas vraie pour la grande majorité des protocoles utilisés sur Internet aujourd'hui.

Si vous avez un certain nombre de machines connectées les unes aux autres, et qui communiquent toujours entre elles sans qu'aucun routeur ne soit impliqué, alors le masque de sous-réseau n'est pas vraiment nécessaire (bien que les piles TCP/IP modernes exigent que vous en spécifiiez un).

Les routeurs définissent les bords des (sous-)réseaux. Tout ce qui doit passer par un routeur est sur un réseau différent - et vice versa : tout ce qui doit aller vers un réseau différent doit passer par un routeur.

Le masque de sous-réseau permet à toutes les machines de savoir si le trafic est destiné au réseau actuel ou s'il doit être envoyé à un routeur pour atteindre sa destination. La pile TCP/IP de votre ordinateur enverra son trafic directement à la destination s'il est dans le masque de sous-réseau, sinon elle consulte sa table de routage, et la situation habituelle est qu'elle envoie l'autre trafic à la passerelle par défaut.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X