Протокол IP v6 существует уже довольно давно. С тех пор как перспектива полного исчерпания адресов в IP v4 стала очевидной, поддержка шестой версии стала появляться в различных операционных системах и сетевом оборудовании. Однако на практике до сих пор внедрение данного протокола можно встретить довольно редко.

В этой статье мы начнем рассматривать работу с протоколом IP v6 и поговорим о преимуществах данной версии, а также рассмотрим типы адресации.

Основные новшества шестой версии

Хотя основной причиной появления IPv6 стало истощение адресного пространства, но четвертая версия не безупречна и к ней есть претензии: медленная обработка пакетов, потребность в новых возможностях, поддержка мультимедиа и, конечно, необходимость обеспечения безопасности. Шеста версия решает эти проблемы, предлагая следующие основные изменения:

Большое адресное пространство: IPv6-адрес имеет длину 128 бит. По сравнению с 32-битным адресом IPv4, это значительное увеличение адресного пространства (340*1036).

Улучшенный формат заголовка: IPv6 использует новый формат заголовка, в котором параметры отделены от базового заголовка и при необходимости вставляются между ним и данными верхнего уровня. Это упрощает и ускоряет процесс маршрутизации, поскольку большинство параметров не требуют проверки маршрутизаторами.

Новые параметры: IPv6 предоставляет новые параметры для расширения функциональности.

Допуск расширения: IPv6 допускает расширение протокола при необходимости поддержки новых технологий или приложений.

Поддержка распределения ресурсов: В IPv6 поле Type of Service было удалено, но добавлены два новых поля: Traffic Class и Flow Label, позволяющие источнику запрашивать особую обработку пакета. Этот механизм может использоваться для поддержки такого трафика, как аудио и видео в реальном времени.

Поддержка большей безопасности: Возможности шифрования и аутентификации в IPv6 обеспечивают конфиденциальность и целостность пакета.

Сейчас мы рассмотрим только типы адресации, а другим нововведениям будут посвящены следующие статьи.

Формат адреса IPv6

В адресах шестой версии существует 8 групп, каждая из которых представляет 2 байта (16 бит). Каждая шестнадцатеричная цифра состоит из 4 бит (1 полубайт).

Разделитель — двоеточие (:).

Для текстового представления адресов IP v6 могут использоваться три формы:

Наиболее предпочтительной формой является запись адресов в виде n:n:n:n:n:n:n:n. Каждый n представляет шестнадцатеричное значение одного из восьми 16-разрядных элементов адреса. Например: 3FFE:FFFF:7654:FEDA:1245:BA98:3210:4562.

Также может использоваться сжатая форма. Так как, часто адреса содержат множество нулей, можно упростить их написание, используя сжатую форму, в которой одна последовательность из 0 блоков представлена символом двойного двоеточия (::). Этот символ может отображаться только один раз в адресе. Например, многоадресный адрес FFED:0:0:0:0:BA98:3210:4562 в сжатой форме FFED::BA98:3210:4562. Одноадресный адрес 3FFE:FFFF:0:0:8:800:20C4:0 в сжатой форме 3FFE:FFFF::8:800:20C4:0. Адрес обратной петли 0:0:0:0:0:0:0:1 в сжатой форме — это ::1. Неуказанный адрес 0:0:0:0:0:0:0:0 в сжатой форме ::.

Смешанная форма объединяет адреса IPv4 и IPv6. В этом случае формат адреса n:n:n:n:n:n:dd:dd, где каждый n представляет шестнадцатеричные значения шести старших высокопорядковых 16-битных адресных элементов IPv6, и каждый d представляет десятичное значение IPv4-адреса d.d.d.d.

Например, адрес 192.168.1.1 будет в шестой версии IP иметь следующий вид: 0000:0000:0000:0000:0000:ffff:c0a8:0101.

Методы адресации

В представлении IPv6 существует три метода адресации:

  • Unicast

  • Multicast

  • Anycast

Адрес одноадресной рассылки (unicast) идентифицирует один сетевой интерфейс. Пакет, отправленный на адрес одноадресной рассылки, доставляется на интерфейс, идентифицированный этим адресом.

Unicast-адрес состоит из двух логических частей: 64-битного префикса сети и 64-битного идентификатора интерфейса. Префикс сети используется для маршрутизации, и он может увеличиваться, отнимая биты адреса у поля subnet id. Префикс интерфейса в свою очередь используется для идентификации сетевого интерфейса узла.

