fragen stichworte

Erste und letzte IP-Adresse des Netzwerks 192.168.176.0/23 (Subnetz 23)

Wir haben die folgende Adresse des Netzwerks: 192.168.176.0/23. Wie lauten die erste und letzte IP-Adresse dieses Netzwerks?

Nach dieser Antwort https://serverfault.com/a/327782/288201 Ich gehe davon aus, dass:

/23 bedeutet 23 Bits für das Subnetz. Bei 8 Bits pro Byte erhalten wir 16 Bits für die ersten zwei Bytes und dann sieben (7) für das dritte => 1111 1111. 1111 1111. 1111 1110. 0000 0000, richtig?

Es bedeutet, dass unsere letzten zwei Bytes die Form haben (nnnn nnnH. HHHH HHHHH), wobei n ein Subnetzbit und H ein Hostbit sind.

Somit lautet die Netzwerkadresse (nnnn nnn | 0 0000 0000) -> .0, die Sendung ist (nnnn nnn | 1 1111 1111) -> 2 ^ 9 wird gesendet? Unmöglich. Hier fehlt mir etwas, etwas einfaches. Was wäre also die erste und letzte IP? Dies ist was ich nicht folge der Antwort, die im obigen Link erwähnt wurde (von b0fh).

Erster 192.168.176.1, letzter 192.168. 177 .254?

antworten

Ich werde versuchen zu klären, was ich als Verwirrungsquelle interpretiere:

Eine IPv4-Adresse ist eine einzelne 32-Bit-Ganzzahl. Normalerweise wird sie jedoch nicht so formatiert, wenn wir eine Adresse ausschreiben.

Wie Sie sicher wissen, schreiben Sie die Adresse normalerweise als [first eight bits in decimal].[next eight bits in decimal].[next eight bits in decimal].[last eight bits in decimal], aber es ist wichtig zu wissen, dass es wirklich nur eine andere Art ist, diese einzelne, möglicherweise sehr große Zahl zu formatieren.

Wenn Sie eine CIDR -Netzmaske (/n) angeben, die angibt, wie viele Bits der 32-Bit-Adresse die Netzwerkkennung bilden, die restlichen Bits die Hostkennung.


In Ihrem Beispiel 192.168.176.0/23 sind die ersten 23 Bits das Netzwerkpräfix, wobei 9 Bits für die Hostkennung übrig bleiben. Dies bedeutet, dass die Hostkennung die letzte Oktettgrenze überschreitet. Die Host-ID wirkt sich auf die letzten beiden Segmente der a.b.c.d -formatierten Adresse aus.

Um dies zu veranschaulichen, füge ich die sipcalc -Ausgabe hinzu, die sowohl die Adressen als Rohbits (wirklich relevant für das Verständnis der Mathematik) als auch a.b.c.d -formatierte Adressen enthält.

$ sipcalc -b 192.168.176.0/23                                                                                             
-[ipv4 : 192.168.176.0/23] - 0

[CIDR bitmaps]
Host address            - 11000000.10101000.10110000.00000000
Network address         - 11000000.10101000.10110000.00000000
Network mask            - 11111111.11111111.11111110.00000000
Broadcast address       - 11000000.10101000.10110001.11111111
Cisco wildcard          - 00000000.00000000.00000001.11111111
Network range           - 11000000.10101000.10110000.00000000 -
                          11000000.10101000.10110001.11111111
Usable range            - 11000000.10101000.10110000.00000001 -
                          11000000.10101000.10110001.11111110

-
$


$ sipcalc  192.168.176.0/23                                                                                               
-[ipv4 : 192.168.176.0/23] - 0

[CIDR]
Host address            - 192.168.176.0
Host address (decimal)  - 3232280576
Host address (hex)      - C0A8B000
Network address         - 192.168.176.0
Network mask            - 255.255.254.0
Network mask (bits)     - 23
Network mask (hex)      - FFFFFE00
Broadcast address       - 192.168.177.255
Cisco wildcard          - 0.0.1.255
Addresses in network    - 512
Network range           - 192.168.176.0 - 192.168.177.255
Usable range            - 192.168.176.1 - 192.168.177.254

-
$

Was Sie verwirrend macht, ist, dass Sie versuchen, den Host-Teil in einen Dezimalwert umzuwandeln und ihn zur Netzwerkadresse zusammenzufassen, während der Host-Teil in zwei Oktiken aufgeteilt ist.

Ihr Netzwerk ist:

11000000.10101000.10110000.00000000

Ihre Netzmaske lautet:

11111111.11111111.11111110.00000000

Ihre Platzhaltermaske (der Teil, der geändert wird):

00000000.00000000.00000001.11111111

Wenn Sie sagen, dass 2^9 = 512 rundgesendet wird, vergessen Sie normalerweise, dass sich ein Bit des Host-Parts im letzten Bit des dritten Oktkts befindet. So wie es sich ändert, erhalten Sie entweder Folgendes:

11000000.10101000.10110000.<something>

Oder das:

11000000.10101000.10110001.<something>

Also hier ist Ihre Dezimalform "512" tatsächlich 0.0.1.255 (sollte immer eine Dezimalform mit Punkten sein, damit Sie diesen Fehler nicht machen). Der Nicht-Netzwerk-Teil wechselt von 192.168.176.0 zu 192.168.176.0 + 0.0.1.255. Die letzte Adresse ist die Broadcast-Adresse, die Sie feststellen, dass dies 192.168.177.255 ist.

Sie können es auch erhalten, indem Sie die Platzhaltermaske Ihrer Netzwerkadresse hinzufügen:

 11000000.10101000.10110000.00000000

+ 00000000.00000000.00000001.11111111

= 11000000.10101000.10110001.11111111

Welches ist 192.168.177.255.