Подробный гайд: Маска подсети в IPv4 с примерами расчёта (обучение)

Подробный гайд по маске подсети IPv4: расчет сети, broadcast-адресов, CIDR, VLSM, таблицы префиксов, формулы и примеры настройки.

2026.08.08                  


Подробный гайд: Маска подсети в IPv4Подробный гайд: Маска подсети в IPv4 Гайд по маске подсети в IPv4: что это, как считать сеть, хосты, broadcast, как subnetting работает на практике, таблицы и примеры.


Подробный гайд: маска подсети в IPv4

1. Что такое маска подсети

Маска подсети — это 32-битное значение, которое говорит, какая часть IP-адреса относится к сети, а какая — к хосту внутри этой сети.

Например:

IP:     192.168.1.10
Маска:  255.255.255.0

Это означает:

  • 192.168.1 — часть сети;
  • .10 — часть хоста. То есть устройство с адресом 192.168.1.10 находится в сети 192.168.1.0/24.

2. Зачем нужна маска подсети



Маска подсети нужна, чтобы:

  1. Определять, находится ли получатель в той же сети.
  2. Разделять большие сети на подсети.
  3. Экономно использовать IP-адреса.
  4. Настраивать маршрутизацию.
  5. Задавать диапазоны в DHCP, ACL, firewall, VLAN и т.д.

Пример:

У хоста:

IP:   192.168.1.10/24
Маска: 255.255.255.0

Он хочет отправить пакет на:

192.168.1.50

Маска показывает, что оба адреса находятся в одной сети:

192.168.1.0

Значит, пакет можно отправлять напрямую, без маршрутизатора.

Если же адрес назначения:

192.168.2.50

То это уже другая сеть:

192.168.2.0

Значит, пакет нужно отправлять через шлюз по умолчанию.


3. Форматы записи маски подсети

Маска подсети может записываться в двух основных форматах.

3.1. Десятичный формат

Например:

255.255.255.0

3.2. CIDR-формат

Например:

/24

Запись /24 означает, что в маске 24 бита равны единице.

Примеры:

/8   = 255.0.0.0
/16  = 255.255.0.0
/24  = 255.255.255.0
/25  = 255.255.255.128
/26  = 255.255.255.192
/27  = 255.255.255.224
/28  = 255.255.255.240
/29  = 255.255.255.248
/30  = 255.255.255.252
/31  = 255.255.255.254
/32  = 255.255.255.255

4. Двоичное представление маски

IPv4-адрес состоит из 32 бит.

#### Например:

192.168.1.10

в двоичном виде:

11000000.10101000.00000001.00001010

Маска /24:

11111111.11111111.11111111.00000000

или в десятичном виде:

255.255.255.0

Единицы в маске означают сетевую часть, нули — хостовую часть.


5. Важное правило маски

Классическая корректная маска подсети состоит из подряд идущих единиц, а затем подряд идущих нулей.

Пример правильной маски:

11111111.11111111.11111111.11000000

Это:

255.255.255.192

или:

/26

Пример неправильной маски:

11111111.11111111.11000000.11111111

Здесь после нулей снова идут единицы. В обычных сетях такая маска не используется.


6. Таблица значений октетов маски

Каждый октет маски может принимать только определённые значения:

Десятичное значение Двоичное значение Сколько бит сети в октете
0 00000000 0
128 10000000 1
192 11000000 2
224 11100000 3
240 11110000 4
248 11111000 5
252 11111100 6
254 11111110 7
255 11111111 8

Это очень помогает быстро переводить / в маску.

Пример:

/26

Это:

8 + 8 + 8 + 2 = 26

Значит:

255.255.255.192

7. Как маска определяет адрес сети

Адрес сети получается с помощью побитовой операции AND между IP-адресом и маской.



Пример:

IP:     192.168.1.130
Маска:  255.255.255.128

В двоичном виде последний октет IP:

130 = 10000010

Последний октет маски:

128 = 10000000

Операция AND:

10000010
10000000
--------
10000000

