Каждое устройство в сети имеет уникальный IP-адрес — цифровой идентификатор, позволяющий находить устройства в глобальной или локальной сети. Но сам по себе IP-адрес неполон, для корректной работы необходима еще маска подсети — именно она указывает, какие устройства находятся в одной локальной сети, а какие требуют обращения через маршрутизатор.
Без понимания маски подсети невозможна корректная настройка маршрутизации, диагностика сетевых проблем и эффективное распределение IP-адресов. В этой статье мы разберемся, что такое маска подсети, зачем она нужна и как ее узнать на разных устройствах.
Что такое маска подсети
Маска подсети — это числовой параметр, который определяет, какая часть IP-адреса относится к сети, а какая — к конкретному устройству. Без маски подсети компьютеры и маршрутизаторы не смогут правильно определить, находится ли получатель данных в той же локальной сети или трафик нужно передавать через шлюз.
IP-адрес в версии IPv4 состоит из 32 бит, записанных в виде четырех десятичных чисел (например, 192.168.1.10). Маска подсети имеет аналогичный формат и записывается в десятичной системе счисления значениями от 0 до 255 (например, 255.255.255.0). Она выполняет роль фильтра:
- Биты, равные 1 в маске, указывают на часть IP-адреса, принадлежащую сети
- Биты, равные 0 — на часть, которая идентифицирует устройство в этой сети
Например, если для IP-адреса 192.168.1.10 используется маска 255.255.255.0, это означает, что первые 3 числа относятся к номеру сети, а последнее – к номеру хоста. Если же маска будет 255.255.0.0, то первые два числа указывают на номер сети, а вторые два — на конкретное устройство.
Все устройства работают только в двоичной системе счисления, то есть с нулями и единицами. Каждое значение 1 или 0 называется битом. Соответственно, и IP-адрес, и маска подсети также шифруются в двоичной системе счисления из 32 единиц и нулей (поэтому и говорится, что они состоят из 32 битов). Каждое десятичное число — это восьмизначное двоичное число (октет). Всего 4 октета.
Максимальное десятичное число, которое можно записать в виде восьмизначного двоичного числа — это 255 (11111111). Поэтому в маске подсети это число является крайним в каждом блоке.
Как шифруются десятичные числа в восьмизначные двоичные
Каждая позиция в 8-битном числе имеет свой вес, выраженный степенью двойки.
Бит № | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Вес | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Далее берем вес слева направо. Если он меньше нашего числа или равен ему, ставим 1 и вычитаем его из числа. Остаток оставляем и следующий вес вычитаем из него. Если вес оказывается больше числа – ставим 0 и переходим к следующему весу. В результате сумма всех весов, которые мы вычтем, будет равна нашему исходному числу.
Для примера продолжим использовать IP-адрес 192.168.1.10 и запишем его в двоичной системе. Для этого берем первое число 192 и вес 128:
- 192 > 128 — записываем 1 (192 - 128 = 64)
- 64 ≥ 64 — записываем 1 (68 - 68 = 0)
Остальные 6 позиций заполняем нулями, потому что сумма весов уже составляет 192: 11000000. Теперь берем следующее число 168 и проделываем такую же операцию.
- 168 > 128 — записываем 1 (168 - 128 = 40)
- 40 < 64 — записываем 0
- 40 > 32 — записываем 1 (40 - 32 = 8)
- 8 < 16 — записываем 0
- 8 = 8 — записываем 1 (8 - 8 = 0)
- Остальные позиции заполняем нулями по тому же принципу
С третьим числом (1) все просто — везде указываем нули, кроме последнего значения: 00000001. Нам остается записать только последнее (10).
- 10 < 128 — указываем 0
- 10 < 64 — указываем 0
- 10 < 32 — указываем 0
- 10 < 16 — указываем 0
- 10 > 8 — указываем 1 (10 - 8 = 2)
- 2 < 4 — указываем 0
- 2 = 2 — указываем 1 (2 - 2 = 0)
- Последним числом указываем 0
Таким образом у нас получилось восьмизначное двоичное число нашего IP-адреса: 11000000.10101000.00000001.00001010.
Как работает маска подсети
Маска подсети не возникает «сама по себе» — ее определяет администратор сети или провайдер при настройке оборудования. Она назначается в зависимости от потребностей сети и ее архитектуры. Основное правило: выбирайте маску так, чтобы было достаточно адресов для текущих нужд + 20-30% запаса.
Принцип работы маски подсети можно сравнить с «трафаретом», накладываемым на IP-адрес, чтобы отделить идентификатор сети от идентификатора конкретного устройства. Этот процесс называется логическим умножением (AND) и выполняется побитово между IP-адресом и маской подсети.
Для примера возьмем наш IP-адрес 192.168.1.10 и маску подсети 255.255.255.0. Сначала нужно их перевести в двоичное представление способом, который мы описали выше. Получаем два значения:
- IP-адрес: 11000000.10101000.00000001.00001010
- Маска: 11111111.11111111.11111111.00000000
Чтобы применить маску к IP-адресу, воспользуемся оператором AND, который работает следующим образом:
- 1 и 1 = 1
- 1 и 0 = 0
- 0 и 1 = 0
- 0 и 0 = 0
IP-адрес | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | |||
Маска | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||
Сеть | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Переведем номер сети обратно в десятичный вид и получим 192.168.1.0. Номер же хоста в нашем примере 0.0.0.10.
Зачем нужна маска подсети в современных сетях?
В современных компьютерных сетях значение маски подсети выходит за рамки простого разделения IP-адреса на части — это инструмент, который позволяет эффективно управлять сетевыми ресурсами, обеспечивать безопасность, оптимизировать маршрутизацию и гибко проектировать архитектуру сетей.
1. Разделение IP-адреса на сетевую и хостовую части. Этот пример мы с вами подробно разобрали выше. Основное предназначение маски подсети — указать, какая часть IP-адреса относится к сети, а какая — к конкретному устройству (хосту) внутри этой сети. Это необходимо для корректной работы протоколов TCP/IP.
2. Определение принадлежности к одной сети. Маска подсети помогает устройству определить, находится ли целевой адрес в той же локальной сети. Если да — пакеты отправляются напрямую. Если нет — они направляются на шлюз по умолчанию (роутер), который уже занимается дальнейшей маршрутизацией. Это существенно влияет на скорость передачи данных и эффективность использования ресурсов сети.
3. Управление подсетями и сегментация сети. Маска подсети позволяет делить крупные сети на более мелкие подсети. Это особенно важно в больших организациях, где требуется изолировать разные отделы, типы трафика или уровни доступа.
4. Обеспечение безопасности и контроля доступа. Маска подсети также используется в правилах файрволов, списков доступа (ACL), политик маршрутизации и других сетевых механизмах. Например, правило может запрещать доступ всем устройствам из подсети 192.168.1.0, или наоборот — разрешать только определенную группу пользователей. Без маски невозможно было бы точно описать диапазон IP-адресов, к которым применяется то или иное ограничение или разрешение.
5. Помощь в автоматизации и масштабировании сетей. Современные системы управления сетями (DHCP-серверы, контроллеры беспроводных сетей и т.д.) используют маску подсети для автоматического назначения IP-адресов, проверки конфигураций и планирования расширения сетей. Кроме того, при использовании VLAN (виртуальных локальных сетей), каждая сеть имеет свою собственную подсеть, и именно маска подсети определяет их границы.
Заключение
Маска подсети — это ключевой элемент сетевой настройки, который определяет границы локальной сети и помогает устройствам корректно взаимодействовать друг с другом. Мы разобрали, как она работает и как ее узнать на разных операционных системах. Эти знания пригодятся при настройке домашней сети, устранении неполадок с подключением или развертывании корпоративной инфраструктуры.
Если вам нужно самостоятельно настроить виртуальные серверы и связать их виртуальной сетью, регистрируйтесь в oblako.kz. В Панели управления вы сможете развернуть виртуальный сервер, виртуальный ЦОД, делегировать домены на наши DNS-серверы или приобрести SSL-сертификаты. С нами ваша инфраструктура будет работать стабильно и безопасно!