X
    Categories: Technik

Subnetting – Wie funktioniert es?

Subnetting ist ein in der Netzwerktechnik sehr wichtiger Vorgang, der auf den ersten Blick kompliziert wirkt. Dieser Artikel soll beim Verständnis helfen.

Die Einteilung der IP-Adressen in Netzklassen hat irgendwann zu Problemen geführt: Sehr viele Adressen wurden nicht verwendet, weil z.B. Klasse-A-Netze für Organisationen einfach zu groß sind. So viele Adressen benötigt keine Organisation. Die möglichen IP-Adressen gingen durch die starre Einteilung der Netzwerkklassen allmählich zur Neige, so dass eine andere Lösung gefunden werden musste: Das Subnetting.

Was ist ein Subnetz?

Ein Subnetz ist ein Unternetz, das sich in einem größeren Netz befindet. Ein großes Netz kann mehrere Subnetze haben, aber ein Subnetz gehört immer nur zu genau einem Eltern-Netz. Das Verfahren, in dem Netze in Subnetze unterteilt werden, bezeichnet man als Subnetting. Die IP-Adressen der Rechner in einem Subnetz haben dann einen einheitlichen Netzanteil und unterscheiden sich so nur durch den Geräteanteil. Dadurch können Netze auch logisch viel besser eingeteilt werden. Die Subnetze können mit Hilfe von Routern miteinander verbunden werden. Realisiert werden Subnetze, in dem man Bits aus dem Geräteanteil in den Netzanteil übernimmt und den Netzanteil somit vergrößert.

Eine Schule hat z.B. mehrere EDV-Räume, der Schule ist ein Klasse-C-Netz zugewiesen. Der Administrator kann nun das große Netz in mehrere kleine Netze unterteilen. So könnte jeder EDV-Raum ein eigenes Subnetz erhalten. An der IP-Adresse könnte man aufgrund des gemeinsamen Netzanteils sofort sehen, in welchem Raum ein bestimmter Computer steht.

Vorteile von Subnetting

Das Verfahren hat viele ernstzunehmende Vorteile:

  • Höhere Wartbarkeit
  • Höhere Übersichtlichkeit
  • Bessere Erweiterbarkeit
  • Weniger Kollisionen
  • Schnellere Kommunikation im Netz

Was sind Subnetzmasken?

Subnetzmasken ermöglichen die Umsetzung des Subnettings. Sie geben an, welches Bits zum Netzanteil und welche zum Geräteanteil der IP-Adresse gehören. Um dies zu erreichen, besteht die Subnetzmaske aus genauso vielen Bit wie die IP-Adresse. Eine 1 in der Subnetzmaske gibt an, dass das korrespondierende Bit in der IP-Adresse zum Netzanteil gehört, eine 0 gibt an, dass das Bit zum Geräteanteil gehört. Es darf keine Vermischung von 0 und 1 geben. Wenn also die erste 0 in der Subnetzmaske geschrieben wurde, dürfen nur noch Nullen folgen, denn dann hat der Geräteanteil begonnen.

Hier sehen Sie ein Beispiel für eine IP-Adresse und die dazugehörige Subnetzmaske.

  • IP-Adresse: 10000110.1100000.1010000.11010000
  • Subnetzmaske: 11111111.1111111.0000000.00000000

Im Beispiel handelt es sich um die Standard-Subnetzmaske eines Klasse-B-Netzes. In einem Klasse-B-Netz erfolgt die Trennung zwischen Netz- und Geräteanteil in der Mitte, hinter dem zweiten Byte. Genau das gibt auch die Subnetzmaske an, denn die Nullen beginnen hinter dem zweiten Byte. Dezimal würde die Subnetzmaske des Beispiel so aussehen: 255.255.0.0

Standard-Subnetzmasken der Netzklassen

Da die Netzklassen festlegen, an welcher Stelle die Trennung von Netz- und Geräteanteil erfolgt, kann man für die einzelnen Klassen Standard-Netzwerkmasken angeben:

  • Klasse A: 255.0.0.0
  • Klasse B: 255.255.0.0
  • Klasse C: 255.255.255.0

Bestimmung der Subnetzzugehörigkeit

