Entfernt CIDR wirklich IP-Adressklassen?

20

Ich habe immer noch Schwierigkeiten zu verstehen, inwieweit CIDR IP-Adressklassen wirklich überflüssig macht. Folgendes habe ich bisher verstanden:

  1. Es ist lächerlich ineffizient (und auch unmöglich), jeder Organisation, die mehr als 255 Hosts adressieren muss, eine Klasse-B-Adresse zuzuweisen, die technisch 65535 Hosts adressieren könnte.

  2. Wenn eine solche Organisation jedoch beispielsweise ungefähr 700 Hosts adressieren muss, kann man dieser Organisation einfach drei (vorzugsweise zusammenhängende) Klasse-C-Netzwerkadressen zuweisen. Z.B:

    192.42.42
    192.42.43
    192.42.44
    
  3. Problem: Für diese eine Organisation müssten Router drei Einträge in ihren Weiterleitungstabellen speichern , die sich nicht skalieren lassen.

  4. CIDR löst dieses Problem durch die Einführung von Routenzusammenfassung / -aggregation, sodass der ISP, der der Organisation die drei Klasse-C-Netzwerke zugewiesen hat, nur ein Präfix für den Rest der Welt bewerben kann . Z.B,

    192.42.42.0/21
    

So weit, ist es gut. Ich kann jedoch einfach nicht verstehen, warum jede Ressource, die ich berühre, behauptet, dass klassisches Adressieren "eine Sache der Vergangenheit ist". Immerhin ist der ISP beispielsweise für Netzwerkadressen der Klasse C zuständig und weist diese seinen Kunden zu. CIDR behebt nur das Problem mehrerer Einträge in den Weiterleitungstabellen, oder? Es gibt also immer noch IP-Adressklassen, oder?

Die Prüfung steht vor der Tür, daher wird Hilfe sehr geschätzt. : P

Łukasz Bromirski
quelle
2
/ 21 besteht aus acht "Klasse-C" -Netzwerken.
Peter
5
Ich bin versucht zu sagen, dass dies der Vergangenheit angehört, da es sich um IPv4 handelt
Hagen von Eitzen,
@HagenvonEitzen Ich bin versucht darauf hinzuweisen, dass das in der praktischen Realität völlig unwahr ist.
Leichtigkeit Rennen mit Monica
2
Das gehört der Vergangenheit an, denn 1993 war 22 Jahre her. Siehe RFC 1517, 1518, 1519. Vertrauen Sie keiner Ressource, die behauptet, dass klassische Adressen heute relevant sind, oder behandeln Sie sie als alles andere als historische Kuriositäten.
Michael Hampton

Antworten:

22

Die Adressdelegation wurde früher in drei Größen durchgeführt: Klasse A, B und C. Delegationen der Klasse A wurden aus einem bestimmten Adressbereich, Delegationen der Klasse B aus einem anderen Bereich usw. vergeben Klasse, indem Sie den ersten Teil einer Adresse betrachten. Und das wurde in die Routing-Protokolle eingebaut.

  • Delegationen der Klasse A enthielten jeweils 16777216 Adressen
  • Delegationen der Klasse B enthielten jeweils 65536 Adressen
  • Delegationen der Klasse C enthielten jeweils 256 Adressen

Dies war für Netzwerke, die nicht zu diesen Größen passten, sehr ineffizient. Ein Netzwerk, das 4096 Adressen benötigte, würde entweder sechzehn Klasse-C-Delegierungen erhalten (was für die globale Routing-Tabelle schlecht wäre, da jede von ihnen separat geroutet werden müsste: Die Klassengröße wurde in das Protokoll integriert) oder sie würden eine Klasse B erhalten Delegation (die viele Adressen verschwenden würde).

