Wozu überhaupt Subnetting?
Nur in den wenigsten Fällen kann sich ein Netzwerkadministrator mit den Standard-(Sub)Netzmasken und damit mit der Aufteilung seines IP-Bereiches in Netze und Hosts zufrieden geben. So besitzt ein Class-C-Netz 254 Hosts. Dies ist aber oftmals aber gar nicht gewünscht. Daher setzt man das sogenannte Subnetting ein, welches einem die Möglichkeit bietet seinen IP-Bereich weiter zu unterteilen. Im einfachsten Fall kann es die Spaltung des Netzes in zwei gleich große Teile sein. Etwas komplexer wird es, wer sein Netz optimal ausnutzen will und so auch mehrere unterschiedlich große Subnetze erzeugt.
Wann macht so etwas überhaupt Sinn? Hier ein paar mögliche Gründe:
- kleine Netze = kleinere Broadcast-Domänen
- optimale Ausnutzung des zu Verfügung stehenden IP-Bereichs
- logische Trennung zweier Netzbereiche
- Aufteilung der Netzes in Anlehnung der Firmen-Struktur
- … (es gibt sicher noch mehr)
2n | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 |
Wert | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
In 4 Schritte zu neuen Subnetzen
- Wie sind die Randbedingungen?
Nehmen wir mal an unser IP-Bereich ist 192.168.0.0/24 (Subnetzmaske: 255.255.255.0) und wir wollen möglichst viele Netze mit 40 Hosts. - Wie sind die Bits verteilt?
Zuerst ist einmal herauszufinden wie viele Bits des zu Verfügung stehenden IP-Bereichs zum Netz- und zum Hosts-Bereich gehören. Entscheidend ist hier das /24, sie zeigt uns nämlich das bereits die ersten 24 Bits zum Netz-Bereich gehören und die restlichen 8 Bits zum Host-Bereich.Als nächstes muss ermittelt werden wie viele Bits für den neuen Netz- bzw. Hosts-Bereich benötigt werden. Hierzu bedienen wir uns folgender Formel:2n - 2 >= Netze/Hosts (RFC 950)
bzw.
2n >= Netze (RFC 1878) 2n - 2 >= Hosts
Setzen wir nun unsere 40 Hosts in die Formel ein:
2n - 2 >= 40 Hosts
Wir suchen also die erste Potenz von zwei, die größer ist als unsere 40 Hosts und das auch noch ist, wenn wir zwei abziehen. Werfen wir mal einen Blick auf unsere Hilfstabelle, dort sehen wir das bei 26 dem Wert 64 entspricht, also auch nach abzug der 2 noch größer ist als 40. n ist also 6.
Was sagt uns das nun? Ganz einfach: unser Hosts-Bereich ist 6 Bits groß und der Netz-Anteil somit 26 Bits, er vergrößert sich also um 2 Bits.
Die gleiche Formel kann auch verwendet werden wenn der Netz-Bereich fest steht. n ist dann zu dem Netz-Anteil der bisherigen Subnetzmaske hinzu zu addieren, der Rest der 32 Bits ist Host-Anteil.
- Wie sieht die neue Subnetzmaske aus?
Wie wir bereits ermittelt haben besteht unser neue Subnetzmaske aus Bits Netz-Anteil und Bits Hosts-Anteil. Schreiben wir dieses 32 Bits nun einfach mal in 4 Oktett-Blöcken und mit Punkten getrennt auf:NNNNNNNN.NNNNNNNN.NNNNNNNN.NNHHHHHH
bzw.
11111111.11111111.11111111.11000000
Hier wird deutlich das im vierten Oktett einen Netzbereich von 2 Bits entstanden ist, daher merken wir uns x=2 (Wert von x ist gleich die Anzahl der Einsen, die im ersten Oktett (von links aus gesehen) in denen auch Nullen vorkommen)
Nun muss nur noch jedes Oktett von der Binären in die Dezimale Schreibweise umgerechnet werden. Hier also:255.255.255.192
Und das war’s dann schon.
- Wie sehen nun die neuen Subnetze aus?
Wir erinnern uns: x=2. In der Hilfstabelle ist dies dem Wert 64 zugewiesen. Dies ist unsere Sprungweite d.h. unsere neuen Subnetze beginnen mit (0)*, 64, 128 und (192)*.
* Laut RFC 950 (Cisco Norm) sollte das erste und letzte Subnetz nicht verwendet werden. Nach RFC 1878 dürfen alle Subnetze verwendet werden.Die Subnetze sehen so aus:1. Subnetz Netz-ID: 192.168.0.0 Host-Bereich: 192.168.0.1 - 192.168.0.62 Broadcast: 192.168.0.63 Subnetzmaske: 255.255.255.192 2. Subnetz Netz-ID: 192.168.0.64 Host-Bereich: 192.168.0.65 - 192.168.0.126 Broadcast: 192.168.0.127 Subnetzmaske: 255.255.255.192 3. Subnetz Netz-ID: 192.168.0.128 Host-Bereich: 192.168.0.129 - 192.168.0.190 Broadcast: 192.168.0.191 Subnetzmaske: 255.255.255.192 4. Subnetz Netz-ID: 192.168.0.192 Host-Bereich: 192.168.0.193 - 192.168.0.254 Broadcast: 192.168.0.255 Subnetzmaske: 255.255.255.192
Ein weiteres Beispiel
Jetzt mal ein komplexeres Beispiel des Subnetting:
- Randbedingungen
Unser Kunde besitzt den IP-Bereich 160.230.0.0/22.Also:Netz-ID: 160.230.0.0 Host-Bereich: 160.230.0.1 - 160.230.3.254 Broadcast: 160.230.3.255 Subnetzmaske: 255.255.252.0
Er wünscht sich mehrere Netz und zwar:
- 1 Netz für 300 Hosts
- 1 Netz für 100 Hosts
- 1 Netz für 50 Hosts
- Netz- und Hosts-Bits
- 29 – 2 = 510 >= 300 Hostsdaraus folgen 32 Gesamt-Bits – 9 Host-Bits = 23 Netz-Bits
- 27 – 2 = 126 >= 100 Hostsdaraus folgen 25 Netz-Bits
- 26 – 2 = 62 >= 50 Hostsdaraus folgen 26 Netz-Bits
- Neue Subnetzmasken
- /23: 255.255.254.0 (x=7, also: Sprungweite=2 im 3. Oktett)
- /25: 255.255.255.128 (x=1, also: Sprungweite=128 im 4. Oktett)
- /26: 255.255.255.192 (x=2, also: Sprungweite=64 im 4. Oktett)
- Subnetze
Subnetz A Netz-ID: 160.230.0.0 Host-Bereich: 160.230.0.1 - 160.230.1.254 Broadcast: 160.230.1.255 Subnetzmaske: 255.255.254.0 Subnetz B Netz-ID: 160.230.2.0 Host-Bereich: 160.230.2.1 - 160.230.2.126 Broadcast: 160.230.2.127 Subnetzmaske: 255.255.255.128 Subnetz C Netz-ID: 160.230.2.128 Host-Bereich: 160.230.2.129 - 160.230.2.190 Broadcast: 160.230.2.191 Subnetzmaske: 255.255.255.192
Und damit nicht genug. In einem Folgeauftrag sollen weitere Subnetze erstellt werden.
- Randbedingungen
- ein weiteres Netz mit 300 Hosts
- ein Netz mit 125 Hosts
- möglichst viele Netze mit 32 Hosts
- Netz- und Hosts-Bits
- s.o., also 23 Netz- und 9 Hosts-Bits
- 25 Netz- und 7 Hosts-Bits
- 26 – 2 = 62 >= 32 Hostsdaraus folgen 26 Netz-Bits
- Neue Subnetzmasken
- 255.255.254.0
- 255.255.255.128
- 255.255.255.192
- Subnetze
Subnetz D Nicht möglich! Das Subnetz ist zu groß für den zur Verfügung stehenden IP-Bereich. Subnetz E Netz-ID: 160.230.3.0 Host-Bereich: 160.230.3.1 - 160.230.3.126 Broadcast: 160.230.3.127 Subnetzmaske: 255.255.255.128 Subnetz F1 Netz-ID: 160.230.2.192 Host-Bereich: 160.230.2.193 - 160.230.2.254 Broadcast: 160.230.2.255 Subnetzmaske: 255.255.255.192 Subnetz F2 Netz-ID: 160.230.3.128 Host-Bereich: 160.230.3.129 - 160.230.3.190 Broadcast: 160.230.3.191 Subnetzmaske: 255.255.255.192 Subnetz F3 Netz-ID: 160.230.3.192 Host-Bereich: 160.230.3.193 - 160.230.3.254 Broadcast: 160.230.3.255 Subnetzmaske: 255.255.255.192
Anmerkung: Das Subnetz E kann nicht den IP-Bereich von 160.230.2.192 – 160.230.3.63 belegen, da es sonst zu Überschneidungen mit anderen Subnetzen kommt.
Gerne 😉
Jetzt bin ich bei der letzten Aufgabe.
Dass der IP-Bereich für weitere 300 Hosts nicht ausreicht, verstehe ich.
Aber wie ist es mit dem Subnetz E?
—
Netz-ID: 160.230.3.0
Host-Bereich: 160.230.3.1 – 160.230.3.126
Broadcast: 160.230.3.127
Subnetzmaske: 255.255.255.128
—
Hier sieht man ganz klar, dass die Clients von 160.230.3.1 bis .3.126 belegen können (verlangt waren 125 Clients).
Unten schreibst Du:
„Anmerkung: Das Subnetz E kann nicht den IP-Bereich von 160.230.2.192 – 160.230.3.63 belegen, da es sonst zu Überschneidungen mit anderen Subnetzen kommt.“
Dass es im Bereich von Subnetz C nicht im Bereich von 230.160.2.192 – .2.255 sein darf, kann ich verstehen, da sich – so vermute ich – die Subnetze durch eine gemeinsame Subnetzmaske von 255.255.255.192 sonst „sehen“ können und dies nicht erwünscht ist. Oder sehe ich das falsch?
Aber im Bereich von 160.230.3.0 aufwärts? Keines (außer Subnetz E mit der Subnetzmaske 255.255.255.128) der bisherigen Subnetze dringt dort in das 160.230.3.0 Netz ein. Es widerspricht sonst für mich Deiner eigenen Lösung bzw. der Anforderung, dass 125 Hosts im weiteren IP-Bereich (mit klarer Trennung zu den anderen Subnetzen) möglich sind.
Viele Grüße
Alles soweit richtig.
Alternativ könnte man für das 125 Client-Netz auch 160.230.3.128/255.255.255.128 nehmen, also den IP-Bereich von E mit F2 und F3 tauschen.
Hallo,
sehr gut erklärt (bin erstmal bis Beispiel 2 mit den 3 unterschiedlich großen Subnetzen vorgedrungen).
Dort stimmen aber folgende Werte nicht:
—
Subnetz B
Netz-ID: 160.230.2.0
===> Host-Bereich: 160.120.2.1 – 160.120.2.126 (hier muss jeweils die 120 mit 230 ersetzt werden)
Broadcat: 160.230.2.127
Subnetzmaske: 255.255.255.128
—
Außerdem heißt es überall Broadcast, nicht Broadcat.
Die Hilfstabelle ist klasse 😀 Sehr gut!
Vielen Dank!
Hallo und vielen dank für deine Rückmeldung.
Die Tippfehler sind ausgebessert und das nach über 11 Jahren 🙂
Gruß Jens
Danke,
mit deiner Erklärung habe ich es nun auch verstanden. Sehr praktisch und hervorragend didaktisch beschrieben. Deine man jedem, der den Aha-Effekt noch nicht gehabt hat, ans Herz legen. Dazu noch 1-2 andere Seiten als Übersicht, und dann sollte man Subnetting einigermaßen verstanden haben.
Gruß
Christian
Super Erklärung, besten Dank!
Gutes Tut, danke dir dafür!
Die Netzklassen sind hier erst einmal nicht wichtig, da der „Auftraggeber“ einen Bereich vorgegeben hat. Deine Subnetze werden automatisch zu der Klasse, deren Größe sie entsprechen.
Hier bekommst du ein Klasse B Netzwerk, was du dann in andere B-Klassen oder A-Klassen aufteilen kannst.
Diese Netzwerkklassen sind auch nur grobe Grenzen, welche Angeben, wie viele Host -und Netzwerkbits du hast. Im Grunde sind diese eher als abstrakte Richtlinien zu sehen, welche die Größe angeben – Wie Maxi, Normal und Spar-Menü im FastFood-Laden. Dies bedeutet dann also, dass deine Subnetzmaske entscheidet, welche Klasse du verwendest.
Der Grund der Existenz der Klassen ist der, dass es am Anfang keine Subnetze gab, da hat man durch die ersten Bits (von links gelesen) bestimmt, wie viele Netze oder Hosts es in diesem Bereich gibt.
__________________________________________________________
Klasse A: Hatte das erste Bit auf 0, damit war dann der Bereich
0.0.0.0 – 127.255.255.255 /8
gegeben. Denn wenn das erste Bit belegt ist bzw. als Auszeichnung gilt, dann kann man mit den restlichen 7 Bits im ersten Oktett noch bis 127 zählen.
0|0000000.HHHHHHH.HHHHHHHH.HHHHHHHH bis
0|1111111.HHHHHHH.HHHHHHHH.HHHHHHHH
Das Klasse B-Netz wird nun damit gekennzeichnet, dass das erste Bit auf 1 und das zweite auf 0 gesetzt ist. (Deren Werte zählt man immer mit, wenn sie gesetzt sind, man darf sie nur nicht ändern.)
10|000000.HHHHHHHH.HHHHHHH.HHHHHHHH bis
10|111111.HHHHHHHH.HHHHHHH.HHHHHHHH
Damit ist nun der Bereich:
128.0.0.0 – 191.255.255.255 (128-191 = 10000000-10111111 )
ein Klasse-B Netz.
Im C-Netz werden diese Anfangs/Auszeichnungs-Bits, welche übrigens Präfix oder MSB(Most significant Bit) genannt werden, so weiter gezählt.
110… Klasse C
1110… Klasse D (Multicast)
1111… Klasse E (unwichtig)
Deshalb gibt es die Klassen überhaupt, und deswegen sind diese Klassifizierungen auch nicht mehr so wichtig, da die Subnetzmaske mittlerweile vorgibt, wie viele Hosts und Netze mit einem IP-Bereich gebildet werden können.
Diese Klassen sind nur wichtig, wenn du noch den privaten IP-Bereich berücksichtigst, da diese nicht ins Internet verbinden können – Diesen Bereich also umgehen, der Rest steht dir dann quasi offen. (Selbst da musst halt die Bereiche unabhängig von den Klassen kennen.)