Маска подсети указывает, какая часть IP-адреса отводится под сеть, а какая — под хосты. Маска может быть записана в десятичном формате, например, 255.255.255.0
, или в префиксном формате, например, /24
.
Примеры масок и префиксов:
/24
или255.255.255.0
— 256 адресов, из них 254 доступны для хостов./25
или255.255.255.128
— 128 адресов, из них 126 доступны для хостов./26
или255.255.255.192
— 64 адреса, из них 62 доступны для хостов./30
или255.255.255.252
— 4 адреса, из них 2 доступны для хостов./32
или255.255.255.255
— 1 адрес, недоступен для хостов (используется для индивидуального IP).
Чтобы узнать количество адресов в сети, определите количество бит, отведенных под хостов:
- Вычислите количество бит для хостов:
h = 32 - (порядок маски)
- Рассчитайте количество адресов:
Количество адресов = 2^h - 2
(вычитаем 2 для адреса сети и широковещательного адреса).
Пример:
Для сети /24
:
- Биты для хостов:
32 - 24 = 8
- Адресов:
2^8 - 2 = 254
- Запишите единицы слева направо, соответствующие количеству бит для сети, а затем добавьте нули для хостов.
- Преобразуйте 8-битные блоки в десятичный формат.
Пример:
- Префикс
/22
:- Двоичная запись:
11111111.11111111.11111100.00000000
- Десятичная запись:
255.255.252.0
- Двоичная запись:
- Адрес сети — это начальный адрес (все биты хостовой части равны нулю).
- Первый IP для устройств — следующий за адресом сети.
- Последний IP для устройств — адрес перед широковещательным.
- Широковещательный адрес — все биты хостовой части равны единице.
Пример для сети 192.168.0.0/22
:
- Адрес сети:
192.168.0.0
- Маска:
255.255.252.0
- Первый IP:
192.168.0.1
- Последний IP:
192.168.3.254
- Широковещательный адрес:
192.168.3.255
Для определения начального адреса сети в зависимости от маски подсети используется следующее правило кратности:
- Определите общее количество адресов в сети.
- Разделите количество адресов на 256 (общее количество адресов в четвёртом октете):
- Если результат меньше 256, то примените это число как кратность для третьего октета.
- Если результат больше 256, разделите его ещё раз на 256, чтобы получить кратность для второго октета.
Примеры:
-
/23 (маска
255.255.254.0
): 512 адресов.
( 512 / 256 = 2 ), значит третий октет должен быть кратен 2 (0, 2, 4 и так далее). -
/22 (маска
255.255.252.0
): 1024 адреса.
( 1024 / 256 = 4 ), значит третий октет должен быть кратен 4 (0, 4, 8 и так далее). -
/21 (маска
255.255.248.0
): 2048 адресов.
( 2048 / 256 = 8 ), значит третий октет должен быть кратен 8 (0, 8, 16 и так далее). -
/13 (маска
255.248.0.0
): 524288 адресов.
( 524288 / 256 = 2048), затем ( 2048 / 256 = 8 ), значит второй октет должен быть кратен 8 (0, 8, 16 и так далее).
- Адрес сети — это первый адрес диапазона, где все биты хостовой части равны нулю.
- Широковещательный адрес — последний адрес диапазона, где все биты хостовой части равны единице.
- Эти два адреса зарезервированы и не могут использоваться для устройств.
- Класс A: Адреса от
0.0.0.0
до127.255.255.255
(по умолчанию маска/8
). - Класс B: Адреса от
128.0.0.0
до191.255.255.255
(по умолчанию маска/16
). - Класс C: Адреса от
192.0.0.0
до223.255.255.255
(по умолчанию маска/24
). - Классы используются для обозначения количества возможных хостов в сети, но они устарели с введением CIDR.
- CIDR позволяет гибко использовать маски подсети, игнорируя классовую структуру.
- Примеры:
192.168.1.0/22
,10.0.0.0/12
.
- VLSM позволяет делить сеть на подсети разного размера, что полезно для оптимизации адресного пространства.
- Например, можно выделить сеть с маской
/27
для 30 устройств и с маской/29
для 6 устройств.
Дано: диапазон 192.168.55.1 - 192.168.58.125
Задача: найти маску и префикс.
Решение:
- Вычислить количество адресов: от
192.168.55.1
до192.168.58.125
— это 894 адреса. - Найти минимальное количество бит для хостов:
2^10 = 1024
адресов покрывает 894. - Маска:
/22
, что соответствует255.255.252.0
. - Диапазон сети
/22
:192.168.55.0
до192.168.58.255
.
Ответ:
- Маска подсети:
255.255.252.0
- Префикс:
/22
- Диапазон адресов:
192.168.55.0 - 192.168.58.255
- Доступные адреса:
192.168.55.1 - 192.168.58.254