1993 wurde CIDR eingeführt. Die Protokolle wurden angepasst, um mit Präfixen unterschiedlicher Größe umgehen zu können, und es wurde möglich, Präfixe wie / 30 oder / 21 oder / 15 usw. (sowohl intern als auch extern) zu routen. Es wurde alles zwischen / 0 und / 32 möglich. Unternehmen, die 2048 Adressen benötigten, konnten eine / 21 erhalten: genau das, was sie benötigen würden.

Die Art und Weise, wie Sie diese Adressen intern unterteilen konnten, war ebenfalls begrenzt. Es gab Regeln für das Subnetz. Ursprünglich musste jedes Subnetz in Ihrem klassischen Netzwerk dieselbe Größe haben. Sie benötigen ein Subnetz mit 128 Adressen und ein weiteres Subnetz mit 16 Adressen: schade.

VLSM (Variable Length Subnet Masking) ist das netzwerkinterne Äquivalent zu CIDR. VLSM existiert länger als CIDR. Es wurde bereits 1985 erwähnt. Daher dehnt CIDR VLSM grundsätzlich auf das Routing zwischen Domänen aus. Mit VLSM müssen Ihre Subnetze nicht mehr alle gleich groß sein. Sie können für jedes Subnetz je nach Bedarf eine andere Anzahl von Adressen zuweisen.

Heutzutage wird das Routing im Internet ohne Unterricht durchgeführt. Ein Präfix in der Routingtabelle kann zufällig (oder aufgrund des Verlaufs) mit der Klassenstruktur übereinstimmen, Protokolle gehen jedoch nicht mehr davon aus, dass sie die Präfixlänge (Subnetzmaske) aus dem ersten Teil der Adresse ableiten können. Alle Präfixlängen werden explizit mitgeteilt: klassenlos.

Zu behaupten, ein ISP sei für ein Class-C-Netzwerk verantwortlich, ist ebenfalls überholt. Adressen werden von den RIRs ( Regional Internet Registries , den Organisationen, die für die Übertragung von Adressen an ISPs und Unternehmen mit ihren eigenen unabhängigen Adressen verantwortlich sind) völlig klassenlos verteilt .

IPv4-Adressklassen gibt es wirklich nicht mehr und wurden 1993 veraltet. Wenn Sie sich alte veraltete Routing-Protokolle ansehen, können Sie natürlich immer noch die Annahmen sehen, die sie basierend auf der Adressklasse getroffen haben, aber das war vor 20 Jahren ...

Sander Steffann
quelle
1
Diese "Regeln" waren Einschränkungen von Routing-Protokollen. Alle Ihre Netzwerke müssen gleich groß sein, da das Routing-Protokoll keine Netzmaske enthielt. (zB RIPv1, IGRP)
Ricky Beam
1
Ja, das habe ich gesagt. Durch das Tragen von Präfixlängen in Routing-Protokollen werden VLSM und CIDR implementiert
Sander Steffann,
Sie raten nicht anhand der Adresse, sondern wenden eine lokale Schnittstellennetzmaske auf die gesamte Klasse an. Z.B. Wenn Sie eine 10.0.0.5/24-Schnittstelle haben, ist alles in 10/8 ein / 24.
Ricky Beam
1
Das ist das VLSM-Bit. Das klasse war, dass sie davon ausgehen würden, dass jede Adresse, die mit 10 beginnt, zusammengehört. Das Pre-VLSM-Bit würde annehmen, dass jedes Subnetz in 10/8 ein / 24 ist, da die lokale Schnittstelle ein / 24 ist. Sowohl die / 24 als auch die / 8 sind heutzutage Annahmen. Jedes Subnetz kann eine andere Größe haben, und es gibt keine Möglichkeit, festzustellen, wo sich die Aggregatgrenze befindet.
Sander Steffann
1
Zusätzlich zu dem Gesagten bestimmten die ersten Bits der IP-Adresse die Adressklasse. Erstes Bit 0 = Klasse A, erste zwei Bits 10 = Klasse B, erste drei Bits 110 = Klasse C usw. Siehe auch en.wikipedia.org/wiki/…
ein Lebenslauf vom
29