Результат:

128

Значит, адрес сети:

192.168.1.128

8. Адрес сети, broadcast и диапазон хостов

Для каждой подсети есть несколько важных адресов.

8.1. Адрес сети

Это первый адрес подсети. Он формируется, когда все биты хостовой части равны 0.

Например:

192.168.1.0

Этот адрес обычно не назначается хосту.


8.2. Broadcast-адрес

Это последний адрес подсети. Он формируется, когда все биты хостовой части равны 1.

Например:

192.168.1.255

Используется для отправки пакета всем хостам в подсети.


8.3. Диапазон доступных адресов хостов

Это адреса между адресом сети и broadcast.

Пример для сети:

192.168.1.0/24

  • Адрес сети: 192.168.1.0
  • Первый хост: 192.168.1.1
  • Последний хост: 192.168.1.254
  • Broadcast: 192.168.1.255

9. Основные формулы

Если длина префикса равна P, например /24, то:

Количество бит хоста = 32 - P

Для /24:

32 - 24 = 8 бит хоста

Всего адресов в подсети:

2^8 = 256

Обычно доступных адресов хостов:

2^8 - 2 = 254

Два адреса вычитаются:

  • адрес сети;
  • broadcast.

Исключения:

  • /31 может использоваться для point-to-point линков по RFC 3021;
  • /32 используется для одного хоста или маршрута.

10. Таблица популярных масок подсети

Префикс Маска подсети Wildcard Всего адресов Доступно хостов
/8 255.0.0.0 0.255.255.255 16 777 216 16 777 214
/16 255.255.0.0 0.0.255.255 65 536 65 534
/17 255.255.128.0 0.0.127.255 32 768 32 766
/18 255.255.192.0 0.0.63.255 16 384 16 382
/19 255.255.224.0 0.0.31.255 8 192 8 190
/20 255.255.240.0 0.0.15.255 4 096 4 094
/21 255.255.248.0 0.0.7.255 2 048 2 046
/22 255.255.252.0 0.0.3.255 1 024 1 022
/23 255.255.254.0 0.0.1.255 512 510
/24 255.255.255.0 0.0.0.255 256 254
/25 255.255.255.128 0.0.0.127 128 126
/26 255.255.255.192 0.0.0.63 64 62
/27 255.255.255.224 0.0.0.31 32 30
/28 255.255.255.240 0.0.0.15 16 14
/29 255.255.255.248 0.0.0.7 8 6
/30 255.255.255.252 0.0.0.3 4 2
/31 255.255.255.254 0.0.0.1 2 2 для P2P
/32 255.255.255.255 0.0.0.0 1 1



11. Как быстро считать подсети

Очень полезное понятие — размер блока.

Если маска заканчивается не на границе октета, используем формулу:

Размер блока = 256 - значение маски в изменяемом октете

Пример:

/26

Маска:

255.255.255.192

Изменяемый октет — последний.

256 - 192 = 64

Значит, подсети будут идти блоками по 64 адреса:

0-63
64-127
128-191
192-255

12. Пример расчёта сети по IP и маске

Дано

IP: 192.168.1.130/25

Шаг 1. Определяем маску

/25 = 255.255.255.128

Шаг 2. Считаем размер блока

256 - 128 = 128

Шаг 3. Определяем сеть

Блоки:

0-127
128-255

IP 130 попадает во второй блок.

Значит:

Сеть: 192.168.1.128/25

Шаг 4. Определяем broadcast

Broadcast — последний адрес блока:

192.168.1.255

Шаг 5. Определяем диапазон хостов

192.168.1.129 - 192.168.1.254

Итог:

IP:       192.168.1.130/25
Маска:    255.255.255.128
Сеть:     192.168.1.128
Broadcast: 192.168.1.255
Хосты:    192.168.1.129 - 192.168.1.254

13. Пример с маской /22

Дано

IP: 172.16.45.77/22

Шаг 1. Маска

/22 = 255.255.252.0

Шаг 2. Изменяемый октет

