Что делает калькулятор подсетей IPv4
Калькулятор подсетей IPv4 берёт два значения, которые вы вводите — IP-адрес и маску подсети — и мгновенно рассчитывает все ключевые параметры сети, к которой относится этот адрес. Вместо того чтобы вручную выполнять побитовые операции AND и OR, вы сразу получаете адрес сети, broadcast-адрес, диапазон пригодных для использования хостов, общее количество доступных адресов, класс сети и обратную (wildcard) маску. Инструмент работает со стандартной 32-битной адресацией IPv4, которая используется по всему миру.
Какие данные нужно ввести
- IP-адрес — любой адрес IPv4 в десятично-точечной записи, например
192.168.1.10. - Маска подсети — маска в десятично-точечном виде, например
255.255.255.0. Она определяет, сколько бит отвечает за номер сети, а сколько — за адрес узла (хоста).
Как выполняются расчёты
Калькулятор обрабатывает каждый октет по отдельности:
$$\begin{gathered} \text{Network} = \text{IP} \mathbin{\&} \text{Mask} \\[1.5em] \text{where (per octet)}\quad \left\{ \begin{aligned} \text{Network} &= \text{IP} \mathbin{\&} \text{Mask} \\ \text{Broadcast} &= \text{IP} \mathbin{|} (\text{Mask} \oplus 255) \\ \text{Wildcard} &= 255 - \text{Mask} \end{aligned} \right. \end{gathered}$$- Адрес сети = IP AND маска (побитово). Каждый октет IP маскируется:
ipOctet & maskOctet. - Broadcast-адрес = IP OR инвертированная маска:
ipOctet | (maskOctet ^ 255). - Общее число доступных хостов = \(2^{32 - \text{CIDR}} - 2\), где CIDR — количество единичных бит в маске. Двойка вычитается, потому что адрес сети и broadcast-адрес исключаются.
- Первый хост = адрес сети + 1; последний хост = broadcast-адрес − 1.
- Класс сети определяется по первому октету: 1–126 = A, 128–191 = B, 192–223 = C, 224–239 = D (Multicast), 240–255 = E (Reserved).
- Обратная (wildcard) маска = инверсия маски подсети.
Разбор на примере
Введите IP 192.168.1.10 и маску 255.255.255.0:
- Адрес сети: 192.168.1.10 AND 255.255.255.0 = 192.168.1.0
- Broadcast-адрес: 192.168.1.10 OR 0.0.0.255 = 192.168.1.255
- CIDR = 24 бита, значит всего хостов = \(2^{(32-24)} - 2 = 254\)
- Первый хост: 192.168.1.1; последний хост: 192.168.1.254
- Класс: C; обратная маска: 0.0.0.255
Частые вопросы
Почему из числа хостов вычитается 2? Первый адрес подсети зарезервирован как идентификатор сети, а последний — как broadcast-адрес, поэтому ни один из них нельзя присвоить устройству.
Для чего нужна обратная (wildcard) маска? Это побитовая инверсия маски подсети (например, 255.255.255.0 → 0.0.0.255). Она часто применяется в списках контроля доступа (ACL) на маршрутизаторах и в настройке OSPF.
Поддерживается ли запись CIDR напрямую? Маску вы вводите в десятично-точечной форме, но внутри инструмент сам вычисляет префикс CIDR, подсчитывая единичные биты в маске, чтобы рассчитать количество хостов.