Калькулятор подсети

Калькулятор подсети для IPv4: сетевой и широковещательный адрес, маска подсети, число хостов, разбиение /16 на подсети. Всё считается в браузере.

Всё работает в вашем браузере — данные не отправляются на сервер.

Зачем нужен калькулятор подсети

Калькулятор подсети нужен каждый раз, когда сеть описывают в CIDR: 192.168.1.0/24 для домашнего роутера, 10.0.0.0/8 для стойки в дата-центре, 172.16.0.0/12 между филиалами. За минуту он переводит адрес в двоичный вид, находит маску подсети, сетевой и широковещательный адреса, считает диапазон доступных хостов и объясняет, почему из 256 адресов устройствам достаётся только 254. Отдельный режим отвечает на вопрос «сколько хостов умеет маска /26», третий показывает, как из /16 получить четыре подсети /18 с таблицей диапазонов. Расчёт идёт прямо в браузере: ни адрес, ни префикс никуда не отправляются.

Что умеет калькулятор подсети

  • Ввод сети в виде CIDR (192.168.1.0/24) либо отдельно адрес и отдельно префикс
  • Маска подсети, wildcard-маска, сетевой и широковещательный адреса, первый и последний доступный адрес
  • Общее число адресов и число хостов с объяснением, почему вычитаются два
  • Класс адреса, принадлежность к частному или публичному диапазону, двоичная запись адреса и маски
  • Режим «сколько хостов под маску» с быстрым списком типовых префиксов
  • Разбиение сети: из /16 четыре подсети /18 с таблицей диапазонов и масок

Как посчитать подсеть

  1. Введите сеть в формате CIDR либо переключите формат на «отдельно адрес и префикс»
  2. Посмотрите маску, сетевой и широковещательный адреса и диапазон доступных хостов
  3. Для расчёта по маске введите префикс — например /24 или /26
  4. Для разбиения укажите базовую сеть и либо количество подсетей, либо новый префикс

Как считается подсеть

Адрес переводится в 32-битное число, а маска получается сдвигом единиц: для /24 это 24 единицы и восемь нулей, то есть 255.255.255.0. Сетевой адрес получается побитовым сложением адреса и маски, широковещательный — сложением с инверсией маски. Число адресов равно двойке в степени количества бит хоста, поэтому в /24 их 2 в 8 степени, то есть 256, а хостов на два меньше: 254. Первый и последний адреса получаются прибавлением единицы к сетевому и вычитанием единицы из широковещательного. Никаких обращений к серверу при этом не происходит — расчёт занимает доли миллисекунды.

Примеры подсетей: что считает калькулятор

СетьМаска и диапазон хостовХостов
192.168.1.0/24255.255.255.0, 192.168.1.1 — 192.168.1.254254
10.0.0.0/8255.0.0.0, 10.0.0.1 — 10.255.255.25416 777 214
172.16.0.0/12255.240.0.0, 172.16.0.1 — 172.31.255.2541 048 574
192.168.0.0/22255.255.252.0, 192.168.0.1 — 192.168.3.2541 022
192.168.1.0/26255.255.255.192, 192.168.1.1 — 192.168.1.6262
192.168.1.0/28255.255.255.240, 192.168.1.1 — 192.168.1.1414
10.0.0.0/9255.128.0.0, 10.0.0.1 — 10.127.255.2548 388 606
10.0.0.0/18255.255.192.0, 10.0.0.1 — 10.0.63.25416 382
172.16.0.0/20255.255.240.0, 172.16.0.1 — 172.16.15.2544 094
8.8.8.0/30255.255.255.252, 8.8.8.1 — 8.8.8.22

Число хостов на два меньше общего числа адресов: сетевой и широковещательный адреса устройствам не выдаются.

Где калькулятор подсети реально нужен

