Beispiel:
IP: 128.42.5.4
In binärer Form: 10000000 00101010 00000101 00000100
Teilnetz: 255.255.248.0
Wie können Sie die Präfix-, Netzwerk-, Subnetz- und Hostnummern ermitteln?
Konvertieren Sie die gepunktete Dezimaldarstellung der Netzmaske in Binärwerte. Zählen Sie dann die Anzahl der zusammenhängenden 1-Bits, beginnend mit dem höchstwertigen Bit im ersten Oktett (d. h. der linken Seite der Binärzahl).
255.255.248.0 in binary: 11111111 11111111 11111000 00000000
-----------------------------------
I counted twenty-one 1s -------> /21
Das Präfix von 128.42.5.4 mit einer Netzmaske von 255.255.248.0 ist /21.
Die Netzwerkadresse ist die logische UND-Verknüpfung der jeweiligen Bits in der binären Darstellung der IP-Adresse und der Netzwerkmaske. Richten Sie die Bits in beiden Adressen aus und führen Sie ein logisches UND über jedes Paar der jeweiligen Bits aus. Anschließend wandeln Sie die einzelnen Oktette des Ergebnisses wieder in Dezimalzahlen um.
Logische UND-Wahrheitstabelle:
128.42.5.4 in binary: 10000000 00101010 00000101 00000100
255.255.248.0 in binary: 11111111 11111111 11111000 00000000
----------------------------------- [Logical AND]
10000000 00101010 00000000 00000000 ------> 128.42.0.0
Wie Sie sehen können, ist die Netzwerkadresse von 128.42.5.4/21 128.42.0.0
Die Broadcast-Adresse wandelt alle Host-Bits in 1en um...
Erinnern Sie sich, dass unsere IP-Adresse in dezimaler Form lautet:
128.42.5.4 in binary: 10000000 00101010 00000101 00000100
Die Netzwerkmaske lautet:
255.255.248.0 in binary: 11111111 11111111 11111000 00000000
Das bedeutet, dass unsere Host-Bits die letzten 11 Bits der IP-Adresse sind, weil wir die Host-Maske durch Umkehrung der Netzwerkmaske finden:
Host bit mask : 00000000 00000000 00000hhh hhhhhhhh
Um die Broadcast-Adresse zu berechnen, müssen wir alle Host-Bits zu 1en machen:
128.42.5.4 in binary: 10000000 00101010 00000101 00000100
Host bit mask : 00000000 00000000 00000hhh hhhhhhhh
----------------------------------- [Force host bits]
10000000 00101010 00000111 11111111 ----> 128.42.7.255
Sie haben nicht genügend Informationen angegeben, um Subnetze für dieses Netzwerk zu berechnen; in der Regel bilden Sie Subnetze, indem Sie einige der Hostbits als Netzwerkbits für jedes Subnetz neu zuweisen. In vielen Fällen gibt es nicht den einen richtigen Weg, ein Subnetz für einen Block zu bilden... abhängig von Ihren Beschränkungen kann es mehrere gültige Wege geben, einen Adressblock zu subnetzen.
Nehmen wir an, wir teilen 128.42.0.0/21 in 4 Subnetze auf, die jeweils mindestens 100 Hosts enthalten müssen...
In diesem Beispiel wissen wir, dass Sie mindestens ein /25-Präfix benötigen, um 100 Hosts zu enthalten; ich habe ein /24 gewählt, weil es auf eine Oktettgrenze fällt. Beachten Sie, dass die Netzwerkadresse für jedes Subnetz Hostbits aus dem übergeordneten Netzwerkblock entlehnt.
Woher weiß ich, dass ich mindestens eine /25-Maskenlänge für 100 Hosts benötige? Berechnen Sie das Präfix, indem Sie die Anzahl der Hostbits ermitteln, die für 100 Hosts erforderlich sind. Man braucht 7 Hostbits, um 100 Hosts zu enthalten. Offiziell wird dies mit berechnet:
Hostbits = Log2(Anzahl der Hosts) = Log2(100) = 6.643
Da IPv4-Adressen 32 Bit breit sind und wir die Host-Bits (d. h. die niedrigstwertigen Bits) verwenden, subtrahieren Sie einfach 7 von 32, um das minimale Subnetz-Präfix für jedes Subnetz zu berechnen... 32 - 7 = 25.
Da wir nur vier Subnetze aus dem gesamten 128.42.0.0/21-Block benötigen, könnten wir /23 Subnetze verwenden. Ich habe mich für /23 entschieden, weil wir 4 Subnetze brauchen... d.h. zwei zusätzliche Bits zur Netzmaske hinzugefügt.
Dies ist eine ebenso gültige Antwort auf die Einschränkung, indem man /23 Subnetze von 128.42.0.0/21 verwendet...
Das haben wir oben schon gemacht... wir verwenden einfach die Host-Maske aus der Berechnung der Broadcast-Adresse 128.42.5.4/21... Diesmal verwende ich 1s anstelle von "h", weil wir wieder eine logische UND-Verknüpfung mit der Netzwerkadresse durchführen müssen.
128.42.5.4 in binary: 10000000 00101010 00000101 00000100
Host bit mask : 00000000 00000000 00000111 11111111
----------------------------------- [Logical AND]
00000000 00000000 00000101 00000100 -----> 0.0.5.4
Um die maximale Anzahl der Hosts zu ermitteln, betrachten Sie die Anzahl der binären Bits in der obigen Hostnummer. Am einfachsten ist es, die Länge der Netzmaske von 32 (Anzahl der Bits in einer IPv4-Adresse) zu subtrahieren. So erhalten Sie die Anzahl der Host-Bits in der Adresse. An diesem Punkt...
Maximale Anzahl von Hosts = 2**(32 - Netzmaskenlänge) - 2
Der Grund, warum wir oben 2 abziehen, ist, dass die All-One- und All-Zero-Host-Nummern reserviert sind. Die All-Zero-Host-Nummer ist die Netzwerknummer; die All-Ones-Host-Nummer ist die Broadcast-Adresse.
Mit dem obigen Beispiel-Subnetz 128.42.0.0/21 ist die Anzahl der Hosts...
Maximale Anzahl von Hosts = 2**(32 - 21) - 2 = 2048 - 2 = 2046
Nehmen wir an, jemand gibt uns zwei IP-Adressen und erwartet von uns, dass wir die längste Netzmaske finden, die beide enthält; was wäre zum Beispiel, wenn wir hätten:
Am einfachsten ist es, beide Adressen in Binärzahlen umzuwandeln und die längste Kette von Netzwerkbits auf der linken Seite der Adresse zu suchen.
128.42.5.17 in binary: 10000000 00101010 00000101 00010001
128.42.5.67 in binary: 10000000 00101010 00000101 01000011
^ ^ ^
| | |
+--------- Network ---------+Host-+
(All bits are the same) Bits
In diesem Fall wäre die maximale Netzmaske (minimale Hostmaske) /25
HINWEIS: Wenn Sie versuchen, von der rechten Seite aus zu beginnen, lassen Sie sich nicht täuschen, nur weil Sie eine übereinstimmende Spalte von Bits finden; es könnte nicht übereinstimmende Bits hinter diesen übereinstimmenden Bits geben. Ehrlich gesagt ist es am sichersten, von links zu beginnen.
Die obige Antwort trifft den Nagel perfekt auf den Kopf. Als ich anfing, brauchte ich jedoch ein paar verschiedene Beispiele aus verschiedenen Quellen, um es wirklich zu begreifen. Wenn Sie also an weiteren Beispielen interessiert sind, habe ich ein paar Blogbeiträge zu diesem Thema geschrieben - http://www.oznetnerd.com/category/subnetting/
Admins, wenn dieser Beitrag als Spam angesehen wird, können Sie ihn gerne löschen.
Edit: Auf Anregung von YLearn'werde ich versuchen, die relevanten Teile aus Teil 1 meiner Serie zu übernehmen, ohne den gesamten Beitrag hier einzufügen.
Nehmen wir 195.70.16.159/30 als Beispiel.
Da es sich um eine /30 handelt, wissen wir, dass der Host-Teil im vierten Oktett stehen wird. Konvertieren wir das ins Binärformat:
128 64 32 16 8 4 2 1
SN SN SN SN SN SN H H
1 0 0 1 1 1 1 1
Um die Netzwerkadresse herauszufinden, müssen wir nur die SN-Bits, die eine 1 enthalten, addieren. (128 + 16 + 8 + 4 = 156).
Wenn Sie diese 156 zu den ersten drei Oktetten der Adresse addieren, erhalten Sie die Netzwerkadresse 195.70.16.156.
Da wir wissen, dass die erste verwendbare Adresse immer die Netzwerkadresse plus eins ist, müssen wir nur die folgende Berechnung durchführen: (156 + 1 = 157).
Dies ergibt eine erste nutzbare Adresse von 195.70.16.157.
Lassen wir nun die letzte nutzbare Adresse für einen Moment aus und finden die Broadcast-Adresse. Um diese herauszufinden, müssen wir nur alle H-Bits zusammenzählen (unabhängig davon, ob sie eine 1 oder eine 0 sind) und diese Zahl dann zur Netzwerkadresse addieren. (2 + 1 + 156 = 159).
Daraus ergibt sich eine Broadcast-Adresse von 195.70.16.159.
Berechnen wir nun die letzte verwendbare Adresse. Dieser Vorgang ähnelt der Ermittlung der ersten nutzbaren Adresse, doch anstatt eine Eins zur Netzwerkadresse hinzuzufügen, ziehen wir eine Eins von der Broadcast-Adresse ab. (159 - 1 = 158).
Daraus ergibt sich die letzte nutzbare Adresse von 195.70.16.158.
Und das war's auch schon! Unsere Schablone ist vollständig. Zum leichteren Nachschlagen finden Sie sie hier noch einmal:
Als Abkürzung können Sie auch diese Formel verwenden. Sie funktioniert für Subnetze jeder Größe:
Beispiel:
IP: 128.42.5.4
In binärer Form: 10000000 00101010 00000101 00000100
Teilnetz: 255.255.248.0
Wie können Sie die Präfix-, Netzwerk-, Subnetz- und Hostnummern ermitteln?
32768 16384 8192 4096 2048 1024 512 256 ----> Binary
128 192 224 240 248 252 254 255 ----> Sunet Mask
/17 /18 /19 /20 /21 /22 /23 /24 ----> CIDR
32766 16382 8190 3094 2046 1022 510 254 ----> Host
128 64 32 16 8 4 2 1 ----> Binary
128 192 224 240 248 252 254 255 ----> Sunet Mask
/25 /26 /27 /28 /29 /30 /31 /32 ----> CIDR
126 62 30 14 6 2 * - ----> Host
128 64 32 16 8 4 2 1
10000000 01000000 00100000 00010000 00001000 00000100 00000010 00000001
Example
Network=192.168.1.0 /24;
Network Address with Subnet mask = 192.168.1.0 subnet 255.255.255.0
Ip address range 192.168.1.0----192.168.1.255
Fist available ip address 192.168.1.1;
Last available ip address 192.168.1.254;
Broadcast address = 192.168.1.255;
254 Host
Network=192.168.1.0 /25;
Network Address with Subnet mask = 192.168.1.0 subnet 255.255.255.128
Ip address range 192.168.1.0----192.168.1.128
Fist available ip address 192.168.1.1;
Last available ip address 192.168.1.126;
Broadcast address = 192.168.1.127;
126 Hosts
When the CIDR increased ex. /24. /25. the network will divided by the
binary number.
/25 increase network 0-128| 128- 256 | you will have 2 Networks
/26 increase network 0-64 | 64 - 128 | 128-192 | 192-256 you will have 4 Networks
.
.
.
/32......