Zum Inhalt springen

Classless Inter-Domain Routing

Aus Foxwiki

Classless Inter-Domain Routing (CIDR) beschreibt ein Verfahren zur effizienteren Nutzung des bestehenden 32-Bit-IP-Adress-Raumes für IPv4.

Beschreibung

Zu 10.10.1.32/27 gehört 10.10.1.44, aber nicht 10.10.1.90

Es wurde 1993 eingeführt (RFC 1518, RFC 1519, RFC 4632), um die Größe von Routingtabellen zu reduzieren und um die verfügbaren Adressbereiche besser auszunutzen.

Mit CIDR entfällt die feste Zuordnung einer IPv4-Adresse zu einer Netzklasse, aus welcher aus den ersten beiden Bit des ersten Oktetts die Präfixlänge der jeweiligen Netzklasse hervorging.

  • Die Präfixlänge ist mit CIDR frei wählbar und muss deshalb beim Aufschreiben eines IP-Subnetzes mit angegeben werden.
  • Dazu verwendet man häufig eine Netzmaske.

Bei CIDR führte man als neue Notation so genannte Suffixe ein.

  • Das Suffix gibt die Anzahl der 1-Bits in der Netzmaske an.
  • Diese Schreibform, z. B. 172.17.0.0/17, ist viel kürzer und im Umgang einfacher als die Dotted decimal notation wie 172.17.0.0/255.255.128.0 und ebenfalls eindeutig.

Bei IPv6 ist die Notation gleich wie beim CIDR in IPv4 und besteht aus IPv6-Adresse und Präfixlänge (z. B. 2001:0DB8:0:CD30::1/60).

Beispiele

  • Die Notation 192.168.2.7/24 entspricht der Adresse 192.168.2.7 mit der Netzmaske 255.255.255.0: In binärer Schreibweise ist die Netzmaske 11111111.11111111.11111111.00000000 - es gibt also 3 · 8 = 24 gesetzte Bits, genau wie im Suffix angegeben.
  • Deshalb beschreiben 192.168.2.0/24, 192.168.2.1/24, 192.168.2.2/24, ... 192.168.2.254/24 und 192.168.2.255/24 alle dasselbe 24 Bit lange Präfix und damit dasselbe IP-Subnetz.
  • Es ist üblich, IP-Subnetze mit der Netzadresse und dem CIDR-Suffix aufzuschreiben; hier 192.168.2.0/24.
  • 10.43.8.67/28 entspricht der Adresse 10.43.8.67 mit der Netzmaske 255.255.255.240: In binärer Schreibweise ist die Netzmaske 11111111.11111111.11111111.11110000 - es gibt also 3 · 8 + 4 = 28 gesetzte Bits, wieder genau wie im Suffix angegeben.
  • Das IPv4-Netz, in dem der Host 10.43.8.67 liegt, geht somit von 10.43.8.64 bis 10.43.8.79 und wird kurz als 10.43.8.64/28 notiert, wobei nur 10.43.8.65 bis 10.43.8.78 für Hosts genutzt werden können.
  • Die Broadcast-Adresse ist 10.43.8.79, die Netz-Adresse 10.43.8.64 und das Subnetz kann 14 Hosts adressieren.

Berechnung

IPv4-Adresse = 10.43.8.67/28 (32-28= 4 Bit (Netzmaske: 11111111.11111111.11111111.11110000 (mit 4 Stellen im Dualsystem lassen sich 16 unterschiedliche Werte darstellen, nämlich 0-15)) → 16 Adressen − (Broadcast- und Netzadresse) = 14 IPv4-Adressen zu vergeben.)

Netzmaske = 255.255.255.240

Beschreibung Berechnung (Dualsystem) Binäre Darstellung der Adressen Dezimale Darstellung
IPv4-Adresse Vorgegeben/Ausgangsdefinition 00001010.00101011.00001000.01000011 10.43.8.67
Netzmaske Vorgegeben/Ausgangsdefinition 11111111.11111111.11111111.11110000 255.255.255.240
Directed Broadcast-Adresse ODER-Verknüpfung von IPv4-Adresse und negierter Netzmaske 00001010.00101011.00001000.01001111 10.43.8.79
Netzadresse (Netz-ID) UND-Verknüpfung von IPv4-Adresse und Netzmaske 00001010.00101011.00001000.01000000 10.43.8.64
Position im Netz (Host-ID) UND-Verknüpfung von IPv4-Adresse und negierter Netzmaske 00000000.00000000.00000000.00000011 3
Adressbereich 10.43.8.64 bis 10.43.8.79
IPv4-Adressen für Endgeräte 10.43.8.65 bis 10.43.8.78
da die erste und letzte Adresse in einem Adressbereich jeweils die Netz- und Broadcast-Adresse ist und somit an kein Endgerät vergeben werden kann.