klassisches Adressieren gehört der Vergangenheit an.

Das ist wahr , weil nichts in dem modernen Internet nicht classful Adressierung [1] . Bei klassischer Adressierung ist die Netzmaske ein fester Wert, der auf der Adresse basiert. In Ihrem Beispiel können Sie drei Klasse-C-Bereiche nicht "zusammenführen", um 700 Hosts in einem LAN zu haben. Die Netzmaske für jeden Bereich beträgt automatisch 24 Bit.

CIDR hat dies behoben, indem die Regeln abgeschafft wurden, nach denen die Adresse die Maske vorgibt. Ein LAN kann also beliebig groß sein.

Sie (und viele andere Leute) sind immer noch mit den Worten "Klasse C", "Klasse B" und "Klasse A" verbunden. Diese Konstrukte existieren nicht mehr; und seit Jahrzehnten nicht mehr. Was für Menschen bedeuten , wenn sie den Begriff ist die Netzmaske Größe von 24 verwenden, 16 bzw. 8. Sie bedeuten nicht, dass die Klassensemantik angewendet wird.

[1] 10.0.0.1/24 ist eine ungültige Konfiguration in einem klassischen System.

Ricky Beam
quelle
1
Ich denke, Windows verwendet immer noch die IP-Klasse der Adresse als Standardmaske.
Taemyr,
2
Ja, aber es ist nicht besonders klassisch. Es wird nur ein Standard-CIDR angewendet. Nein, wo Microsoft IP-Adressklasse erfordert oder angibt '
Mike McMahon
@Taemyr Es ist nicht nur Windows. Linux leitet die Standardmaske seit vielen Jahren aus den ersten Bits der Adresse ab. Dies ist bei Ubuntu 14.04 immer noch der Fall. Dies ist jedoch nur eine Standardeinstellung, die meistens mit einem anderen Wert überschrieben werden muss.
Kasperd
15

Die klassische Adressierung unterstützt nur 3 Masken für Unicast: / 8, / 16 /, / 24.

Mit CIDR kann die Maske einen beliebigen Wert von / 0 bis / 32 annehmen.

Stellen Sie sich eine Punkt-zu-Punkt-Serie vor: Das hätte eine Klasse C / 24 (256 xIPs) mit einem klassischen Setup verschwendet. Bei CIDR werden nur / 30 (4 xIPs) oder / 31 (2 xIPs) benötigt.

Die meisten ISPs weisen einem Kunden, der 14 IPs oder noch weniger bereitstellt, nur noch eine / 28 zu.

Die beiden Betriebsmodi sind nicht kompatibel, da einer (klassisch) die Maske von der IP errät und der andere (CIDR) sie genau spezifiziert.

Siehe den Wikipedia-Artikel „Classful Network“ .

Pieter
quelle
Vielen Dank, dass Sie sich die Zeit genommen haben, eine Antwort zu schreiben. Ich verstehe jedoch in keiner Weise, in welchem ​​Zusammenhang Ihre Antwort zu meiner Frage steht.
5
Seine Antwort ist genau richtig. Wenn Sie den Unterschied zwischen klassenlos und klassenvoll verstehen, ist die Antwort sinnvoll.
Ricky Beam
@baerenfaenger Hier ist Ihre Frage, wie ich sie verstanden habe: "Ich kann einfach nicht verstehen, warum ... klassisches Adressieren" der Vergangenheit angehört. ... CIDR behebt nur das Problem mehrerer Einträge in den Weiterleitungstabellen, richtig "IP-Adressklassen gibt es also immer noch, oder?"
Pieter
In IPv4 kann ein / 31-Subnetz jedoch keine IP-Adressen enthalten, 0 ist. Beide sind für die ID des Netzes selbst und die Übertragung an das Netz reserviert.
Ratschenfreak
2
@ratchet Freak außer für ptp-Links, da Sie keine Broadcast-IP benötigen und mit / 31 durchkommen
Pieter
5