Меняется третий октет:

252

Шаг 3. Размер блока

256 - 252 = 4

Шаг 4. Определяем сеть

Третий октет IP:

45

Блоки:

0-3
4-7
8-11
...
40-43
44-47
48-51

45 попадает в блок:

44-47

Значит:

Сеть: 172.16.44.0/22

Шаг 5. Broadcast

172.16.47.255

Шаг 6. Диапазон хостов

172.16.44.1 - 172.16.47.254

Итог:

IP:        172.16.45.77/22
Маска:     255.255.252.0
Сеть:      172.16.44.0
Broadcast: 172.16.47.255
Хосты:     172.16.44.1 - 172.16.47.254

14. Разделение сети на подсети

Допустим, есть сеть:

192.168.1.0/24

Её нужно разделить на 4 подсети.

Шаг 1. Сколько бит нужно занять под подсети

Нужно 4 подсети:

2^n = 4
n = 2

Занимаем 2 дополнительных бита.

Исходный префикс был /24, новый будет:

/24 + 2 = /26

Шаг 2. Новая маска

/26 = 255.255.255.192

Шаг 3. Размер блока

256 - 192 = 64

Шаг 4. Подсети

Подсеть Адрес сети Диапазон хостов Broadcast
1 192.168.1.0/26 192.168.1.1 - 192.168.1.62 192.168.1.63
2 192.168.1.64/26 192.168.1.65 - 192.168.1.126 192.168.1.127
3 192.168.1.128/26 192.168.1.129 - 192.168.1.190 192.168.1.191
4 192.168.1.192/26 192.168.1.193 - 192.168.1.254 192.168.1.255

Каждая подсеть:

64 адреса всего
62 доступных хоста

15. Подбор маски под количество хостов

Частая задача: нужно обеспечить определённое количество хостов в подсети.

Формула:

2^h - 2 >= требуемое количество хостов

где h — количество бит хоста.


Пример 1. Нужно 50 хостов

Ищем минимальное h:

2^5 - 2 = 30

Мало.

2^6 - 2 = 62

Подходит. Значит, нужно 6 бит хоста.

Префикс:

32 - 6 = /26

Маска:

255.255.255.192

Пример 2. Нужно 100 хостов

2^6 - 2 = 62

Мало.

2^7 - 2 = 126

Подходит.

Значит:

32 - 7 = /25

Маска:

255.255.255.128

Пример 3. Нужно 800 хостов

2^9 - 2 = 510

Мало.

2^10 - 2 = 1022

Подходит.

Значит:

32 - 10 = /22

Маска:

255.255.252.0

16. VLSM — маски переменной длины

VLSM, Variable Length Subnet Masking, — это когда внутри одной сети используются подсети разного размера.

Это удобно, когда есть разные сегменты:

  • серверы — много адресов;
  • пользователи — много адресов;
  • Wi-Fi — много адресов;
  • линки между маршрутизаторами — мало адресов;
  • управление — немного адресов.

Пример VLSM

Исходная сеть:

192.168.20.0/24

Нужно разместить:

60 хостов
25 хостов
10 хостов
2 хоста

Важно: сначала выделяем самую большую подсеть.


1. Подсеть на 60 хостов

Нужно минимум 60 доступных адресов.

Подходит /26:

2^6 - 2 = 62

Параметры:

Сеть:      192.168.20.0/26
Маска:     255.255.255.192
Хосты:     192.168.20.1 - 192.168.20.62
Broadcast: 192.168.20.63

2. Подсеть на 25 хостов

Следующий свободный адрес:

192.168.20.64

Нужно минимум 25 хостов.

Подходит /27:

2^5 - 2 = 30

Параметры:

Сеть:      192.168.20.64/27
Маска:     255.255.255.224
Хосты:     192.168.20.65 - 192.168.20.94
Broadcast: 192.168.20.95

3. Подсеть на 10 хостов

Следующий свободный адрес:

192.168.20.96

Нужно минимум 10 хостов.

