Иная причина разбивать на подсети

В IPv4 разбиение на подсети в основном о сбережении: адреса скудны, так что вы вырезаете блок на наименьшие куски, которые всё ещё вмещаются в каждую сеть (логика в статье основы разбиения на подсети). IPv6 убирает это давление целиком. Одна подсеть /64 содержит 2^64 адреса, больше, чем весь интернет IPv4 в квадрате, так что вы никогда не разбиваете сеть IPv6 на подсети, чтобы сэкономить место. Вы разбиваете её, чтобы дать структуру: один префикс на , на площадку, на клиента. Математика — та же арифметика префиксов, что и в IPv4 (инструмент вычисляет её целыми числами произвольной точности), но образ мышления противоположный.

Почему подсеть — это /64

Единственное самое важное правило в адресации IPv6 в том, что нормальная подсеть — это /64, оставляя 64 бита для идентификатора интерфейса. Это не предложение; большие части протокола предполагают его. Бесстатусная автоконфигурация адресов (рассмотренная в статье конфигурация адресов) строит адрес хоста, присоединяя 64-битный идентификатор интерфейса к анонсированному префиксу, а модифицированный вывод , который инструмент может выполнить, производит ровно 64 бита. Используйте более длинный префикс вроде /80 или /112 на канале, и автоконфигурация просто перестаёт работать. Архитектура адресации (RFC 4291) построена вокруг этой границы, так что практический совет прямолинеен: сделайте каждую подсеть конечного пользователя /64 и не пытайтесь экономить внутри неё.

Иерархия выделения

Если каждая подсеть — это /64, площадки и провайдеры работают в более крупных блоках выше этого:

/48   a site            65,536 subnets (/64s)
/56   a small site         256 subnets (/64s)
/64   one subnet         the link itself

обычно делегирует /48 или /56 клиенту, который затем назначает /64 из него отдельным каналам. RFC 6177 отступает от изначального руководства «/48 для всех» в сторону того, чтобы давать каждой площадке достаточно места для комфортного разбиения на подсети, что на практике означает /48 или /56. Суть в том, что у вас есть место с запасом: даже /56 даёт дому или малому офису 256 отдельных сетей, далеко больше, чем он когда-либо использует.

Разбивайте на подсети по границам полубайтов

Поскольку IPv6 записывается в шестнадцатеричном виде, а каждая шестнадцатеричная цифра — это 4 бита (полубайт, nibble), префиксы, попадающие на 4-битную границу, гораздо легче читать и управлять ими. /48, /52, /56, /60 и /64 все оканчиваются чисто между шестнадцатеричными цифрами, так что подсетевая часть выстраивается по целым символам в адресе. Разбиение /48 на /52 даёт вам 16 блоков, различаемых одной шестнадцатеричной цифрой; переход к /56 даёт 256 блоков на двух цифрах. Оставаясь на границах полубайтов, вы держите свой план адресации читаемым, что в IPv6 значит больше, чем когда-либо могло бы выжимание последнего бита.

Подсчёт подсетей и адресов

Арифметика проста. Число подсетей /64 внутри более короткого префикса — это 2 в степени разности длин префиксов: /48 вмещает 2^(64-48) = 2^16 = 65 536 подсетей. Число адресов внутри любого /64 — это 2^(128-64) = 2^64. Инструмент сообщает и счёт адресов для префикса, и используемый диапазон, и числа становятся большими быстро, что и есть суть: дефицит больше не ограничение, вокруг которого вы проектируете.

Вывод

Разбиение на подсети IPv6 переворачивает привычку IPv4 с ног на голову. Вы не делите скудный ресурс; вы налагаете структуру на фактически неограниченный. Дайте каждой подсети /64, чтобы автоконфигурация и обнаружение соседей работали как задумано, запросите /48 или /56, чтобы у вас было место для организации, и разбивайте на подсети по границам полубайтов, чтобы ваш план оставался читаемым. Когда вы вставляете префикс в инструмент и видите счёт адресов, относитесь к тому изобилию как к разрешению проектировать ради ясности, а не ради сбережения.