Ответ
Маска подсети (subnet mask) — это 32-битное число, которое определяет, какая часть IP-адреса относится к идентификатору сети, а какая — к идентификатору хоста. Это фундаментальное понятие для маршрутизации и сегментации сетей.
Как это работает:
- Маска состоит из последовательных битов
1(сеть) и0(хост). - Например, маска
255.255.255.0(или/24в нотации CIDR) означает, что первые 24 бита IP-адреса — это адрес сети, а оставшиеся 8 бит — адрес хоста. - Для адреса
192.168.1.10/24:- Сеть:
192.168.1.0 - Доступные хосты:
192.168.1.1—192.168.1.254 - Широковещательный адрес:
192.168.1.255
- Сеть:
Практическое применение в DevOps:
- Проектирование VPC/сетей: Разбиение большой сети (например,
10.0.0.0/16) на меньшие подсети (10.0.1.0/24,10.0.2.0/24) для изоляции окружений (prod, staging) или сервисов. - Безопасность: Настройка групп безопасности (Security Groups) и сетевых ACL (Access Control Lists) на основе диапазонов подсетей.
- Маршрутизация: Определение, является ли адрес назначения локальным (отправляется через коммутатор) или удаленным (отправляется на шлюз по умолчанию).
Пример расчета с ipcalc:
$ ipcalc 192.168.1.10/24
Address: 192.168.1.10 11000000.10101000.00000001.00001010
Netmask: 255.255.255.0 = 24 11111111.11111111.11111111.00000000
Wildcard: 0.0.0.255 00000000.00000000.00000000.11111111
=>
Network: 192.168.1.0/24 11000000.10101000.00000001.00000000
HostMin: 192.168.1.1 11000000.10101000.00000001.00000001
HostMax: 192.168.1.254 11000000.10101000.00000001.11111110
Broadcast: 192.168.1.255 11000000.10101000.00000001.11111111