Первое место, где расчёт подсети становится частью каждодневной работы, — настройка домашней сети. Роутер выдаёт адреса из блока 192.168.1.0/24, и когда в доме появляются десятки устройств, начинается разговор о том, как поделить этот блок: вынести камеры и гостевые телефоны в отдельные подсети, чтобы не заваливать основной трафик. Второе место — работа с облачными ресурсами, где при заказе виртуальной машины показывают готовый CIDR и просят задать маску для дополнительных сетевых интерфейсов.

В инженерной работе расчёт нужен при разборе инцидентов. Когда в журнале маршрутизатора видно, что пакет ушёл на широковещательный адрес 192.168.1.255, первым делом проверяют, что сеть с адресом 192.168.1.0/24 настроена верно и что этот адрес действительно принадлежит ей, а не чужой подсети, затесавшейся в маршрут. Тот же приём помогает проверить план адресации в документации: если в таблице проекта написано 10.10.10.0/24, а рядом стоит 10.10.0.0/16, значит в плане ошибка со сдвигом на границу сети. Адрес, спрятанный в логе или в ссылке, помогает вытащить разбор URL по частям, а смысл кода в строке ответа подсказывает справочник HTTP-кодов.

  • Настройка домашнего роутера и разделение устройств по подсетям
  • Заказ облачного сервера с дополнительными сетевыми интерфейсами
  • Проверка адресации в плане сети и в настройках маршрутизатора
  • Расчёт диапазона для пула адресов в офисной сети
  • Подбор маски под нужное количество устройств в VLAN
  • Разбор адресов в журналах сетевого оборудования

Типичные ошибки в расчётах

Первая ошибка — считать, что в /24 четыреста адресов не из-за маски, а из-за самого префикса. Двадцать четыре бита сети и восемь бит хоста дают ровно 256 адресов, и никаких 254 плюс два отдельно: это просто арифметика двойки в степени. Вторая ошибка — путать сетевой адрес с широковещательным: в /24 это 192.168.1.0 и 192.168.1.255, а диапазон хостов лежит между ними. Третья, самая дорогая, — задавать маску, которой нет в блоке.

Ошибки в масках стоят отдельно, потому что адрес вроде бы правильный, а сеть работает не так. В сетях 192.168.1.0/24 и 192.168.1.128/25 первые 128 адресов совпадают, поэтому маршрутизатор может принять трафик, который предназначался другой подсети. Ещё одна тонкость: адрес из 127.0.0.0/8 работает только на самом устройстве, а 169.254.0.0/16 появляется сам, когда интерфейс не смог получить адрес по DHCP, — считать такие адреса рабочими нельзя.

  • Путать число бит сети с числом адресов: /24 — это 256 адресов
  • Назначать устройству сетевой или широковещательный адрес
  • Брать маску, которой нет внутри блока, например 255.255.255.192 в /24
  • Считать 127.0.0.0/8 рабочей сетью — адрес работает только локально
  • Путать адрес из 169.254.0.0/16 с нормальной выдачей по DHCP
  • Рассчитывать хосты в /31 и /32 по правилу «минус два»

Разбор примера: 192.168.1.0/24 по шагам

Возьмём сеть 192.168.1.0/24 и разложим её на части. Префикс 24 означает, что первые 24 бита адреса отводятся под сеть, а оставшиеся 8 бит — под хостов. Восемь свободных бит дают 2 в 8 степени, то есть 256 адресов в блоке. Два из них служебные, поэтому хостов 254, и их рабочий диапазон — 192.168.1.1 — 192.168.1.254.

Тот же адрес можно увидеть в двоичном виде: 192 — это 11000000, 168 — 10101000, а третий и четвёртый октеты задаются префиксом и хостовой частью. Маска 255.255.255.0 в двоичном виде выглядит как 24 единицы и восемь нулей. Сложение адреса с маской убирает хостовую часть и оставляет 192.168.1.0, а её инверсия 0.0.0.255 добавляется к сетевому адресу и даёт широковещательный 192.168.1.255. Двоичная форма полезна, когда приходится считать в уме или проверять чужой конфиг, а пересчитать октет помогает конвертер двоичной записи.