Sonstiges

CIDR bietet außerdem die Basis für die Durchführung von route aggregation.
  • Dabei können mehrere spezifischere Routen zu einem weniger spezifischen Eintrag in der Routing-Tabelle zusammengefasst werden, welche sich hierdurch verkleinert.
  • Neben der Reduzierung der Routing-Tabellengröße erzielt man mit Aggregierung einen Stabilitätsgewinn, da die aggregierte Route keine Zustandsinformationen der spezifischeren Leitweginformationen enthält.
  • Beispiel: die folgenden 256 Subnetze 10.1.1.0/24, 10.1.2.0/24, ..., 10.1.255.0/24 haben alle das Präfix 10.1 gemeinsam und lassen sich somit zu 10.1.0.0/16 aggregieren.
  • Diese Summary-Route kann im Netzwerk an Stellen bekannt gegeben werden, bei denen Zustands-Informationen über die spezifischeren Routen nicht benötigt werden.
  • Dementsprechend wirken sich Instabilitäten ("Link Flapping") von spezifischeren Routen nicht auf ihr Aggregat aus und führen folglich bei Routern, denen nur das Aggregat bekannt ist, auch zu keiner Re-Kalkulation der Routing-Tabelle im Falle von Zustandsänderung der Aggregatsmitglieder.
  • Dasselbe Prinzip ist vom Telefonnetz bekannt - so benötigt z. B. eine Vermittlungsstelle in Karlsruhe keine genauen Information über den Anschlussteilnehmer 040/123456 im Hamburger Ortsnetz, sondern nur die Information, in welche Richtung Gespräche der "aggregierten Route" 040 allgemein vermittelt werden sollen.

Die Routing-Protokolle BGP, IS-IS, RIP v2 (RIP II) (nicht RIP/RIP I) und OSPF und das Cisco-proprietäre EIGRP haben CIDR implementiert.

Die CIDR-Notation hat sich inzwischen auf breiter Basis für die Referenzierung von IP-Netzen auch in Applikationssoftware (z. B. in IRC-Daemons) durchgesetzt.

  • Somit ist es möglich, eine Zugriffsliste, die alle IPv4-Adressen von 172.25.0.0 bis 172.25.255.255 betreffen soll, kurz als 172.25.0.0/16 zu schreiben.

Gelegentlich werden dabei niederwertige Oktette, die null sind, weggelassen, so dass für 172.25.0.0/16 auch 172.25/16 notiert wird - allerdings ist dies nicht im RFC 4632 verankert und darum nicht empfehlenswert.

Übersicht für IPv4

Die folgende Tabelle zeigt die Anzahl IPv4-Adressen pro Subnetz sowie die für Hosts nutzbaren Adressen, das heißt abzüglich der Adressen eines Bereichs für die Netzadresse (alle Bit im Hostteil auf null, also die kleinste Adresse im Bereich) und die Broadcast-Adresse (alle Bit im Hostteil auf eins, also die größte Adresse im Bereich).

Allgemein gilt: Anzahl der IPv4-Adressen=2(32Länge der Netzadresse)

