Границы диапазона и количество адресов подсети IPv6 по CIDR
В отличие от IPv4, где адресное пространство было ограничивающим фактором и требовало точного подбора маски подсети, IPv6 использует фиксированное 128-битное адресное пространство с огромным запасом. Калькулятор принимает адрес в CIDR-нотации (адрес/префикс, например 2001:db8::/32) и вычисляет границы диапазона: первый адрес (адрес сети) и последний адрес подсети, а также точное количество адресов в ней.
Префикс указывает, сколько первых бит из 128 относятся к идентификатору сети, а оставшиеся биты доступны для нумерации хостов внутри подсети. Адрес сети получается обнулением всех бит хоста (операция AND с маской), последний адрес — установкой всех бит хоста в единицу (операция OR с инвертированной маской). Количество адресов в подсети всегда равно 2 в степени (128 − префикс).
Даже минимально рекомендуемая подсеть /64 содержит около 18 квинтиллионов адресов — этого достаточно, чтобы выдать публичный IPv6-адрес каждому устройству в сети без необходимости трансляции адресов (NAT), которая в IPv4 была вынужденной мерой из-за нехватки адресного пространства. Это упрощает end-to-end связность и снимает часть проблем, характерных для NAT (сложности с P2P-соединениями, VoIP, разработкой протоколов).
Expand/Compress работает с одним адресом — разворачивает и сжимает его форму. Этот калькулятор работает с подсетью целиком: по адресу и префиксу вычисляет границы диапазона и количество адресов.
Для дома типично /56 или /64. /64 — стандарт для одной физической подсети (нужен для SLAAC), /56 позволяет разбить блок на 256 подсетей /64.
128-битное пространство огромно намеренно: даже /64 содержит 2^64 адресов. Это устраняет нужду в NAT — каждое устройство может иметь свой публичный адрес.