Что происходит на каждом шаге расчёта

ШагДействиеРезультат
1Разбор вводаСтрока 192.168.1.0/24 делится на адрес и префикс
2Построение маски24 единицы и 8 нулей дают 255.255.255.0
3Сетевой адресАдрес сложен с маской: 192.168.1.0
4Инверсия маскиИз 255.255.255.0 получается 0.0.0.255
5ШироковещательныйСетевой адрес сложен с инверсией: 192.168.1.255
6Число адресов8 бит хоста дают 2 в 8 степени равно 256
7Число хостовИз 256 вычитаются сетевой и широковещательный: 254
8ДиапазонПервый хост 192.168.1.1, последний 192.168.1.254

Все действия выполняются побитовыми операциями над 32-битным числом, поэтому расчёт одинаково быстрый для /8 и для /32.

Подсети, маски и соседние инструменты

С subnet calculator редко работают в одиночку: почти всегда рядом нужен разбор самого адреса или проверка двоичной записи. Для быстрой ориентации подойдёт проверка IP-адреса и его класса, где адрес вводится и сразу определяется, частный он или публичный. Если в сомнениях, как устроены числа в разных системах, стоит заглянуть в конвертер систем счисления и в разбор двоичного кода простыми словами — расчёт подсети держится именно на этих двух понятиях.

Частый спутник подсетей — правила доступа, где сети указываются списком. Собрать такой список помогает генератор .htaccess: он умеет закрыть доступ по адресам и диапазонам, а заодно показывает, как выглядит готовый конфиг Apache. Правила для фильтрации трафика пишутся регулярными выражениями, и проверить их заранее можно в тестере регулярных выражений.

  • Проверка IP-адреса и определение класса: /tools/ip-info/
  • Перевод чисел в двоичную, шестнадцатеричную и другие системы
  • Разбор двоичного кода без технической подготовки
  • Списки адресов и диапазонов для правил доступа
  • Проверка регулярных выражений из ACL и конфигов
  • Расчёт масок для маршрутизаторов и межсетевых экранов

Частые вопросы про подсети

Почему из 256 адресов в /24 доступно только 254

Два адреса в сети зарезервированы под служебные нужды. Сетевой адрес 192.168.1.0 в примере /24 идентифицирует саму подсеть: на него не назначают интерфейс, но по нему маршрутизаторы понимают, к какой сети относится пакет. Широковещательный адрес 192.168.1.255 нужен для отправки пакета сразу всем устройствам сети. Оба адреса считаются частью сети, но устройствами не занимаются, поэтому из 256 остаётся 254 адреса под хосты — это и есть рабочий диапазон 192.168.1.1 — 192.168.1.254.

Чем запись /24 отличается от маски 255.255.255.0

Это два способа записать одно и то же. Запись CIDR говорит, сколько старших бит адреса отводятся под сеть: 24 бита из 32. Точечная маска 255.255.255.0 записывает те же 24 бита единицами и восемь нулей. В масках подсети нужны, когда настраивают интерфейсы, ACL и правила firewall, в CIDR — когда описывают маршруты и блоки адресов. Калькулятор показывает обе записи сразу, чтобы не пересчитывать в уме при переносе правила из одного формата в другой.

Можно ли назначить себе публичный адрес

Нельзя. Адреса из блоков 10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16 считаются частными: они не маршрутизируются в интернете и выдаются локально, поэтому назначить такой адрес на интерфейс можно без договора с кем-либо. Публичный адрес принадлежит владельцу блока или провайдеру, и пока он не выделен вам, настройка такого адреса приведёт к конфликту с чужым устройством в той же сети. Калькулятор подсвечивает публичные диапазоны, чтобы такую ошибку заметили до настройки, а не после.

