17.08.
2009

Subnetting

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)
Hilfstabelle 

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

  1. 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. 
  2. 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.

     

  3. 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.

     

  4. 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:

  1. 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. 1 Netz für 300 Hosts
    2. 1 Netz für 100 Hosts
    3. 1 Netz für 50 Hosts

     

  2. Netz- und Hosts-Bits 
    1. 29 – 2 = 510 >= 300 Hostsdaraus folgen 32 Gesamt-Bits – 9 Host-Bits = 23 Netz-Bits
    2. 27 – 2 = 126 >= 100 Hostsdaraus folgen 25 Netz-Bits
    3. 26 – 2 = 62 >= 50 Hostsdaraus folgen 26 Netz-Bits

     

  3. Neue Subnetzmasken 
    1. /23: 255.255.254.0 (x=7, also: Sprungweite=2 im 3. Oktett)
    2. /25: 255.255.255.128 (x=1, also: Sprungweite=128 im 4. Oktett)
    3. /26: 255.255.255.192 (x=2, also: Sprungweite=64 im 4. Oktett)

     

  4. 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.

  1. Randbedingungen 
    1. ein weiteres Netz mit 300 Hosts
    2. ein Netz mit 125 Hosts
    3. möglichst viele Netze mit 32 Hosts

     

  2. Netz- und Hosts-Bits 
    1. s.o., also 23 Netz- und 9 Hosts-Bits
    2. 25 Netz- und 7 Hosts-Bits
    3. 26 – 2 = 62 >= 32 Hostsdaraus folgen 26 Netz-Bits

     

  3. Neue Subnetzmasken 
    1. 255.255.254.0
    2. 255.255.255.128
    3. 255.255.255.192

     

  4. 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.

9 comments so far

Kommentieren
  1. 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.

  2. 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

  3. 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

  4. Super Erklärung, besten Dank!

  5. Gutes Tut, danke dir dafür!

  6. […] Aber wie berechne ich diese IP Range bei Klasse B und A… Mfg xor Vielleicht hilft Dir das […]

    • 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.)

Re: Mäthu 's comment

Abbrechen

Wir benutzen Cookies um die Nutzerfreundlichkeit der Webseite zu verbessen. Durch Deinen Besuch stimmst Du dem zu.