it-swarm.com.de

CIDR für Dummies

Ich verstehe, was CIDR ist und wofür es verwendet wird, aber ich kann immer noch nicht herausfinden, wie ich es in meinem Kopf berechnen soll. Kann jemand eine Erklärung vom Typ "für Dummies" mit Beispielen geben?

46
Bob

CIDR (Classless Inter-Domain Routing, ausgesprochen "kidder" oder "cider" - fügen Sie den Kommentaren Ihre eigene lokale Variante hinzu!) Ist ein System zum Definieren des Netzwerkteils einer IP-Adresse (normalerweise wird dies als Subnetzmaske betrachtet). . Der Grund, warum es "klassenlos" ist, ist, dass es eine Möglichkeit bietet, IP-Netzwerke flexibler als ihre Basisklasse aufzubrechen.

Als IP-Netzwerke zum ersten Mal definiert wurden, hatten IPs Klassen basierend auf ihrem Binärpräfix:

Class    Binary Prefix    Range                       Network Bits
A        0*               0.0.0.0-127.255.255.255     8
B        10*              128.0.0.0-191.255.255.255   16
C        110*             192.0.0.0-223.255.255.255   24
D        1110*            224.0.0.0-239.255.255.255
E        1111*            240.0.0.0-255.255.255.255

(Beachten Sie, dass dies die Quelle von Personen ist, die a/24 als "Klasse C" bezeichnen, obwohl dies kein streng wahrer Vergleich ist, da eine Klasse C ein bestimmtes Präfix haben musste.)

Diese binären Präfixe wurden zum Weiterleiten großer Teile des IP-Speicherplatzes verwendet. Dies war ineffizient, da große Blöcke Organisationen zugewiesen wurden, die sie nicht unbedingt benötigten, und weil Klasse Cs nur in 24-Bit-Schritten zugewiesen werden konnten, was bedeutet, dass Routing-Tabellen unnötig groß werden konnten, wenn mehrere Klasse Cs weitergeleitet wurden der gleiche Ort.

CIDR wurde definiert, um die Anwendung von Subnetzmasken variabler Länge (VLSM) auf Netzwerke zu ermöglichen. Wie der Name schon sagt, können Adressgruppen oder Netzwerke in Gruppen unterteilt werden, die keine direkte Beziehung zu der natürlichen "Klasse" haben, zu der sie gehören.

Die Grundvoraussetzung von VLSM besteht darin, die Anzahl der Netzwerkbits in einem Netzwerk anzugeben. Da eine IPv4-Adresse eine 32-Bit-Ganzzahl ist, liegt der VLSM immer zwischen 0 und 32 (obwohl ich nicht sicher bin, in welchem ​​Fall Sie möglicherweise eine Maske mit 0-Länge haben).

Der einfachste Weg, um mit der Berechnung von VLSM/CIDR in Ihrem Kopf zu beginnen, besteht darin, die "natürlichen" 8-Bit-Grenzen zu verstehen:

CIDR    Dotted Quad
/8      255.0.0.0
/16     255.255.0.0
/24     255.255.255.0
/32     255.255.255.255

(Übrigens ist es völlig legal und in ACLs ziemlich üblich, eine/32-Maske zu verwenden. Es bedeutet einfach, dass Sie sich auf eine einzelne IP beziehen.)

Sobald Sie diese verstanden haben, ist es eine einfache binäre Arithmetik, sich nach oben oder unten zu bewegen, um die Anzahl der Hosts zu erhalten. Wenn a/24 beispielsweise 256 IPs hat (lassen Sie Netzwerk- und Broadcast-Adressen vorerst weg, das ist eine andere Frage der Netzwerktheorie), wird durch Erhöhen des Subnetzes um ein Bit (auf/25) der Host-Speicherplatz um ein Bit (auf) reduziert 7), was bedeutet, dass es 128 IPs geben wird.

Hier ist eine Tabelle des letzten Oktetts. Diese Tabelle kann zu einem beliebigen Oktett verschoben werden, um das gepunktete Quad-Äquivalent zu erhalten.

CIDR    Dotted Quad
/24     255.255.255.0
/25     255.255.255.128
/26     255.255.255.192
/27     255.255.255.224
/28     255.255.255.240
/29     255.255.255.248
/30     255.255.255.252
/31     255.255.255.254
/32     255.255.255.255

Als Beispiel für die Verschiebung dieser Werte in ein anderes Oktett wäre/18 (dh/26 minus 8 Bit, also ein Oktett verschoben) 255.255.192.0.

78
jj33

Jedes Oktett ist 8 wert.

  • 255.0.0.0/8
  • 255.255.0.0/16
  • 255.255.255.0/24
  • 255.255.255.255/32

So können Sie Ihr Subnetz schnell eingrenzen und machen sich dann nur noch Sorgen um die letzten 8 Bits.

128, 192, 224, 240, 248, 252, 254, 255

+1  , +2 , +3 , +4 , +5 , +6 , +7 , +8
  • 255.128.0.0 =/9
  • 255.192.0.0 =/10
  • 255.224.0.0 =/11
  • 255.240.0.0 =/12
  • 255.248.0.0 =/13
  • 255.252.0.0 =/14
  • 255.254.0.0 =/15

Hoffe das ist klar genug

8
sclarson

Ein Tag zu spät, hoffentlich kein Dollar zu kurz. CIDR ist die Anzahl zusammenhängender Einzelbits in der IPv4-Maske (32 Bit), beginnend mit dem höchstwertigen Bit.

10000000 00000000 00000000 00000000 wobei 1 = höchstwertiges Bit

Die gängigen Masken sind/8,/16,/24, die alle auf eine 8-Bit-Grenze (Oktett) fallen.

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

Es ist nicht wirklich schwer, wenn es nicht oktettorientiert ist, aber es erfordert eine einfache Mathematik und ein Verständnis dafür, was ein Oktett ist.

11111111 11111111 11100000 00000000 =/19

Die ersten beiden Oktette der Maske sind 255,255 (/ 16 ist kleiner als/19). Das letzte Oktett ist 0 (/ 19 ist kleiner als/24). Soweit wir wissen

11111111 11111111 11100000 00000000 =/19 = 255.255.?.0

Denken Sie beim Betrachten jedes Oktetts daran, dass es sich um einen 8-Bit-Wert von 0 bis 255 handelt.

0 0 0 0 0 0 0 0 
1
2 6 3 1
8 4 2 6 8 4 2 1

Das dritte Oktett (?) 11100000 ist also 128 + 64 + 32 = 224. Das heißt

11111111 11111111 11100000 00000000 =/19 = 255.255.224.0

6
dbasnett

Es ist sehr fehleranfällig, nicht triviale Netzwerke von Hand zu berechnen. Versuchen Sie stattdessen einen CIDR-Rechner .

4
hayalci

Im Gegenteil, ich denke, es ist gut, [~ # ~] cidr [~ # ~] vollständig zu verstehen und in der Lage zu sein, Berechnungen in Ihrem Gehirn durchzuführen. .. aber manchmal möchten Sie Ihre Berechnungen überprüfen. Ich benutze gerne den PHP Subnet Calculator : http://share-foo.com/ SubnetCalc.php

alt text

2
l0c0b0x

Ein weiteres gutes Dokument, das Sie haben sollten, wenn Sie nur eine Desk-Referenz wünschen, ist RFC 1878 - Subnetz-Tabelle mit variabler Länge für IPv4 .

1
Gavin McTaggart