Что такое класс адреса A, B, C

Классы — наследие первых версий IP, когда сети делили на блоки строго по старшему октету: A начинался с 1, B со 128, C со 192, D был отдан под multicast, E — в резерв. Сейчас деление на классы не работает: сети задаются префиксом, и один блок может содержать и тысячу, и шестнадцать миллионов адресов. Класс остаётся полезной меткой для быстрой ориентации — по старшему октету видно, частный это адрес или публичный, — поэтому калькулятор показывает его рядом с префиксом.

Как разделить сеть /16 на четыре подсети /18

Чтобы из /16 получить четыре подсети, нужно занять два бита: 16 + 2 = 18. Каждый из этих битов удваивает число частей, поэтому 2 в 2 степени даёт ровно четыре подсети. В каждой из них остаётся 14 бит под хостов, то есть 16 384 адреса, из которых 16 382 достаются устройствам. Сети идут подряд: 10.0.0.0/18, 10.0.64.0/18, 10.0.128.0/18 и 10.0.192.0/18 с маской 255.255.192.0. В режиме разбиения калькулятор строит эту таблицу целиком, с диапазонами хостов и широковещательными адресами.

Что считать при префиксах /31 и /32

Здесь правило «минус два» не применяют. В /32 остаётся единственный адрес — его удобно использовать для loopback-интерфейса или point-to-point на одном сервере, и считать там нечего. В /31 остаются два адреса: RFC 3021 отдаёт их под соединение точка-точку между маршрутизаторами, где оба адреса рабочие. Калькулятор в обоих случаях показывает нулевое число хостов и отдельной подсказкой напоминает, что из этих адресов никто не вычитается.

Какие диапазоны считаются частными

К частным относят три блока из RFC 1918: 10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16. Кроме них в интерфейсе отдельно помечены loopback 127.0.0.0/8, link-local 169.254.0.0/16 для автоматической настройки адреса, общий блок 100.64.0.0/10, который провайдеры выдают клиентам мобильных сетей, и документационные блоки 192.0.2.0/24, 198.51.100.0/24 и 203.0.113.0/24, придуманные для примеров в документации.

Почему в /8 столько адресов

Потому что под хосты отданы 24 бита, а 2 в 24 степени равно 16 777 216. Блок 10.0.0.0/8 — это весь адресное пространство с первым октетом 10: от 10.0.0.0 до 10.255.255.255. На практике такие огромные блоки выдают крупным организациям, а внутри них сеть режут на подсети меньшего размера, чтобы не терять адреса и разграничить трафик. Калькулятор показывает и общее число адресов, и число хостов после вычета двух служебных — для /8 это 16 777 214.

Полезные статьи

Похожие инструменты

Генератор .htaccess

Соберите готовый файл .htaccess: редиректы, HTTPS, запрет доступа, 404, сжатие и защита папок

Генератор htpasswd

Строка .htpasswd с хешем SHA-1 и готовый блок .htaccess для Apache 2.4 с Require valid-user

Генератор robots.txt

Соберите robots.txt для своего сайта: правила обхода, запрет служебных папок, Clean-param и Host для Яндекса, строка Sitemap

Генератор sitemap.xml

Соберите валидный sitemap.xml из списка URL или CSV: lastmod, changefreq, priority, проверка лимитов и скачивание файла

Генератор favicon

Сделайте иконку сайта из монограммы или своей картинки: favicon.ico, apple-touch-icon, android-chrome-192 и 512, site.webmanifest и готовый HTML-код

Генератор JSON Schema

Постройте черновую JSON Schema по примеру JSON: типы полей, required, вложенные объекты и массивы

Генератор регулярных выражений

Соберите регулярное выражение по шаблону задачи или разберите своё выражение на конструкции

Генератор Open Graph

Соберите теги og:title, og:description, og:image и Twitter Card для превью ссылки в соцсетях