Notation Anzahl der Adressen Nutzbare
Host-Adressen
Subnetzmaske
dezimal
Subnetzmaske
binär
Kommentar
/0 4.294.967.296
0.0.0.0 00000000.00000000.00000000.00000000 Vollständiger IPv4-Adressraum
/1 2.147.483.648
128.0.0.0 10000000.00000000.00000000.00000000
/2 1.073.741.824
192.0.0.0 11000000.00000000.00000000.00000000
/3 536.870.912
224.0.0.0 11100000.00000000.00000000.00000000
/4 268.435.456
240.0.0.0 11110000.00000000.00000000.00000000
/5 134.217.728
248.0.0.0 11111000.00000000.00000000.00000000
/6 67.108.864
252.0.0.0 11111100.00000000.00000000.00000000
/7 33.554.432
254.0.0.0 11111110.00000000.00000000.00000000
/8 16.777.216 16.777.214 255.0.0.0 11111111.00000000.00000000.00000000 "Class A"-Größe
/9 8.388.608 (128x65.536) 8.388.606 255.128.0.0 11111111.10000000.00000000.00000000
/10 4.194.304 (64x65.536) 4.194.302 255.192.0.0 11111111.11000000.00000000.00000000
/11 2.097.152 (32x65.536) 2.097.150 255.224.0.0 11111111.11100000.00000000.00000000
/12 1.048.576 (16x65.536) 1.048.574 255.240.0.0 11111111.11110000.00000000.00000000
/13 524.288 (8x65.536) 524.286 255.248.0.0 11111111.11111000.00000000.00000000
/14 262.144 (4x65.536) 262.142 255.252.0.0 11111111.11111100.00000000.00000000
/15 131.072 (2x65.536) 131.070 255.254.0.0 11111111.11111110.00000000.00000000
/16 65.536 (1x65.536) 65.534 255.255.0.0 11111111.11111111.00000000.00000000 "Class B"-Größe
/17 32.768 (128x256) 32.766 255.255.128.0 11111111.11111111.10000000.00000000
/18 16.384 (64x256) 16.382 255.255.192.0 11111111.11111111.11000000.00000000
/19 8.192 (32x256) 8.190 255.255.224.0 11111111.11111111.11100000.00000000
/20 4.096 (16x256) 4.094 255.255.240.0 11111111.11111111.11110000.00000000
/21 2.048 (8x256) 2.046 255.255.248.0 11111111.11111111.11111000.00000000
/22 1.024 (4x256) 1.022 255.255.252.0 11111111.11111111.11111100.00000000
/23 512 (2x256) 510 255.255.254.0 11111111.11111111.11111110.00000000
/24 256 (1x256) 254 255.255.255.0 11111111.11111111.11111111.00000000 "Class C"-Größe
/25 128 (128x1) 126 255.255.255.128 11111111.11111111.11111111.10000000
/26 64 (64x1) 62 255.255.255.192 11111111.11111111.11111111.11000000
/27 32 (32x1) 30 255.255.255.224 11111111.11111111.11111111.11100000
/28 16 (16x1) 14 255.255.255.240 11111111.11111111.11111111.11110000
/29 8 (8x1) 6 255.255.255.248 11111111.11111111.11111111.11111000
/30 4 (4x1) 2 255.255.255.252 11111111.11111111.11111111.11111100 Verbindungsnetz zwischen zwei Routern
/31 2 (2x1) 0 (2) 255.255.255.254 11111111.11111111.11111111.11111110 Verbindungsnetz zwischen zwei Routern
/32 1 (1x1) 0 (1) 255.255.255.255 11111111.11111111.11111111.11111111 einzelner Host

Adressbereiche der Größe /0 bis /7 werden in der Praxis nicht als einzelnes Subnetz verwendet, sondern in mehrere Subnetze unterteilt. /31-Netze enthalten keine nutzbaren Host-Adressen, während /32 kein Subnetz, sondern immer einen einzelnen Host adressiert.

  • Hierbei gibt es auch Ausnahmen.
  • So wurde im RFC 3021 vorgeschlagen, dass /31-Netze genutzt werden, um Point-to-point-Verbindungen zu etablieren.
  • Dies wurde unter anderem von der Firma Cisco implementiert.
  • Des Weiteren ist es unter bestimmten Umständen möglich, die Netz- und Broadcastadresse für Hosts zu verwenden.

Seit der Einführung von CIDR ist classful routing zwar praktisch abgeschafft, beispielsweise ein /24-Netz als "Class C" zu bezeichnen ist jedoch, zumindest umgangssprachlich, erhalten geblieben - obwohl diese Bezeichnung zumeist sogar falsch ist, da mittlerweile ehemalige Class A- oder Class B-Netze als kleinere Allokationen/Assignments zugeteilt werden und man somit ggf.

  • von einem "Class C"-großen Netz spricht, was nach klassischer Notation ein Subnetz eines Class-A- oder B-Netzes wäre.




Anhang

Siehe auch

Dokumentation

