Le CIDR «supprime-t-il vraiment» les classes d'adresses IP?

20

J'ai encore du mal à comprendre dans quelle mesure le CIDR rend vraiment les classes d'adresses IP obsolètes. Voici ce que j'ai compris jusqu'à présent:

  1. Il est ridiculement inefficace (et impossible aussi) d'attribuer à chaque organisation qui doit adresser plus de 255 hôtes une adresse de classe B, qui pourrait techniquement adresser 65535 hôtes.

  2. Cependant, si une telle organisation devait adresser, disons, environ 700 hôtes, on pourrait simplement attribuer trois adresses réseau (de préférence contiguës) de classe C à cette organisation. Par exemple:

    192.42.42
    192.42.43
    192.42.44
    
  3. Problème: Pour que l' une organisation, les routeurs devraient stocker trois entrées dans leurs tables d'acheminement, qui ne sera pas l' échelle.

  4. Le CIDR résout ce problème en introduisant un résumé / agrégation des routes, permettant au FAI qui a attribué les trois réseaux de classe C à l'organisation d'annoncer un seul préfixe au reste du monde. Par exemple,

    192.42.42.0/21
    

Jusqu'ici tout va bien. Cependant, je n'arrive pas à comprendre pourquoi chaque ressource que je touche affirme que l'adressage avec classe est "une chose du passé". Après tout, le FAI est responsable, disons, les adresses réseau de classe C, et ne les affecter à ses clients. CIDR résout simplement le problème de plusieurs entrées dans les tables de transfert, non? Ainsi, les classes d'adresses IP existent toujours, n'est-ce pas?

L'examen arrive, donc l'aide est très appréciée. : P

Łukasz Bromirski
la source
2
/ 21, c'est huit réseaux de "classe c".
Peter
5
Je suis tenté de dire que c'est une chose du passé car elle fait référence à IPv4
Hagen von Eitzen
@HagenvonEitzen Je suis tenté de souligner que c'est complètement faux dans la réalité pratique.
Courses de légèreté avec Monica
2
C'est une chose du passé car 1993 était il y a 22 ans. Voir RFC 1517, 1518, 1519. Ne faites confiance à aucune ressource qui prétend que les adresses de classe sont pertinentes aujourd'hui ou les traite comme autre chose que des curiosités historiques.
Michael Hampton

Réponses:

22

La délégation d'adresse se produisait en réalité en trois tailles: les délégations de classe A, B et C. seraient données à partir d'une certaine plage d'adresses, les délégations de classe B à partir d'une plage différente, etc. Parce que les différentes classes utilisaient des plages d'adresses différentes, vous pouviez déterminer la classe en regardant la première partie d'une adresse. Et cela a été intégré dans les protocoles de routage.

  • Les délégations de classe A contenaient 16777216 adresses chacune
  • Les délégations de classe B contenaient chacune 65536 adresses
  • Les délégations de classe C contenaient 256 adresses chacune

