Маска подсети (Subnet Mask) — это 32-битное число (в IPv4) или 128-битное (в IPv6), которое определяет, какая часть IP-адреса относится к сети, а какая — к конкретному устройству (хосту). Она работает как "фильтр", накладываемый на IP-адрес для разделения его на две ключевые части:
- Адрес сети (Network Address): Идентифицирует всю подсеть в интернете или локальной сети.
- Адрес хоста (Host Address): Идентифицирует конкретное устройство (компьютер, принтер, сервер) внутри этой подсети.
Как она выглядит?
- В IPv4: Записывается как 4 октета (числа от 0 до 255), разделенных точками, аналогично IP-адресу.
- Примеры: 255.255.255.0, 255.255.0.0, 255.255.255.252.
- В двоичном виде: Состоит из последовательности единиц (обозначающих биты сети) и нулей (обозначающих биты хоста).
- Пример маски 255.255.255.0 в двоичном виде: 11111111.11111111.11111111.00000000
- Префикс CIDR: Более современная и краткая запись. Указывается через слэш после IP-адреса ( /24). Число после слэша — это количество единиц в маске.
- Маска 255.255.255.0 = /24 (24 единицы подряд).
- Маска 255.255.0.0 = /16.
- Маска 255.0.0.0 = /8.
Как пользоваться маской подсети (основные принципы):
- Определение сети и хоста:
- Возьмите IP-адрес устройства и его маску подсети.
- Выполните операцию логического И (AND) между битами IP-адреса и битами маски.
- Результат операции AND: Адрес сети.
- Оставшаяся часть IP-адреса (где маска была 0): Адрес хоста.
Пример:
-
- IP-адрес: 192.168.1.10 (Двоичный: 11000000.10101000.00000001.00001010)
- Маска подсети: 255.255.255.0 (Двоичный: 11111111.11111111.11111111.00000000)
- Операция AND:
text
Copy
Download
11000000.10101000.00000001.00001010 (IP)
AND
11111111.11111111.11111111.00000000 (Маска)
------------------------------------
11000000.10101000.00000001.00000000 (Результат)
-
- Результат ( 11000000.10101000.00000001.00000000): 192.168.1.0 — Адрес сети.
- Хост-часть ( 00001010): 10 — Адрес хоста внутри сети 192.168.1.0.
- Определение размера подсети (количество доступных IP-адресов для хостов):
- Посчитайте количество нулевых бит (N) в маске подсети.
- Количество доступных адресов для устройств = 2^N - 2.
- Почему "-2"?
- Первый адрес в подсети ( АдресСети + все нули в хостовой части) — это адрес сети (Network Address), его нельзя назначить устройству.
- Последний адрес в подсети ( АдресСети + все единицы в хостовой части) — это широковещательный адрес (Broadcast Address), используется для отправки данных всем устройствам в сети, его тоже нельзя назначить устройству.
- Пример с маской 255.255.255.0 ( /24):
- Нулевых бит (N) = 8 (последний октет).
- Количество хостов = 2^8 - 2 = 256 - 2 = 254.
- В сети 192.168.1.0/24 можно использовать адреса с 192.168.1.1 по 192.168.1.254.
- Определение принадлежности устройств к одной сети:
- Два устройства могут общаться напрямую (без маршрутизатора) только если они находятся в одной подсети.
- Чтобы это проверить:
- Найдите адрес сети для Устройства A (IP_A AND Mask_A).
- Найдите адрес сети для Устройства B (IP_B AND Mask_B).
- Если адреса сетей совпадают и маски подсети одинаковы, то устройства в одной подсети.
- Пример:
- Устройство A: 192.168.1.10 / 255.255.255.0 -> Сеть: 192.168.1.0
- Устройство B: 192.168.1.20 / 255.255.255.0 -> Сеть: 192.168.1.0 -> Одна сеть.
- Устройство C: 192.168.2.30 / 255.255.255.0 -> Сеть: 192.168.2.0 -> Другая сеть (нужен маршрутизатор).
- Разбиение крупной сети на подсети (Subnetting):
- Основная цель — создание логически разделенных, более мелких и управляемых сетей из большой исходной сети (например, разделение сети компании по отделам или зданиям).
- Для этого "заимствуются" биты из хостовой части исходной маски и добавляются в сетевую часть.
- Это увеличивает количество единиц в маске (и префикс CIDR), уменьшая количество доступных адресов в каждой новой подсети, но увеличивая общее количество подсетей.
- Это более продвинутая тема, требующая отдельного объяснения.
- Объединение подсетей в суперсети (Supernetting, CIDR Aggregation):
- Противоположность subnetting. Используется для упрощения таблиц маршрутизации в интернете.
- Несколько смежных подсетей с общим префиксом объединяются в одну большую сеть с более короткой маской (меньшим префиксом CIDR).
- Это используется провайдерами и на магистральных маршрутизаторах.
Где и как вы её используете практически?
- Настройка сетевых интерфейсов: При назначении статического IP-адреса устройству (компьютеру, серверу, принтеру) вы обязательно указываете маску подсети (или префикс CIDR) вместе с IP-адресом и шлюзом по умолчанию. Без маски устройство не поймет, какие адреса находятся в его локальной сети.
- Настройка маршрутизаторов: На маршрутизаторах маски используются для:
- Определения локальных сетей (LAN), подключенных к его интерфейсам.
- Построения таблиц маршрутизации (куда и по какому интерфейсу отправлять пакеты для достижения той или иной сети, а не конкретного хоста).
- Настройки правил брандмауэра (разрешение/запрещение трафика между подсетями).
- Диагностика сетевых проблем: Команды типа ipconfig (Windows) или ifconfig/ ip addr (Linux/macOS) показывают IP-адрес и маску подсети для каждого интерфейса. Это первый шаг в диагностике ("видит ли устройство себя в правильной сети?").
- Планирование сети: При проектировании сети администратор выбирает подходящую маску подсети (размер подсети) для каждого сегмента в зависимости от количества необходимых устройств.
Ключевые выводы:
- Маска подсети определяет границу между адресом сети и адресом хоста в IP-адресе.
- Операция AND между IP и маской дает адрес сети.
- Количество нулей в маске определяет количество возможных адресов хостов в подсети ( 2^N - 2).
- Устройства с одинаковым адресом сети (рассчитанным по их IP и маске) и одинаковой маской находятся в одной подсети и могут общаться напрямую.
- Маска обязательна для корректной работы IP-адресации и маршрутизации. Она является неотъемлемой частью сетевой конфигурации любого устройства.
Понимание маски подсети — фундаментальный навык для работы с сетевыми технологиями, администрирования сетей и диагностики проблем подключения.