Подходит /28:

2^4 - 2 = 14

Параметры:

Сеть:      192.168.20.96/28
Маска:     255.255.255.240
Хосты:     192.168.20.97 - 192.168.20.110
Broadcast: 192.168.20.111

4. Подсеть на 2 хоста

Следующий свободный адрес:

192.168.20.112

Для двух хостов обычно используется /30.

Параметры:

Сеть:      192.168.20.112/30
Маска:     255.255.255.252
Хосты:     192.168.20.113 - 192.168.20.114
Broadcast: 192.168.20.115

Для point-to-point линков также может использоваться /31, если оборудование поддерживает RFC 3021.


17. Сводная таблица VLSM-примера

Назначение Требуется хостов Префикс Адрес сети Диапазон хостов Broadcast
Большая сеть 60 /26 192.168.20.0/26 192.168.20.1 - 192.168.20.62 192.168.20.63
Средняя сеть 25 /27 192.168.20.64/27 192.168.20.65 - 192.168.20.94 192.168.20.95
Малая сеть 10 /28 192.168.20.96/28 192.168.20.97 - 192.168.20.110 192.168.20.111
Линк 2 /30 192.168.20.112/30 192.168.20.113 - 192.168.20.114 192.168.20.115

18. Классовые сети: историческая справка

Раньше IPv4 делился на классы.

Класс Диапазон первых октетов Маска по умолчанию
A 1 - 126 255.0.0.0
B 128 - 191 255.255.0.0
C 192 - 223 255.255.255.0
D 224 - 239 Multicast
E 240 - 255 Зарезервировано

Сейчас в основном используется CIDR, то есть бесклассовая адресация. Поэтому нельзя просто смотреть на первый октет и автоматически считать маску. Нужно смотреть фактический префикс, например /26, /22, /27.


19. Частные IP-адреса

Частные адреса используются внутри локальных сетей и не маршрутизируются напрямую в интернете.

Диапазон Префикс Количество адресов
10.0.0.0 - 10.255.255.255 10.0.0.0/8 16 777 216
172.16.0.0 - 172.31.255.255 172.16.0.0/12 1 048 576
192.168.0.0 - 192.168.255.255 192.168.0.0/16 65 536

Примеры:

192.168.0.0/24
192.168.1.0/24
10.10.0.0/16
172.16.5.0/24

20. Специальные адреса и маски

/32

255.255.255.255

Означает один конкретный IP-адрес.

Пример:

192.168.1.10/32

Используется для:

  • loopback;
  • host route;
  • управления;
  • firewall-правил.

/31

255.255.255.254

Используется для point-to-point соединений по RFC 3021. В классическом понимании в /31 нет отдельных адресов сети и broadcast, но оба адреса могут использоваться как адреса интерфейсов.

Пример:

192.168.100.0/31

Адреса:

192.168.100.0
192.168.100.1

/30

255.255.255.252

Часто используется для линков между маршрутизаторами.

Всего адресов:

4

Доступно хостов:

2

Пример:

192.168.100.0/30
  • Сеть: 192.168.100.0
  • Первый хост: 192.168.100.1
  • Второй хост: 192.168.100.2
  • Broadcast: 192.168.100.3

0.0.0.0/0

Это маршрут по умолчанию.

Означает:

любой адрес IPv4

Используется как default route.


127.0.0.0/8

Loopback-адреса.

Чаще всего используется:

127.0.0.1

Это локальный адрес устройства.


169.254.0.0/16

APIPA.

Адреса вида:

169.254.x.x

Windows/Linux/macOS могут автоматически назначить такой адрес, если DHCP-сервер недоступен.


21. Wildcard-маска

Wildcard-маска — это обратная маска подсети.

Она часто используется в:

  • ACL;
  • OSPF;
  • firewall-правилах;
  • некоторых настройках сетевого оборудования.

Формула:

Wildcard = 255.255.255.255 - маска подсети

Примеры:

Маска Wildcard
255.255.255.0 0.0.0.255
255.255.255.128 0.0.0.127
255.255.255.192 0.0.0.63
255.255.255.224 0.0.0.31
255.255.252.0 0.0.3.255
255.0.0.0 0.255.255.255

Пример:

Маска:

255.255.255.0

Wildcard:

0.0.0.255

Это означает, что первые три октета должны совпадать точно, а последний может быть любым.

Например:

192.168.1.0 0.0.0.255

покрывает адреса:

192.168.1.0 - 192.168.1.255

22. Агрегирование маршрутов

Иногда несколько сетей можно объединить одной записью.

Пример:

192.168.0.0/24
192.168.1.0/24
192.168.2.0/24
192.168.3.0/24

Их можно суммировать в:

192.168.0.0/22

Почему?

Третий октет:

0 = 00000000
1 = 00000001
2 = 00000010
3 = 00000011

Первые 6 бит третьего октета совпадают:

000000

Итого общий префикс:

16 бит первых двух октетов + 6 бит третьего = 22

Поэтому:

192.168.0.0/22

включает сети:

192.168.0.0/24
192.168.1.0/24
192.168.2.0/24
192.168.3.0/24

23. Как проверить маску в Windows

Команды:

ipconfig
ipconfig /all
route print

В PowerShell:

Get-NetIPAddress

или:

Get-NetIPAddress | Select-Object IPAddress, PrefixLength, InterfaceAlias

Пример вывода:

IPv4 Address: 192.168.1.10
Subnet Mask: 255.255.255.0

Get-NetIPAddress | Select-Object IPAddress, PrefixLength, InterfaceAliasили:

IPAddress: 192.168.1.10
PrefixLength: 24

24. Как проверить маску в Linux

Команды:

ip addr
ip -brief addr
ip route

Пример вывода:

inet 192.168.1.10/24 brd 192.168.1.255 scope global eth0

Это означает:

IP:        192.168.1.10
Маска:     /24
Broadcast: 192.168.1.255

Если установлена утилита ipcalc:

ipcalc 192.168.1.10/26

25. Пример настройки интерфейса на Cisco-подобном оборудовании

interface GigabitEthernet0/0
 ip address 192.168.1.1 255.255.255.192
 no shutdown

Это назначает интерфейсу:

IP:    192.168.1.1
Маска: 255.255.255.192

То есть интерфейс находится в подсети:

192.168.1.0/26

26. Как понять, что два адреса в одной подсети

Алгоритм:

  1. Берём IP и маску.
  2. Применяем побитовое AND.
  3. Получаем адрес сети.
  4. Делаем то же самое для второго адреса.
  5. Если адреса сети совпадают — устройства в одной подсети.

Пример:

Хост A:

192.168.1.10/24

Хост B:

192.168.1.200/24

Общая сеть:

192.168.1.0

Значит, они в одной подсети.

Хост C:

192.168.2.200/24

Сеть:

192.168.2.0

Значит, это другая подсеть.


27. Частые ошибки

Ошибка 1. Несоответствие маски и префикса

Например, написано:

/24

но указана маска:

255.255.0.0

Это ошибка.

/24 должно быть:

255.255.255.0

Ошибка 2. Назначение адреса сети хосту

Например:

192.168.1.0/24

Это адрес сети. Обычно его не следует назначать компьютеру или серверу.


Ошибка 3. Назначение broadcast-адреса хосту

Например:

192.168.1.255/24

Это broadcast. Его нельзя использовать как обычный адрес хоста.


Ошибка 4. Пересечение подсетей

Например:

192.168.1.0/24

и внутри неё пытаются создать:

192.168.1.128/25

Это не отдельная независимая сеть, а часть первой. Такие подсети нельзя использовать одновременно без корректного разделения.


Ошибка 5. Шлюз по умолчанию вне подсети

Если хост имеет адрес:

192.168.1.10/24

то шлюз должен быть в той же сети, например:

192.168.1.1

Шлюз вида:

192.168.2.1

без дополнительной маршрутизации не подойдёт.


