TL;DR:

TL;DR:

Я почти уверен, что это 2x-2, но хочу убедиться, что я прав. Кто-нибудь может сказать и почему?

х2 + 2

2x + 2

2x – 2

х2 – 2

решение1

Количество хостов — это, по сути, количество комбинаций, которые вы можете составить с количеством битов
.TCP/IPv4самый низкий и самый высокий IP-адрес подсети зарезервированы как адрес подсети и широковещательный адрес соответственно.

Обычно подсети обозначаются как , 192.168.420.0/24но, xкак вы описываете, это остаток бит, который вычитается xиз общего числа бит, доступных в TCP/IPv4 (спойлер: их 32).

Формула 2^xпоясняется так:

  • 2 - количество возможностей для каждого бита, 0или1
  • ^ - возвести в степень:
  • x - число бит, которое задано

Я считаю, что пришло время для старого доброго ручного разбиения на подсети.

Пример 24 бит:

у меня есть 24 бита для использования.
Количество IP-адресов (2^24) = 16777216
диапазон = x.0.0.0 - x.255.255.255

Если вы создадите одну большую подсеть, то в ней может быть 16777214 хостов.
Сетевой адрес = x.0.0.0
Широковещательный адрес = x.255.255.255
Эффективный диапазон IP-адресов = x.0.0.1 - x.255.255.254 (16777214)
Маскировка подсети = 255.0.0.0

Пример 16 бит:

у меня есть 16 бит для использования.
количество IP-адресов (2^16) = 65536
диапазон = xx0.0 - xx255.255

если вы создадите одну большую подсеть, в ней может быть 65534 хоста.
сетевой адрес = xx0.0
широковещательный адрес = xx255.255
эффективный диапазон IP-адресов = xx0.1 - xx255.254 (65534)
маскировка подсети = 255.0.0.0

TL;DR:

Да, это2^x-2

решение2

Я подозреваю, что вам нужно 2 x - 2, поскольку в большинстве случаев вы хотите сохранить наименьшее число в качестве сетевого адреса, а наибольшее — для широковещательной передачи.

Возможно, вам будет интересно прочитать эту публикацию на нашем дочернем сайте: https://serverfault.com/questions/49765/how-does-ipv4-subnetting-work

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