Первый и последний IP-адрес сети 192.168.176.0/23 (подсеть 23)

Давайте иметь следующий адрес сети: 192.168.176.0/23. Каковы первый и последний IP-адреса этой сети?

После этого ответа /questions/286545/nahozhdenie-pervogo-i-poslednego-adresa-bloka-ip-adresov-s-maskoj-podseti/286547#286547 я предполагаю, что:

/ 23 означает 23 бита для подсети. При 8 битах на байт мы получаем 16 бит для первых двух байтов, а затем семь (7) для третьего => 1111 1111. 1111 1111. 1111 1110. 0000 0000, верно?

Это означает, что наши последние два байта будут иметь вид (nnnn nnnH. HHHH HHHH), где n - бит подсети, а H - бит хоста.

Таким образом, сетевой адрес (nnnn nnn|0 0000 0000) -> .0, трансляция: (nnnn nnn|1 1111 1111) -> 2^9 транслируется? Невозможно. Здесь я что-то упускаю, что-то простое. Так какой будет первый и последний IP? Это то, что я не получаю после ответа, упомянутого в ссылке выше (от b0fh).

Первый 192.168.176.1, последний 192.168. 177,204?

2 ответа

Решение

Вас смущает то, что вы пытаетесь преобразовать хост-часть в десятичное значение и суммировать его с сетевым адресом, в то время как хост-часть разделяется на два октета.

Ваша сеть:

11000000.10101000.10110000.00000000

Ваша маска сети:

11111111.11111111.11111110.00000000

Ваша маска шаблона (часть, которая изменится):

00000000.00000000.00000001.11111111

Как правило, когда вы говорите 2^9 = 512 широковещательно, вы просто забываете, что один бит части хоста находится в последнем бите третьего октета. Так что, как он меняется, вы получите либо это:

11000000.10101000.10110000.<something>

Или это:

11000000.10101000.10110001.<something>

Так вот твой512"десятичная форма на самом деле 0.0.1.255 (всегда должен быть в десятичной форме, чтобы вы не делали эту ошибку). Несетевая часть будет идти от 192.168.176.0 в 192.168.176.0 + 0.0.1.255, Последний адрес, являющийся широковещательным адресом, вы узнаете, что это 192.168.177.255,

Вы также можете получить его, добавив маску подстановки к вашему сетевому адресу:

  11000000.10101000.10110000.00000000

+ 00000000.00000000.00000001.11111111

= 11000000.10101000.10110001.11111111

Который 192.168.177.255,

Я попытаюсь уточнить, что я истолковываю как источник вашей путаницы:

Адрес IPv4 - это одно 32-разрядное целое число, но он обычно не форматируется таким образом, когда мы записываем адрес.

Как я уверен, что вы знаете, норма заключается в том, чтобы написать адрес как [first eight bits in decimal].[next eight bits in decimal].[next eight bits in decimal].[last eight bits in decimal] но важно понимать, что на самом деле это просто другой способ форматирования этого единственного, потенциально очень большого числа.

Когда вы указываете маску сети CIDR (/n), который говорит, сколько битов из 32-битного адреса образуют идентификатор сети, остальные биты образуют идентификатор хоста.


В вашем примере 192.168.176.0/23первые 23 бита являются префиксом сети, оставляя 9 битов для идентификатора хоста, что означает, что идентификатор хоста пересекает границу последнего октета. Идентификатор хоста повлияет на последние два сегмента a.b.c.d-форматированный адрес.

Чтобы проиллюстрировать это, я включу sipcalc вывод, показывающий оба адреса в виде необработанных битов (действительно более актуальных для понимания математики), а также a.b.c.dадреса в формате

$ 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

-
$ 
Другие вопросы по тегам