onlinetools.dev

CIDR / калькулятор подсетей

Сеть, широковещательный адрес, маска и диапазон хостов для любого блока IPv4 или IPv6

Работает локально
loading…
Об этом инструменте

Введите CIDR-блок, например 10.20.0.0/16 или 2001:db8::/48, и сразу получите о нём всё: адрес сети, широковещательный адрес (или последний адрес для IPv6), маску сети и обратную маску (wildcard), первый и последний доступный хост, количество адресов и то, в какой диапазон специального назначения он попадает, — частное пространство RFC 1918, carrier-grade NAT, link-local, документационные адреса, multicast и прочие. Подойдёт и просто адрес, и запись с маской сети (192.168.1.0 255.255.255.0), и форма с обратной маской в стиле Cisco (0.0.0.255).

Или вставьте диапазон — 10.0.0.1 - 10.0.0.200 — и получите наименьший список CIDR-блоков, который покрывает его в точности; именно такую запись на деле принимают правила файрвола, группы безопасности и списки разрешённых адресов. Режим разбиения делит блок на равные подсети (/16 на /24, /32 на /48) для планирования VPC и VLAN, а проверка принадлежности показывает, попадает ли заданный адрес внутрь блока.

Вся арифметика выполняется на BigInt, поэтому количество адресов IPv6 точное, а не округлённое до числа с плавающей точкой: в /64 ровно 18446744073709551616 адресов, а не «1.8e19». Ничего не запрашивается онлайн — инструмент знает диапазоны специального назначения IANA, но не то, кому принадлежит адрес, — и схема вашей внутренней сети никогда не покидает браузер.

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

Почему в /24 доступно 254 хоста, а не 256?
В IPv4 первый адрес подсети обозначает саму сеть, а последний — широковещательный, поэтому ни один из них нельзя назначить хосту. Исключения — /31, который RFC 3021 позволяет целиком использовать на соединениях точка-точка (два хоста), и /32, то есть единственный адрес. В IPv6 широковещания нет, поэтому каждый адрес IPv6-блока считается доступным.
Что значит «Заданы биты хоста»?
Вы ввели адрес, который не является началом своего блока, например 10.1.2.3/8. Большинство инструментов молча округляют его вниз до 10.0.0.0/8; некоторые — например, модуль ipaddress в Python в строгом режиме или отдельные облачные консоли — его отвергают. Калькулятор показывает настоящий адрес сети, чтобы вы могли вставить каноническую форму.
Почему адреса с ведущими нулями отклоняются?
Потому что системы расходятся в том, что они означают. Классический парсер inet_aton читает 010 как восьмеричное число (8), а большинство остальных — как десятичное (10); такое расхождение уже приводило к реальным обходам контроля доступа. Вместо того чтобы гадать, калькулятор просит записать число без ведущего нуля.
Как диапазон превращается в CIDR-блоки?
Жадным алгоритмом от начала: на каждом шаге берётся наибольший блок, который выровнен по текущему адресу и не выходит за конец диапазона, после чего алгоритм движется дальше. Так получается минимальное число блоков. Выровненный диапазон вроде 192.168.0.0 – 192.168.255.255 сворачивается в один /16; неудобный вроде .1 – .10 требует пяти.
Зачем нужна обратная маска (wildcard)?
Это инвертированная маска сети — 0.0.0.255 для /24, — и именно так задают диапазон списки доступа Cisco IOS и команды network в OSPF. В калькулятор можно вставить любую из двух форм: он распознаёт обратную маску и переводит её в длину префикса.
Похожие инструменты