сетевая маска: как рассчитать количество сетей?

сетевая маска: как рассчитать количество сетей?

Мой способ рассчитать номер маски сети хоста, например: я хочу узнать количество хостов для маски сети 255.255.255.192 (префикс 26)

255.255.255.192 11111111.11111111.11111111.11000000             26                      128+64=192

192 — это 128+64 из двух битов «1» последнего октета, номер хоста — это количество битов 0 (часть хоста) последнего октета, поэтому 000000 — это 6, поэтому 2^6-2 — это 62, и подтверждение ipcalc в порядке.

ipcalc 10.2.0.1/26
Address:   10.2.0.1             00001010.00000010.00000000.00 000001
Netmask:   255.255.255.192 = 26 11111111.11111111.11111111.11 000000
Wildcard:  0.0.0.63             00000000.00000000.00000000.00 111111
=>
Network:   10.2.0.0/26          00001010.00000010.00000000.00 000000
HostMin:   10.2.0.1             00001010.00000010.00000000.00 000001
HostMax:   10.2.0.62            00001010.00000010.00000000.00 111110
Broadcast: 10.2.0.63            00001010.00000010.00000000.00 111111
Hosts/Net: 62                    Class A, Private Internet

Мой вопрос: как узнать/вычислить количество подсетей с префиксом..например 26 или 27? Мне нужно сделать сетевую часть (26 "1" бит^2=)?

решение1

Как вы уже знаете из расчета хостов, если у вас есть nбиты, то вы можете иметь различные комбинации этих битов. Вы можете использовать2nточно так жерасчет также для подсетей – по крайней мере, когда все подсети имеют одинаковый размер.

Например, если у вас есть/24сеть (также известную как «класс C») и хотим разделить ее на равные по размеру/29подсети, которые вы будете использовать29−24 = 5биты подсети и поэтому у вас есть2 (29−24) = 2 5 = 32подсети.

Это работает независимо от размера сети; любые различия в «классах» не имеют значения. Другой пример: если у вас есть/16сеть и хотим разделить ее на/27's, это будет2 (27−16) = 2 11 = 2048подсети.

(А если вы разделите сеть на /32, вы получите количество хостов таким же образом!)

решение2

Я нашел решение, как рассчитать подсети, например для маски сети с префиксом 29

255.255.255.248 11111111.11111111.11111111.11111000             29                      128+64+32+16+8=248

у нас в последнем октете

11111000

Итак, число хостов равно 6

000=3=2^3-2=6

количество подсетей 32

11111=2^5=32

Этот способ подходит для класса C IP, для классов A и B он немного сложен, но является хорошим и приятным помощником.здесь

Связанный контент