Ein Computer muss berechnen können, wo der Netzanteil anfängt und der Geräteanteil aufhört. Wenn Rechner A eine Nachricht an Rechner B senden möchte, wird zuerst die IP-Adresse von A mit der Subnetzmaske über ein logisches UND verknüpft. Das Ergebnis stellt einen Referenzwert dar, mit dem weitergerechnet wird. Dieser Referenzwert entspricht dem Netzanteil der IP-Adresse. Anschließend wird die IP-Adresse des Zielrechners B mit der Subnetzmaske mit UND verknüpft. Entspricht das Ergebnis dem Referenzwert, befinden sich beide Rechner in demselben Subnetz. Sonst muss die Weiterleitung über einen Router in ein anderes Netz erfolgen.

Beispiel für die Berechnung von Subnetzen

Ein Unternehmen erhält das C-Klasse-Netz 193.1.1.0. Es sollen fünf Subnetze gebildet werden. Als erstes muss herausgefunden werden, wie viele Bits aus dem Geräteanteil der IP-Adresse entlehnt werden müssen, damit fünf Subnetze gebildet werden können.

Der Netzanteil eines Klasse-C-Netzes besteht aus 24 Bit, der Geräteanteil aus 8 Bit. Um fünf Subnetze zu bilden, werden 3 Bit benötigt: 2^2 Bit = 4 sind zu wenig, also müssen 2^3 Bit = 8 verwendet werden. Dabei müsen Sie bedenken, dass noch einmal zwei Adressen wegfallen: die Adresse, bei der der Geräteanteil komplett 0 ist, ist die Netzwerkadresse, und die Adresse, bei der der Geräteanteil komplett 1 ist, ist die Broadcastadresse. Beide dürfen nicht vergeben werden. Somit können mit 3 Bit nur sechs Netze adressiert werden. Bräuchten Sie sieben Netze, müssten Sie ein viertes Bit in den Netzanteil übernehmen.

Somit hat der Netzanteil eine neue Länge von 27 Bit und der Hostanteil ist nur noch 5 Bit lang. Mit 5 Bit können 5^2 = 32 Rechner adressiert werden, wobei die Adressen wegfallen, bei denen der Geräteanteil komplett 0 und komplett 1 ist. Damit bleiben 32 – 2 = 30 mögliche Rechner pro Subnetz. In der Subnetzmaske müssen die drei Bit zu der Standardsubnetzmaske eines Klasse-C-Netzes in den Netzanteil hinzugefügt werden. Denken Sie daran, dass bei einer Subnetzmaske der Netzanteil aus Einsen und der Geräteanteil aus Nullen besteht. Die Subnetzmaske sieht also folgendermaßen aus:

  • dezimal: 255.255.255.224
  • binär: 11111111.11111111.11111111.11100000

Die Subnetzadressen werden vergeben, indem man die drei zusätzlichen Bit binär hochzählt (die neu hinzugefügten Bit sind kursiv markiert):

  • Basisnetz: 11000001.00000001.00000001.00000000
  • Subnetz 2: 11000001.00000001.00000001.00100000
  • Subnetz 3: 11000001.00000001.00000001.01000000
  • Subnetz 4: 11000001.00000001.00000001.01100000
  • Subnetz 5: 11000001.00000001.00000001.10000000
  • Subnetz 6: 11000001.00000001.00000001.10100000
  • Subnetz 7: 11000001.00000001.00000001.11000000
  • Subnetz 8: 11000001.00000001.00000001.11100000

Um Rechner in das Netz einzutragen, wird der Hostanteil des entsprechenden Subnetzes binär hochgezählt, wobei die erste Adresse normalerweise dem Router zugewiesen wird. Wir möchten im Beispiel ins Subnetz 3 neue Rechner eintragen:

  • Router: 11000001.00000001.00000001.10100001
  • Rechner 1: 11000001.00000001.00000001.10100010
  • Rechner 1: 11000001.00000001.00000001.10100011
  • Rechner 1: 11000001.00000001.00000001.10100100
  • Rechner 1: 11000001.00000001.00000001.10100101
  • Rechner 1: 11000001.00000001.00000001.10100110
  • Rechner 1: 11000001.00000001.00000001.101x…
  • Rechner 1: 11000001.00000001.00000001.10111110

Die Adresse, bei welcher der Geräteanteil komplett 1 ist, also im Beispiel 11000001.00000001.00000001.10111111 fällt weg, da es sich um die Broadcastadresse des gesamten Netzes handelt.