Wie viele Antworten bereits erklären, gehören Klassen der Vergangenheit an, da sie keine anderen Subnetzmasken als / 8, / 16 und / 24 zulassen.

Diese speziellen Subnetzmasken sind nach wie vor sehr beliebt, insbesondere / 24, da sie für uns Menschen am einfachsten sind. Bei diesen Masken wird das Ende des Teilnetzes der Adresse mit einem Punkt in der IP-Adresse (Punkt-Dezimal) angezeigt. Somit ist visuell klar, ob sich zwei IP-Adressen im selben Subnetz befinden oder nicht, es sind keine Berechnungen erforderlich.

Aus diesem Grund bleiben die Begriffe der Klassen A, B und C erhalten und stimmen mit den am häufigsten verwendeten Subnetzmasken überein. Aber sie ergeben keinen Sinn mehr und es ist einfach falsch zu sagen, dass 10.11.12.0/24 eine Klasse C ist. Das erste Oktett einer C-Klasse lag per Definition zwischen 192 und 223.

Gerben
quelle
2

Beim Classful-Routing wird die Netzmaske durch die obersten Bits der Adresse impliziert und nicht in Routingtabellen gespeichert. Die Klasse ist eine Eigenschaft jeder Adresse und nicht nur der Routingtopologie. Ein Klasse-C-Netzwerk kann keine Teilmenge eines Klasse-B-Netzwerks sein, da die oberen Bits nicht mit beiden übereinstimmen können.

Ihre hypothetische Organisation mit 3 Klasse-C-Netzwerken müsste darauf achten, welche Computer Adressen in welchem ​​der 3 Netzwerke haben. Beim CIDR-Routing können sie eine Netzmaske verwenden, mit der sich alle Computer im selben Subnetz befinden.

ShadSterling
quelle
1

Der einzige Ort, an dem ich in den letzten Jahren tatsächlich klassisches Verhalten gesehen habe, ist das Punkt-zu-Punkt-Tunnelprotokoll. PPTP Viele halten dies für veraltet, aber es wird sicherlich noch viel davon verwendet.

Wenn der Client eine Verbindung zu einem Server herstellt, erhält der Tunnel entweder eine Standardroute oder eine Route zum klassischen Netzwerk des Servers. https://technet.microsoft.com/en-us/library/cc779919%28v=ws.10%29.aspx

Hatte ein paar Netzwerke, in denen dies tatsächlich ein Problem war, erst 2016.

Ich glaube, es gibt Workarounds mit DHCP und verschiedenen Add-On-Skripten und zwar für Routen in die andere Richtung. Verwenden Sie nach Möglichkeit ein anderes Tunnelprotokoll, das Routen besser unterstützt.

Mit freundlichen Grüßen,

Jonathan.

Jonathanjo
quelle
0

Wie Sie richtig beschrieben haben, ist eine klassenübergreifende Adressierung im Vergleich zur klassenlosen Adressierung nicht effizient, da innerhalb der Subnetze mit einer klassenübergreifenden Adressierung viele IP-Adressen verschwendet werden.

Ich kann einfach nicht verstehen, warum jede Ressource, die ich berühre, behauptet, dass klassisches Adressieren "eine Sache der Vergangenheit ist"

Es ist wahr, dass IPs ein C-Klasse-Netzwerk handhaben, aber dies gilt nicht für alle ISPs. Darüber hinaus wurde in der Vergangenheit in allen Subnetzen (auch in Heim- oder Unternehmenssubnetzen) eine erstklassige Adressierung verwendet, wobei heutzutage nur noch eine klassenlose Adressierung verwendet wird (wenn nicht NAT).

Dies ist der Grund, warum klasse Adressierung eine Sache aus der Vergangenheit ist.

Dimos
quelle