Zunächst einige Hintergrundinformationen zu dem, was ich bereits weiß:
Eine IPv4-Adresse ist eine 32-Bit-Adresse, die einen Knoten in einem Netzwerk identifiziert. Eine IP-Adresse hat ein IP-Präfix, das den "Netzwerk" -Teil der IP-Adresse bestimmt, und der Rest bestimmt den "Host".
Ein Beispiel:
128.208.0.0/24 sagt mir, dass die ersten 24 Bits der "Netzwerk" -Teil der IP-Adresse sind und die restlichen 8 Bits für den Host im angegebenen Netzwerk sind. Auch 128.208.0.0. ist die niedrigste IP-Adresse, die im angegebenen Netzwerk verfügbar ist.
Nun sagt Tannenbaum in seinem Buch:
Da die Präfixlänge nicht allein aus der IP-Adresse abgeleitet werden kann, müssen Routing-Protokolle die Präfixe an Router übertragen. Manchmal werden Präfixe einfach durch ihre Länge beschrieben, wie in einem '' / 16 '', der als '' Schrägstrich 16 ausgesprochen wird. '' Die Länge des Präfixes entspricht einer binären Maske von 1s im Netzwerkteil. Wenn es auf diese Weise geschrieben wird, spricht man von einer Subnetzmaske. Es kann mit der IP-Adresse UND-verknüpft werden, um nur den Netzwerkteil zu extrahieren. In unserem Beispiel lautet die Subnetzmaske 255.255.255.0.
Meine Fragen sind also:
1) Wie tragen Routing-Protokolle die Präfixe? Wo ist der "Schrägstrich" gespeichert?
2) Was bedeutet das überhaupt:
Es kann mit der IP-Adresse UND-verknüpft werden, um nur den Netzwerkteil zu extrahieren. In unserem Beispiel lautet die Subnetzmaske 255.255.255.0.
Vielen Dank.
Antworten:
Ich werde dies so direkt wie möglich mit OSPF beantworten. Unten sehen Sie ein Hello-Paket vom Typ 1, das alle Schnittstellen gesendet hat, um eine Nachbarschaft zu bilden.
RFC 2328, A.3.2 Das Hello-Paket
Das
Network Mask
Feld wird mit der Subnetzmaske gefüllt, die Sie mit dieser Schnittstelle verwenden.Die CIDR-Notation ist der Kürze halber nichts anderes als eine kürzere Version Ihrer Subnetzmaske. Und im Übrigen sind Subnetzmasken nur eine komprimierte Version von Bitpositionen. Stellen Sie sich vor, Sie müssen jedes Mal, wenn Sie einen Port konfigurieren möchten, dezimal schreiben.
Am Ende kommt alles zum selben Ergebnis. Es ist also nur sinnvoll, diese Kurzform zur Darstellung derselben Daten zu haben.
quelle
255.0.255.0
Maske definieren kann ?255.0.255.0
ist keine Möglichkeit. Nur Platzhaltermasken können mit solchen nicht zusammenhängenden Bits arbeiten. Der RFC beschreibt nicht, warum er die gesamte Netzwerkmaske mit den OSPF-Paketen sendet .Dies hängt vom Routing-Protokoll ab. Alte Protokolle wie RIP v1 setzen eine klassische Maske voraus und kündigen keine Maske an, neuere wie RIP v2, OSPF, ISIS, BGP usw. jedoch.
Die Antwort auf den zweiten Teil Ihrer Frage: Um den Netzwerkteil der Adresse zu bestimmen oder um zu testen, ob eine bestimmte Adresse Teil eines bestimmten Netzwerks ist, führen Sie ein bitweises logisches UND mit der Subnetzmaske durch.
Um beispielsweise die Netzwerkadresse 172.16.24.5/24 zu erhalten, UND Sie jedes Bit der 32-Bit-Adresse und der Maske wie folgt:
Das Ergebnis ist der Netzwerkteil der IP-Adresse (auch als Netzwerknummer bezeichnet). Genau dies tun Ihr Router und Ihr PC, um zu bestimmen, welches Netzwerk zum Übertragen des Pakets verwendet werden soll.
quelle