Структура IPv6 адреса
IPv6
IPv6 адрес состоит из 128 бит и выглядит так:
AABB:4422:1242:0001:2431:8081:B4B4:1234
Адрес разбивается на 8 секций разделенных двоеточием и каждая секция состоит из 16 бит.
Первые 64 бита отводятся (первая половина) отводится для маршрутизации, вторая половина выполняет роль уникального идентификатора устройства в сети.
Первые 64 бита также делятся на две части. Первые 48 бит (первые 3 группы битов) называются префиксом маршрутизации который будет одинаковый для всех устройств в сети. Четвертая группа битов является идентификатором подсети.
Префикс маршрутизации может занимать больше бит за счет уменьшения идентификатора подсети при необходимости.
Остальные 64 бита (вторая половина) используется как уникальный идентификатор устройства в сети.
Предположим мы имеет такой адрес:
AABB:4422:1242:0001:2431:8081:B4B4:1234
- Префикс маршрутизации:
AABB:4422:1242
- Идентификатор подсети:
0001
- Идентификатор устройства:
2431:8081:B4B4:1234
Сокращенная форма
IPv6 позволяет коротко записывать некоторые адреса. К примеру мы имеем адрес вида:
AABB:4422:1242:0001:0000:0000:B4B4:1234
Идентификатор устройства имеет только нули в первых двух группах бит. Запись их позволяет сократить подобным образом:
AABB:4422:1242:0001:0:0:B4B4:1234
Кроме того идентификатор подсети также можно сократить убрав нули перед числом обозначающем подсеть:
AABB:4422:1242:1:0:0:B4B4:1234
Более того, Если есть группы битов состоящие полностью из нулей их можно заменить на два двоеточия:
AABB:4422:1242:1::B4B4:1234
К примеру адрес AABB:0000:0000:0000:0000:0000:0000:1234
будет выглядеть так:
AABB::1234
Два двоеточия в адресе можно применить только единожды в адресе. Если в адресе существует две секции нулей то сократить нули возможно только в одной
001:AABB:0000:0000:0001:0000:0000:0123
2001:AABB::1::123 // неправильная запись