RFC
RFC Titel
950 Internet Standard Subnetting Procedure
1338 Supernetting: an Address Assignment and Aggregation Strategy
1518 An Architecture for IP Address Allocation with CIDR (HISTORISCH)
1519 Classless Inter-Domain Routing (CIDR): an Address Assignment and Aggregation Strategy (HISTORISCH)
3021 Using 31-Bit Prefixes on IPv4 Point-to-Point Links
4632 Classless Inter-domain Routing (CIDR): The Internet Address Assignment and Aggregation Plan
4291 IP Version 6 Addressing Architecture enthält im Kapitel 2.3 die Schreibweise bei IPv6

Links

Weblinks

  1. https://de.wikipedia.org/wiki/Classless_Inter-Domain_Routing


TMP

CIDR

Verwendung der Subnetzmaske und CIDR

Die Subnetzmaske maskiert den Netzwerkanteil und den Host-Anteil einer IP-Adresse

  • Mit ihrer Hilfe kann ein Computer ermitteln, in welchem Netzwerk bzw. Subnetz er sich selbst befindet
  • Er kann nur direkt mit anderen Computern kommunizieren, die sich in demselben Netzwerk oder Subnetz befinden
  • Die Ermittlung der Netzwerkzugehörigkeit geschieht über eine logische UND-Verknüpfung der IP-Adresse mit der Subnetzmaske
  • Für Subnetzmasken sind zwei Notationsweisen üblich
  • Die eine davon ist, genau wie die IP-Adressen selbst, eine Dotted-Quad-Schreibweise, beispielsweise 255.255.255.0 für eine Standard-C-Klasse

Mögliche Werte

Da Subnetzmasken von links nach rechts inkrementell aufgefüllt werden, sind pro Oktett nur neun verschiedene Werte möglich

Binär Dezimal
0000 0000 0
1000 0000 128
1100 0000 192
1110 0000 224
1111 0000 240
1111 1000 248
1111 1100 252
1111 1110 254
1111 1111 255
CIDR-Notation (Classless Inter-Domain Routing) von Subnetzmasken

Bei dieser Schreibweise wird einfach nur die Anzahl der gesetzten Bit einer Subnetzmaske angegeben

  • Ein Standard-C-Klasse-Netz wird also so ausgedrückt: 192.168.100.0/24 (255.255.255.0, wobei jede einzelne 255 acht gesetzten Bit entspricht)
  • Die Ermittlung der Netzwerkmitgliedschaft eines Hosts erfolgt über eine logische UND-Verknüpfung.
  • Das Ergebnis einer UND-Verknüpfung ist immer dann 1, wenn beide verknüpften Werte ebenfalls 1 sind.
  • In allen anderen Fällen ist das Ergebnis der Verknüpfung 0.

Beispiele

Beispiel 1

Zur Verdeutlichung soll die Netzwerkmitgliedschaft eines Computers mit der Adresse 192.168.150.9/24 ermittelt werden: Für die Berechnung müssen sowohl IP-Adresse als auch Subnetzmaske zunächst in Binärschreibweise umgewandelt werden:

Dezimal Binär
Host-Adresse 192.168.150.9 1100.0000.1010.1000.1001.0110.0000.1001
Subnetzmaske 255.255.255.0 1111.1111.1111.1111.1111.1111.0000.0000
Netzadresse 192.168.150.0 1100.0000.1010.1000.1001.0110.0000.0000

Die logische UND-Verknüpfung ergab, dass sich der Computer in dem Netzwerk mit der IP-Adresse 192.168.150.0 befindet

  • Der Netzwerkanteil der IP-Adresse erstreckt sich in diesem Fall über die ersten drei Oktette (24 Bit), weil die Subnetzmaske eben falls eine Länge von 24 Bit aufweist.

Beispiel 2

Hier wird eine Nicht-Standardsubnetzmaske verwendet, um die Unterteilung eines Netzes in Subnetze zu verdeutlichen

  • Ein Host mit der Adresse 192.168.4.147/26 soll ein Datenpaket an einen anderen Host mit der IP-Adresse 192.168.4.116 senden
  • Die Subnetzmaske des Ziel-Hosts ist einer sendenden Station nie bekannt.
  • Das ist auch nicht nötig, denn wenn sich der Ziel-Host in demselben Subnetz befindet wie die sendende Station, dann kann das Paket direkt zugestellt werden
  • Im anderen Fall muss das Paket zunächst an einen Router (eventuell Standardgateway) geschickt werden, der sich dann um die Weiterleitung kümmert. Es müssen zwei Berechnungen erfolgen:
