Перейти к содержанию
ipaddress.si

IPv6 простыми словами

128 бит в шестнадцатеричной записи — места хватит каждому устройству, которое когда-либо подключится. Вот как их читать.

Найти адрес IPv6

Зачем нужен IPv6

IPv6 (RFC 8200) разработали в 1990-х, когда стало ясно, что 4,3 миллиарда адресов IPv4 закончатся. Адрес IPv6 состоит из 128 бит: это 2¹²⁸, или около 3,4 × 10³⁸ адресов. Важен не размер числа, а то, что каждая сеть может получить столько адресов, сколько ей нужно, а каждое устройство снова может иметь глобально доступный адрес — без NAT.

IPv6 — не обновление IPv4: оба протокола работают параллельно (двойной стек). Сегодня большая и растущая доля трафика к крупным сервисам идёт по IPv6, особенно в мобильных сетях.

Запись: шестнадцатеричные группы

Адрес IPv6 записывается как восемь групп по четыре шестнадцатеричные цифры, разделённых двоеточиями:

2001:0db8:0000:0000:0000:ff00:0042:8329

Каждая группа — 16 бит. Шестнадцатеричные цифры — это 0–9 и a–f; регистр не важен, но принято писать строчными.

Правила сокращения

Длинные последовательности нулей встречаются часто, поэтому есть два правила сокращения (RFC 4291), а RFC 5952 определяет единственно правильный способ их применения:

  1. Убрать ведущие нули в каждой группе: 0db8 → db8, 0042 → 42, 0000 → 0.
  2. Заменить одну последовательность нулевых групп на :: — самую длинную, при равенстве первую, и только если она охватывает не меньше двух групп. :: может встречаться лишь один раз, иначе адрес станет неоднозначным.

Так 2001:0db8:0000:0000:0000:ff00:0042:8329 превращается в 2001:db8::ff00:42:8329. Адрес обратной петли 0:0:0:0:0:0:0:1 — это ::1, а неопределённый адрес — просто ::.

Попробуйте любой адрес в обозревателе ниже — он показывает полную и каноническую форму рядом.

Полная форма

2001
маршрутизация
0db8
маршрутизация
0000
маршрутизация
0000
подсеть
0000
интерфейс
ff00
интерфейс
0042
интерфейс
8329
интерфейс

Сокращённая форма

2001:db8::ff00:42:8329

Область: Специального назначения · Documentation (2001:db8::/32)

Префиксы и /64

IPv6 использует нотацию CIDR так же, как IPv4. Типичный глобальный одноадресный адрес делится на:

  • Префикс маршрутизации (обычно /48 или /56) — его выдаёт площадке провайдер.
  • Идентификатор подсети — биты до /64, которыми нумеруются сети площадки. В /48 помещается 65 536 подсетей.
  • Идентификатор интерфейса (последние 64 бита) — обозначает устройство в его сети.

Одна локальная сеть почти всегда — это /64. На этом построена автоконфигурация без сохранения состояния (SLAAC): устройства сами выбирают идентификаторы интерфейсов, сегодня — случайные ради приватности (RFC 8981), и регулярно их меняют.

Типы адресов, которые вы встретите

  • Глобальные одноадресные 2000::/3 — публичные маршрутизируемые адреса.
  • Link-local fe80::/10 — есть у каждого интерфейса IPv6; действуют только в пределах канала, используются для обнаружения соседей и протоколов маршрутизации.
  • Unique local fc00::/7 (на практике fd00::/8) — аналог частных адресов в IPv6 (RFC 4193).
  • Многоадресные ff00::/8 — в IPv6 нет широковещания, его заменяют группы многоадресной рассылки.
  • Обратная петля ::1 и неопределённый ::.
  • IPv4-mapped ::ffff:0:0/96 — так программы IPv6 представляют собеседников IPv4, например ::ffff:192.0.2.1.
  • Для документации 2001:db8::/32 и 3fff::/20 — для примеров вроде тех, что на этой странице.

Блоки IPv6 специального назначения

Полный список зарезервированных блоков IPv6, созданный по реестру IANA, которым пользуется классификатор этого сайта:

БлокНазначениеИсточникДоступен глобально
::/128Unspecified AddressRFC 4291Нет
::1/128Loopback AddressRFC 4291Нет
::ffff:0:0/96IPv4-mapped AddressRFC 4291Нет
64:ff9b::/96IPv4-IPv6 Translation (NAT64)RFC 6052Да
64:ff9b:1::/48Local-use IPv4/IPv6 TranslationRFC 8215Нет
100::/64Discard-Only Address BlockRFC 6666Нет
2001::/32TEREDORFC 4380Нет
2001:2::/48BenchmarkingRFC 5180Нет
2001:db8::/32DocumentationRFC 3849Нет
2001:10::/28Deprecated (ORCHID)RFC 4843Нет
2001:20::/28ORCHIDv2RFC 7343Да
2002::/166to4RFC 3056Нет
3fff::/20DocumentationRFC 9637Нет
5f00::/16Segment Routing (SRv6) SIDsRFC 9602Нет
fc00::/7Unique-LocalRFC 4193Нет
fe80::/10Link-Local UnicastRFC 4291Нет
ff00::/8MulticastRFC 4291Нет

Двойной стек и как этот сайт определяет оба адреса

Браузер подключается в каждый момент только через одно семейство адресов. Если работают оба, он обычно предпочитает IPv6 (Happy Eyeballs, RFC 8305). Чтобы показать вам оба адреса, ipaddress.si просит браузер обратиться к двум дополнительным именам хостов: у одного есть только запись IPv4 (A), у другого — только IPv6 (AAAA). То, что видит каждое из них, и есть ваш адрес в этом семействе. Если запрос по IPv6 не удался, у вашего подключения нет работающего IPv6.

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

Как узнать, есть ли у меня IPv6?
Откройте главную страницу этого сайта. Если показан адрес IPv6 — как основной или в строке IPv6, — ваше подключение поддерживает IPv6.
IPv6 быстрее IPv4?
Не сам по себе, но может быть быстрее: трафик IPv6 часто обходит операторский NAT, а значит, на пути на один промежуточный узел и одно узкое место меньше.
Нужен ли межсетевой экран при IPv6?
Да. Без NAT у устройств глобально маршрутизируемые адреса; межсетевой экран с отслеживанием состояния, блокирующий незапрошенный входящий трафик, даёт ту защиту, которую NAT обеспечивал неявно.
Почему мой адрес IPv6 постоянно меняется?
Расширения приватности (RFC 8981) создают временные идентификаторы интерфейса и регулярно их меняют, чтобы устройство нельзя было отследить в разных сетях. Префикс /64 обычно остаётся прежним.