Адрес многоадресной рассылки (multicast) используется несколькими хостами, называемыми группами, и получает адрес назначения многоадресной рассылки. Эти хосты не обязательно должны находиться вместе географически. Если какой-либо пакет отправляется на этот multicast-адрес, он будет распределён по всем интерфейсам, соответствующим этому адресу. При этом, каждый узел настроен одинаково. Проще говоря, один пакет данных отправляется нескольким получателям одновременно.

Для мультикастовых адресов зарезервированы первые два байта со значениями: от 0xFF00 до 0xFF0F. Структура IPv6-мультикастового адреса включает несколько полей. Поле флаги (4 бита) указывает на специфические характеристики мультикастовой группы. Например, постоянный (известный) или временный адрес. Поле область действия (4 бита) определяет охват мультикастовой группы, например, локальный для звена, локальный для сайта или глобальный.

Наконец идентификатор группы (112 бит) уникально идентифицирует мультикастовую группу в пределах её области действия.

Существуют два типа IPv6-мультикастовых адресов:

Назначенные (Assigned multicast). Специальные адреса, назначение которых предопределено. Например, FF02::1 — группа всех устройств в локальной сети, FF02::2 — группа всех маршрутизаторов и т.д. Запрошенные (Solicited multicast). Остальные адреса, которые устройства могут использовать для прикладных задач.

Anycast-адрес назначается группе интерфейсов (anycast). Любой пакет, отправленный на anycast-адрес, будет доставлен только одному интерфейсу-участнику (обычно ближайшему узлу).

При этом, уже знакомая нам по IP v4. широковещательная рассылка (broadcast) не определена в IPv6.

Конкретный тип адреса определяется значением нескольких старших (левых) битов, которые называются префиксом типа (Type Prefix) или префиксом формата (FP — Format Prefix).

При этом в IPv6 все нули и все единицы могут быть назначены любому хосту, ограничений, как в IPv4, нет.

Unicast адрес, предоставляемый провайдером

Данный тип адресов используется для глобального взаимодействия между узлами. В нем первые 3 бита определяют тип адреса.

Следующие 5 бит это идентификатор реестра, то есть идентификатор региона, к которому принадлежит адрес. Из 32 (т.е. 2^5) используются только 4 идентификатора реестра.

 

Затем следует идентификатор провайдера, который определяется в зависимости от количества провайдеров, работающих в регионе. Это поле не обязательно должно быть фиксированным. Например, если идентификатор провайдера = 10 бит, то идентификатор абонента будет равен 56 - 10 = 46 бит.

После фиксации идентификатора провайдера оставшаяся часть может использоваться интернет-провайдером как обычный абонентский IP-адрес. Эта часть может быть изменена в соответствии с потребностями организации, использующей услугу.

Адрес Link-local

Адрес Link-local используется для адресации одного канала. Он также может использоваться для связи с узлами на том же канале. Адрес Link-local всегда начинается с 1111111010 (т.е. FE80). Маршрутизатор не будет пересылать пакеты с адресом Link-local.

Адрес Site Local

Адрес Site Local эквивалентен частному IP-адресу в IPv4. Часть адресного пространства зарезервирована, и маршрутизация может осуществляться только внутри организации. Первые 10 бит имеют значение 1111111011, поэтому локальные адреса сайтов всегда начинаются с FEC0. Следующие 32 бита — это идентификаторы подсетей, которые можно использовать для создания подсети внутри организации. Адрес узла используется для уникальной идентификации соединения; поэтому здесь мы используем 48-битный MAC-адрес.

Заключение

Протокол IPv6 был создан IETF около 40 лет назад (да, уже тогда было понятно, что IP адреса скоро закончатся) в декабре 1998 года на замену IPv4 в связи с быстрым ростом числа пользователей Интернета во всём мире. IPv4 использует 32-битный формат адресов, охватывающий более 4 миллиардов адресов. IPv6 с его 128-битным адресным пространством предоставляет 340 ундециллионов (1036) уникальных адресов, удовлетворяя потребность в большем количестве интернет-адресов.

Этот протокол содержит в себе ряд нововведений, одним из которых являются новые типы адресов, которые мы рассмотрели в этой статье. Однако, преимущества IP v6 этим не ограничиваются и в следующих статьях мы поговорим о других новшествах данного протокола.


В заключение приглашаю на бесплатные уроки курса "DevOps Advanced", которые проведут мои коллеги в Отус:

А если вам интересно попробовать свои силы и узнать, достаточно ли ваших текущих знаний для поступления на продвинутый курс по DevOps, пройдите вступительный тест.

Комментарии (1)


  1. anarchomeritocrat
    03.09.2025 08:35

    просто оставлю это здесь )