Quell-Host
Dezimal Binär
Host-Adresse 192.168.004.147 11000000.10101000.00000100.10010011
Subnetzmaske 255.255.255.192 11111111.11111111.11111111.11000000
Netzadresse 192.168.004.128 11000000.10101000.00000100.10000000
Ziel-Host
Dezimal Binär
Host-Adresse 192.168.004.116 11000000.10101000.00000100.01110100
Subnetzmaske 255.255.255.192 11111111.11111111.11111111.11000000
Netzadresse 192.168.004.064 11000000.10101000.00000100.01000000
Der Quell-Host befindet sich selbst laut logischer UND-Verknüpfung mit der Subnetzmaske im Netzwerk 192.168.4.128
  • Diese Adresse darf in diesem Fall, da das ursprüngliche Netz in Subnetze unterteilt wurde, nicht mehr für einen Host verwendet werden
  • Die Subnetzmaske für den Ziel-Host wurde hier nur angenommen. Sie ist für die sendende Maschine aber auch unerheblich, weil sich die IP-Adresse des Ziels in einem fremden Netzwerk befindet
  • Das zu sendende Paket muss also über einen Router zugestellt werden
  • Der Abstand zwischen den einzelnen Subnetzen kann an der Subnetzmaske abgelesen werden
  • Man braucht nur das letzte gesetzte Bit zu betrachten

Beispiel 3

Das letzte gesetzte Bit ist das 64er-Bit

  • Das bedeutet einen Abstand der Netze untereinander von 64
Netzwerke-Adressen
192.168.4.0/26
192.168.4.64/26
192.168.4.128/26
192.168.4.192/26
Hosts

Die Anzahl der möglichen Hosts pro Subnetz errechnet sich aus den verbleibenden Bit für Host-Adressen abzüglich der Netzwerkadresse und der Broadcast-Adresse

  • In diesem Fall also 2^6 - 2 = 64 - 2 = 62 Hosts

Beispiel: 24-Bit-Netzwerk

Subnetzmaske = 11111111.11111111.11111111.00000000 (255.255.255.0)
Der Besitzer legt den Netzteil auf 192.168.0 fest:
Netzteil = 11000000.10101000.00000000
Das führt zu folgender Adressverteilung:
Netzname = 11000000.10101000.00000000.00000000 (192.168.0.0)
Erste Adr. = 11000000.10101000.00000000.00000001 (192.168.0.1)
Letzte Adr. = 11000000.10101000.00000000.11111110 (192.168.0.254)
Broadcast = 11000000.10101000.00000000.11111111 (192.168.0.255)
Anzahl zu vergebende Adressen: 28 − 2 = 254

Beispiel: 21-Bit-Netzwerk

Subnetzmaske = 11111111.11111111.11111000.00000000 (255.255.248.0)
Der Besitzer legt den Netzteil auf 192.168.120 fest
(wobei im dritten Oktett nur die fünf höchstwertigen Bit zum Netzteil gehören):
Netzteil = 11000000.10101000.01111
Das führt zu folgender Adressverteilung:
Netzname = 11000000.10101000.01111000.00000000 (192.168.120.0)
Erste Adr. = 11000000.10101000.01111000.00000001 (192.168.120.1)
Letzte Adr. = 11000000.10101000.01111111.11111110 (192.168.127.254)
Broadcast = 11000000.10101000.01111111.11111111 (192.168.127.255)
Anzahl zu vergebende Adressen: 211 − 2 = 2046

TMP

IPv4/Subnetz/CIDR

Beschreibung

Classless Inter-Domain Routing

  • Effizienteren Nutzung des Adressraumes von IPv4
  • Feste Zuordnung einer IPv4-Adresse zu einer Netzklasse entfällt
Notation
Suffixe /24 Anzahl der 1-Bit in der Netzmaske
172.17.0.0
Dotted-Decimal-Notation CIDR-Notation
255.255.128.0 /17

Beispiele

IPv4-Adresse
192.168.2.7/24
  • Netzmaske
    • 255.255.255.0 (dezimale Schreibweise)
    • 11111111.11111111.11111111.00000000 (duale Schreibweise)
  • 3 x 8 = 24 gesetzte Bit, wie im CIDR-Suffix (/24) angegeben
IPv4-Adresse
10.43.8.67/28
  • Netzmaske
    • 255.255.255.240
    • 11111111.11111111.11111111.11110000
  • 3 x 8 + 4 = 28 gesetzte Bit, wie im Suffix angegeben