Ошибка 6. Путать маску и wildcard

Маска:

255.255.255.0

Wildcard:

0.0.0.255

Это разные вещи.


Ошибка 7. Думать только классовыми масками

Например, видеть адрес:

172.16.10.5

и автоматически считать:

255.255.0.0

Но на практике он может быть:

172.16.10.0/24

или даже:

172.16.10.0/26

Смотрите фактический префикс.


28. Практические задания

Задание 1

Дано:

192.168.10.200/27

Найти:

  • маску;
  • адрес сети;
  • broadcast;
  • диапазон хостов.

Задание 2

Дано:

172.16.20.77/20

Найти:

  • маску;
  • адрес сети;
  • broadcast;
  • диапазон хостов.

Задание 3

Есть сеть:

192.168.5.0/24

Нужно получить минимум 6 подсетей.

Вопросы:

  • какой префикс использовать;
  • сколько подсетей получится;
  • сколько хостов будет в каждой подсети.

Задание 4

Нужно разместить 800 хостов в одной подсети. Какой минимальный префикс подойдёт?


Задание 5

Какая wildcard-маска у /26?


29. Ответы на задания

Ответ 1

192.168.10.200/27

Маска:

255.255.255.224

Размер блока:

256 - 224 = 32

Блоки:

0-31
32-63
64-95
96-127
128-159
160-191
192-223
224-255

200 попадает в блок:

192-223

Результат:

Сеть:      192.168.10.192/27
Хосты:     192.168.10.193 - 192.168.10.222
Broadcast: 192.168.10.223

Ответ 2

172.16.20.77/20

Маска:

255.255.240.0

Размер блока по третьему октету:

256 - 240 = 16

Блоки:

0-15
16-31
32-47
...

20 попадает в блок:

16-31

Результат:

Сеть:      172.16.16.0/20
Хосты:     172.16.16.1 - 172.16.31.254
Broadcast: 172.16.31.255

Ответ 3

Исходная сеть:

192.168.5.0/24

Нужно минимум 6 подсетей.

2^3 = 8

Занимаем 3 бита.

Новый префикс:

/27

Маска:

255.255.255.224

Получится 8 подсетей:

192.168.5.0/27
192.168.5.32/27
192.168.5.64/27
192.168.5.96/27
192.168.5.128/27
192.168.5.160/27
192.168.5.192/27
192.168.5.224/27

В каждой подсети:

30 доступных хостов

Ответ 4

Нужно 800 хостов.

Проверяем:

/23 = 510 хостов

Мало.

/22 = 1022 хоста

Подходит.

Ответ:

/22

Маска:

255.255.252.0

Ответ 5

/26 соответствует маска:

255.255.255.192

Wildcard:

0.0.0.63

30. Шпаргалка для быстрого расчёта

Если дано:

IP/префикс

делайте так:

  1. Переведите префикс в маску.
  2. Найдите изменяемый октет.
3. Посчитайте размер блока:
256 - значение маски в изменяемом октете
4. Найдите сеть:
floor(значение октета / размер блока) * размер блока
5. Broadcast:
начало блока + размер блока - 1
6. Диапазон хостов:
сеть + 1 ... broadcast - 1

31. Краткий итог

  • Маска подсети делит IP-адрес на сеть и хост.
  • /24 означает 24 единичных бита в маске.
  • 255.255.255.0 — это то же самое, что /24.
  • Адрес сети получается операцией AND между IP и маской.
  • Broadcast — последний адрес подсети.

- Количество хостов обычно считается как:

2^h - 2
  • Для /31 и /32 есть особые случаи.
  • VLSM позволяет использовать подсети разного размера.
  • Нельзя назначать хостам адрес сети и broadcast.

Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.


Статью подготовил: Аверко Денис Сергеевич @Nymexis г. Омск (5)(· · · — — — · · ·)(30)

Комментарии

Загрузка...
Если комментарии не загружаются, можете попробовать отключить блокировщик рекламы для этого сайта