C'était très inefficace pour les réseaux qui ne correspondaient pas à ces tailles. Un réseau qui avait besoin de 4096 adresses aurait soit seize délégations de classe C (ce qui serait mauvais pour la table de routage globale car chacune d'entre elles devrait être routée séparément: la taille de la classe a été intégrée dans le protocole), soit une classe B délégation (ce qui gaspillerait beaucoup d'adresses).

En 1993, le CIDR a été introduit. Les protocoles ont été ajustés pour pouvoir traiter des préfixes de différentes tailles et il est devenu possible de router (à la fois en interne et en externe) des préfixes comme un / 30 ou un / 21 ou un / 15, etc. etc. Tout ce qui se trouve entre / 0 et / 32 est devenu possible. Les organisations qui avaient besoin de 2048 adresses pouvaient obtenir un / 21: exactement ce dont elles auraient besoin.

La façon dont vous pouvez subdiviser ces adresses en interne était également limitée. Il y avait des règles sur la façon dont vous pouvez créer un sous-réseau. À l'origine, chaque sous-réseau de votre réseau classful devait avoir la même taille. Vous avez besoin d'un sous-réseau avec 128 adresses et d'un autre sous-réseau avec 16 adresses: dommage.

Le masquage de sous-réseau à longueur variable (VLSM) est l'équivalent du réseau interne du CIDR. VLSM existe depuis plus longtemps que CIDR. Il a déjà été mentionné en 1985. Le CIDR étend donc essentiellement le VLSM au routage inter-domaines. Avec VLSM, vos sous-réseaux ne doivent plus tous avoir la même taille. Vous pouvez attribuer un nombre d'adresses différent pour chaque sous-réseau, selon vos besoins.

De nos jours, tout routage sur Internet se fait sans cours. Un préfixe dans la table de routage peut, par coïncidence (ou en raison de l'historique), correspondre à la structure par classes, mais les protocoles ne supposeront plus qu'ils peuvent déduire la longueur du préfixe (masque de sous-réseau) de la première partie de l'adresse. Toutes les longueurs de préfixe sont explicitement communiquées: sans classe.

Dire qu'un FAI est en charge d'un réseau de classe C est également obsolète. Les adresses sont distribuées sans classe par les RIR ( Regional Internet Registries , les organisations chargées de déléguer les adresses aux FAI et aux entreprises avec leurs propres adresses indépendantes).

Les classes d'adresses IPv4 n'existent plus vraiment et ont été dépréciées en 1993. Si vous regardez les anciens protocoles de routage obsolètes, vous pouvez bien sûr toujours voir les hypothèses qu'ils ont faites en fonction de la classe d'adresses, mais c'était il y a 20 ans ...

Sander Steffann
la source
1
Ces "règles" étaient des limitations des protocoles de routage. Tous vos réseaux doivent être de la même taille car le protocole de routage ne portait pas de masque de réseau. (par ex. RIPv1, IGRP)
Ricky Beam
1
Oui, c'est ce que j'ai dit. Le portage de la longueur du préfixe dans les protocoles de routage est la manière dont VLSM et CIDR sont implémentés
Sander Steffann
Ils ne "devinent pas en fonction de l'adresse", ils appliquent un masque de réseau d'interface locale à toute la classe. Par exemple. si vous avez une interface 10.0.0.5/24, tout dans 10/8 sera un / 24.
Ricky Beam
1
C'est le bit VLSM. Le plus classe était qu'ils supposeraient que chaque adresse commençant par 10 appartenait ensemble. Le bit pré-VLSM supposerait que parce que l'interface locale était a / 24, chaque sous-réseau en 10/8 serait a / 24. Le / 24 et le / 8 sont des hypothèses de nos jours. Chaque sous-réseau peut avoir une taille différente et il n'y a aucun moyen de déterminer où se trouve la limite agrégée.
Sander Steffann
1
En plus de ce qui a été dit, les premiers bits de l'adresse IP ont déterminé la classe d'adresses. Premier bit 0 = classe A, deux premiers bits 10 = classe B, trois premiers bits 110 = classe C, etc. Voir aussi en.wikipedia.org/wiki/…
un CVn le
29

l'adressage avec classe est "une chose du passé".

Cela est vrai parce que rien dans l'Internet moderne ne fait un adressage classe [1] . Avec l'adressage par classe, le masque de réseau est une valeur fixe basée sur l'adresse. Dans votre exemple, vous ne pouvez pas «fusionner» trois plages de classe C pour avoir 700 hôtes dans un LAN. Le masque de réseau pour chaque plage est automatiquement de 24 bits.

Le CIDR a corrigé cela en supprimant les règles selon lesquelles l'adresse dicte le masque. Ainsi, un LAN peut être de n'importe quelle taille.

Vous (et beaucoup d'autres personnes) êtes toujours accroché aux mots "Classe C", "Classe B" et "Classe A". Ces constructions n'existent plus; et pas depuis des décennies. Ce que les gens veulent dire lorsqu'ils utilisent le terme, c'est la taille du masque de réseau de 24, 16 et 8 respectivement. Ils ne signifient pas que la sémantique de classe est appliquée.

[1] 10.0.0.1/24 est une configuration non valide dans un système avec classe.

Ricky Beam
la source
1
Je pense que Windows utilise toujours la classe IP de l'adresse comme masque par défaut.
Taemyr
2
Oui, mais ce n'est pas spécifiquement classe. Il s'agit simplement d'appliquer un CIDR par défaut. Non, où Microsoft exige ou spécifie la classe d'adresse IP '
Mike McMahon
@Taemyr Ce n'est pas seulement Windows. Linux dérive le masque par défaut des premiers bits de l'adresse depuis de nombreuses années. C'est toujours le cas avec Ubuntu 14.04. Mais ce n'est qu'une valeur par défaut, qui la plupart du temps doit être remplacée par une valeur différente.
kasperd
15

L'adressage par classe ne prend en charge que 3 masques pour la monodiffusion: / 8, / 16 /, / 24.

CIDR permet au masque d'être n'importe quelle valeur de / 0 à / 32.

Pensez à une série point à point: cela aurait gaspillé une classe C / 24 (256 xIP) avec une configuration classe auparavant; avec CIDR, il n'a besoin que de / 30 (4 xIP) ou / 31 (2 xIP).

La plupart des FAI n'attribueront désormais qu'un / 28 à un client fournissant 14 IP, voire moins.

Les deux modes de fonctionnement ne sont pas compatibles car l'un (classe) devine le masque de l'IP, et l'autre (CIDR) le spécifie avec précision.

Voir l'article Wikipedia «Classful Network» .

Pieter
la source
Merci d'avoir consacré du temps à rédiger une réponse. Cependant, je ne vois pas comment votre réponse se rapporte à ma question.
5
Sa réponse est parfaite. Lorsque vous comprendrez la différence entre sans classe et avec classe, la réponse aura un sens.
Ricky Beam
@baerenfaenger Voici votre question telle que je l'ai comprise. "Je n'arrive pas à comprendre pourquoi ... l'adressage avec classe est" une chose du passé ". ... Le CIDR corrige simplement le problème des entrées multiples dans les tables de transfert, à droite "Ainsi, les classes d'adresses IP sont toujours là, n'est-ce pas?"
Pieter
Cependant, dans IPv4, un réseau de sous-réseau / 31 ne peut contenir aucune adresse IP, 0 est Les deux sont réservés à l'ID du réseau lui-même et à la diffusion sur le réseau.
ratchet freak
2
@ratchet freak sauf pour les liens ptp, là vous n'avez pas besoin d'une IP de diffusion, et pouvez vous en sortir avec / 31 voir tools.ietf.org/html/rfc3021
Pieter
5

Comme de nombreuses réponses l'expliquent déjà, les classes appartiennent au passé car elles n'autorisent pas les masques de sous-réseau autres que / 8, / 16 et / 24.

Ces masques de sous-réseau spécifiques sont toujours très populaires, en particulier / 24, car ils sont les plus faciles pour nous, les humains. Pour ces masques, la fin de la partie de sous-réseau de l'adresse s'aligne avec un point dans l'adresse IP (décimale en pointillés). Ainsi, il est visuellement clair si deux adresses IP se trouvent dans le même sous-réseau ou non, aucun calcul n'est requis.

C'est pourquoi les termes de classe A, B et C persistent, ils s'alignent toujours avec les masques de sous-réseau les plus courants. Mais ils n'ont plus de sens, et dire 10.11.12.0/24 est une classe C est tout simplement faux. Le premier octet d'une classe C était par définition compris entre 192 et 223.

Gerben
la source
2

Dans le routage Classful , le masque de réseau est impliqué par les bits supérieurs de l'adresse et n'est pas stocké dans les tables de routage; la classe est une propriété de chaque adresse, pas seulement de la topologie de routage. Un réseau de classe C ne peut pas être un sous-ensemble d'un réseau de classe B, car les bits supérieurs ne peuvent pas correspondre aux deux.

Votre organisation hypothétique avec 3 réseaux de classe C devrait faire attention aux ordinateurs qui ont des adresses dans lesquels des 3 réseaux. Avec le routage CIDR, ils peuvent utiliser un masque de réseau qui permet à tous leurs ordinateurs d'être dans le même sous-réseau.

ShadSterling
la source
1

Le seul endroit où j'ai vu un comportement de classe réel ces dernières années est dans le protocole de tunneling point à point. PPTP Beaucoup considéreraient cela comme obsolète en soi, mais il y en a certainement encore beaucoup en usage.

Lorsque le client se connecte à un serveur, le tunnel obtient soit une route par défaut, soit une route vers le réseau classful du serveur. https://technet.microsoft.com/en-us/library/cc779919%28v=ws.10%29.aspx

Il y avait quelques réseaux où cela était en fait un problème, aussi récemment qu'en 2016.

Je crois qu'il existe des solutions de contournement avec DHCP et divers scripts de module complémentaire, et en fait pour les routes dans l'autre sens. Si possible, utilisez un protocole de tunneling différent qui prend mieux en charge les routes.

Sincères amitiés,

Jonathan.

jonathanjo
la source
0

Comme vous l'avez correctement décrit, l'adressage classfull n'est pas efficace par rapport à l'adressage sans classe, car beaucoup d'adresses IP restent gaspillées à l'intérieur des sous-réseaux avec l'adressage classfull.

Je n'arrive pas à comprendre pourquoi chaque ressource que je touche affirme que l'adressage avec classe est "une chose du passé"

Il est vrai que les adresses IP peuvent gérer un réseau de classe C, mais ce n'est pas vrai pour tous les FAI. De plus, à l'époque précédente, l'adressage complet de classe était utilisé dans tous les sous-réseaux (même pour les sous-réseaux domestiques ou les sous-réseaux d'entreprise), où de nos jours seul l'adressage sans classe est utilisé (sinon NAT).

C'est la raison pour laquelle l'adressage complet est une chose du passé.

Dimos
la source