Типы IPv6-адресов
В настоящее время у операторов интернета регионального уровня уже закончились диапазоны адресов IPv4. Применение механизма NAT стало временным решением
проблемы, однако требовалось отыскать решение в долгосрочной перспективе.
Архитектура адресации IP версии 6 — это разработанное для IP решение,
призванное обеспечить работу сетей следующего поколения на многие годы вперед.
Переход на полную архитектуру IPv6 — шаг прогрессивный, но требующий серьезного
пересмотра многих протоколов и приложений, а также стандартов. Архитектура IPv6
нацелена на устранение многих ограничений, имеющихся в текущем наборе
протоколов TCP/IP, в первую очередь это касается комплексных мер безопасности и
оптимизации работы протоколов для уменьшения объема передаваемой служебной
информации. Поскольку IPv6 продолжает развиваться и становится неотъемлемой
частью корпоративной сети, ИТ-специалистам крайне необходимы глубокие знания
этой архитектуры.

Являясь
набором спецификаций, определенных Internet Engineering Task Force (IETF),
Internet Protocol версии 6 (IPv6) является стандартом протокола сетевого уровня
следующего поколения и преемником Internet Protocol версии 4 (IPv4). Наиболее
очевидное различие между IPv6 и IPv4 заключается в удлинении IP-адресов с 32 до
128 битов, благодаря чему IPv6 поддерживает больше уровней иерархии системы
адресации, гораздо большее количество адресных узлов и упрощенную
автоматическую конфигурацию адресов.
Существующий
диапазон адресов IPv4 был реализован в то время, когда такие сети, как ARPANET
и National Science Foundation Network (NSFNET), предоставляли основную
магистральную сеть, и IPv4 считался более чем достаточным для поддержки хостов,
подключаемым к таким формирующим сетям. Непредвиденный темп развития Интернета
привел к быстрому расходованию адресного пространства IPv4, состоящего из 4,3
млрд адресов (многие из которых зарезервированы), для чего были приняты
контрмеры в виде NAT и CIDR, которые оптимизировали использование адресов и
дали время, чтобы подготовить более постоянное решение. Кроме того, ранние
методы распределения сетевых адресов IPv4 не позволяли добиться смежности, что
затрудняло объединение адресов в кластеры и эффективные группы и не давало
возможности снизить нагрузку глобальных таблиц IP-маршрутизации, используемых в
протоколах маршрутизации на основе автономной системы, таких как BGP.
Ожидается,
что постепенно IPv6 вытеснит IPv4-адресацию, обеспечив емкость более 340
ундециллионов уникальных адресов, что считается более чем необходимым для
продолжения развития IP-сети. Наряду с этим, распределение адресов
Администрацией адресного пространства Интернет (IANA) гарантирует, что методы
IPv6 позволяют добиться смежности, что будет эффективно управления таблицами
IP-маршрутизации в будущем.

Заголовок
IPv6 пришлось расширить, чтобы уместить увеличенный в размере IP-адрес, а поля,
которые во многих случаях пересылки пакетов считались избыточными, были
удалены, чтобы упростить общий формат заголовка IPv6 и оптимизировать объем
служебной информации, передаваемой во время передачи каждого пакета по сети. По
сравнению с заголовком пакета IPv4 заголовок IPv6 больше не содержит полей
длины заголовка Интернета (IHL), идентификатора, флагов, смещения фрагмента,
контрольной суммы заголовка, опций или полей для заполнения блока данных
незначащей информацией, а вместо этого содержит поле метки потока.
lТермин
«поток» можно понимать как непрерывный поток одноадресных (unicast),
многоадресных (multicast) или произвольных (anycast) пакетов, относящихся к
конкретному приложению или процессу, которые исходят из определенного источника
и передаются в заданный пункт назначения или несколько пунктов назначения. Сеть
с коммутацией пакетов работает таким образом, что такие потоки трафика могут
передаваться по нескольким путям и поступать в планируемый пункт назначения не
по порядку. Затем системные ресурсы должны повторно упорядочить поток пакетов,
прежде чем он сможет быть обработан верхними уровнями.
Метка
потока предназначена для идентификации таких потоков трафика вместе с полями
адреса источника и назначения, чтобы обеспечить общий маршрут по сетям всем
пакетам, связанным с данным потоком трафика. При этом пакеты сохраняют порядок
следования по IP-сети, что оптимизирует эффективность процесса.
С
объединением передачи разных услуг по IP-сетям поле метки потока становится еще
более важным, например, для передачи голоса, которая основана на технологии
коммутации каналов и требует производительности, близкой к реальному времени.
Также
новый протокол поддерживает различные опции без изменения существующего формата
пакета путем включения полей заголовка расширения. Идентификатор заголовка
расширения содержится в поле Next Header, которое заменяет поле Рrotocol в
IPv4, обеспечивая дополнительную гибкость в IPv6.

Заголовок
расширения, являющийся одним из основных изменений в IPv6, оптимизирует
структуру заголовка IPv6. Существует несколько заголовков расширений,
шестнадцатеричные значения которых указываются в поле Next Header, так же, как
идентификаторы заголовков ICMP, TCP, UDP указываются в поле protocol заголовка
IPv4. Каждый заголовок расширения также содержит поле Next Header для ссылки на
следующий заголовок после обработки заголовка расширения. К одному пакету могут
относиться несколько заголовков расширений в порядке их следования. Список
заголовков расширений и последовательность их обработки:
-IPv6
-Hop-by-Hop
Options (Дополнительные функции: ретрансляция)
-Destination
Options (Дополнительные функции: узел-получатель)
-Routing
(Маршрутизация)
-Fragment
(Фрагментация)
-Authentication
(Аутентификация)
-Encapsulating
Security Payload (Повторное обрамление поля полезной нагрузки с целью её
защиты)
-Destination
Options (Дополнительные функции: узел-получатель)
-Upper-layer
(Верхний слой заголовка) (как в туннелировании IPv6)
Каждый
заголовок расширения должен встречаться не более одного раза, за исключением
заголовка Destination Options, который должен встречаться не более двух раз
(один раз перед заголовком Routing и один раз перед заголовком Upper-layer).
Другим ключевым аспектом заголовков расширений является введение протоколов
IPSec в форме AH и ESP для повышения общей безопасности IPv6.

Адрес
IPv6 является 128-битным идентификатором, который связан с интерфейсом или
набором интерфейсов (в случае присвоения адреса anycast, описанного ниже). В
связи с размером, адрес представляется в шестнадцатеричном формате и
записывается в виде xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx, где xxxx относится
к четырем шестнадцатеричным цифрам, которые переводятся в 16-битный двоичный
код. 128-битный адрес IPv6 состоит из набора шестнадцатеричных значений,
сгруппированных 8*16 бит.
Сам
адрес состоит из префикса IPv6, который используется для определения сети IPv6,
за которым следует идентификатор интерфейса. Базовая схема адресации
представляет собой двухуровневую архитектуру префикса и идентификатора
интерфейса, однако типы адресов IPv6 могут содержать много подуровней, которые
позволяют формировать обширную архитектуру иерархической адресации в сети IPv6,
обеспечивая эффективную группировку и управление пользователями и доменами.

Общее
письменное обозначение такого длинного 128-битного адреса IPv6 может быть
непрактичным во многих случаях. Еще одно непрактичное свойство адреса — наличие
длинных строк нулевых битов, главным образом из-за непостижимой масштабности
адресной шкалы. Все это стало причиной появления методов упрощения и повышения
практичности написания адресов IPv6, содержащих нулевые биты. Одним из таких
методов является удаление любых нулей в старших разрядах, которые встречаются в
каждом наборе 16-битных шестнадцатеричных значений.
Для
дальнейшего сжатия нулей доступен также специальный синтаксис, который
представлен в виде двойного двоеточия "::". Это значение указывает
одну или несколько 16-битных групп нулей. Однако, чтобы можно было определить
размер строки, "::" может появляться только один раз в адресе.
Двойное двоеточие "::" может использоваться для сжатия нулей в
старших разрядах адреса, как показано в данном примере.

Адресное
пространство IPv6 должно быть полностью определено, во-первых, по причине его
размера, из-за чего оно вряд ли будет использовано в ближайшем будущем,
во-вторых, разработка схем адресации все еще находится в начальной стадии, при
этом много разногласий наблюдаются в отношении типов адресов, которые должны
применяться.
В
настоящее время часть адресов используется в диапазоне 2000::/3, который
представляет глобальный диапазон адресов одноадресной рассылки, то есть любой
адрес, на который можно направить трафик в публичной IP-сети. Руководящий орган
IANA (в настоящее время входит в состав ICANN) отвечает за распределение блоков
этого диапазона адресов между различными региональными интернет-регистраторами
(RIR), которые распределяют адреса в одном из пяти регионов мира. Были выделены
также диапазоны адресов 2400::/12 (APNIC), 2600::/12 (ARIN), 2800::/12
(LACNIC), 2A00::/12 (RIPE NCC) и 2C00::/12 (AfriNIC), что позволяет указывать
регион и осуществлять управление, используя один префикс адреса. Также в
пределах диапазона префиксов 2000::/3 находятся зарезервированные поля адреса,
включая 2001:0DB8::/32, которые используются для примеров в документации.

Многоадресная
передача определяется в IPv6 диапазоном FF00::/8, при этом большая часть
области адресации резервируется для конкретных адресных диапазонов (таких как
link local) и в поддержку протоколов маршрутизации, так же, как используются
адреса многоадресной передачи в IPv4. Одно из основных изменений в IPv6
заключается в том, что в нем нет широковещательных адресов, их функция
заменяется адресами многоадресной рассылки, что уменьшает объем нежелательной
обработки конечными станциями на MAC-уровне в сетях IPv6, так как хосты могут
фильтровать группы MAC-адресов многоадресной рассылки.

lВ
одноадресной передаче используются в основном префиксы глобальных адресов
одноадресной передачи (global link local) и префиксы локальных адресов канала
одноадресной передачи (unicast link local), однако существуют и другие формы.
Все глобальные адреса одноадресной передачи имеют 64-битное поле ID интерфейса,
за исключением адресов, для которых первые три бита в адресе 000. Для таких
адресов нет ограничений по размеру или структуре поля идентификатора
интерфейса. Формат глобальных адресов одноадресной передачи иерархичен: префикс
глобальной маршрутизации и идентификатор подсети, за которым следует
идентификатор интерфейса. Структура префикса глобальной маршрутизации позволяет
региональным интернет-регистраторам (RIR) и поставщиками интернет-услуг (ISP),
между которыми регистраторы распределяют эти префиксы, иерархически
систематизировать его. Администратор сайта должен иерархически структурировать
поле подсети, чтобы обеспечить до 65 535 отдельных подсетей.
lЛокальный
адрес канала одноадресной передачи FE80::/10: первые 10 битов четко определены
как 1111111010. Диапазон адресов 64-битного интерфейса более чем достаточен для
выделения адресов хостам, и поэтому оставшиеся 54 бита в локальном адресе
канала поддерживаются равными 0. В этом примере показаны форматы адресов,
которые обычно могут быть связаны с каждым из общих типов адресов одноадресной
рассылки.
Следует
также отметить, что третья схема адресации при одноадресной рассылке,
называемая адресацией локального сайта (FC00::/7), была первоначально
предложена в RFC3513 и может появляться в некоторых реализациях IPv6, однако
диапазон адресации устарел, как и в RFC4291, так что следует избегать его
использования в будущих реализациях.
Адрес
многоадресной передачи является идентификатором набора интерфейсов (обычно
принадлежащих разным узлам). Пакет, отправленный на адрес многоадресной
передачи, доставляется на все интерфейсы, идентифицированные этим адресом.
Диапазон адресов многоадресной передачи определяется по префиксу адреса
FF00::/8 и четко отличается от первых 8 битов, которые всегда установлены как
11111111. Архитектура адреса многоадресной передачи состоит из полей flags
(флаги), scope (область действия) и group ID (идентификатор группы).
Поле
флагов размером в 4 бита в настоящее время используется для поддержки
идентификации того, является ли адрес многоадресной передачи общеизвестным
(назначенным и признанным органом глобальной нумерации в Интернете) или
переходным, то есть временно назначенным. Значение второго бита используется в
поле флагов, чтобы определить, основан ли адрес многоадресной передачи на
префиксе сети. Оставшиеся два бита более высокого порядка зарезервированы и
остаются равными 0.
Область
действия определяет ряд потенциальных диапазонов, к которым применяется
многоадресная передача. Обычно это область действия локального узла FF01:: или
область действия локального канала FF02::, то есть адреса приемных узлов в
области действия на уровне канала, например, сегмент Ethernet, для которого
шлюз определяет границу. Обычные локальные адреса канала многоадресной передачи
(multicast link local) включают FF02::1, который используется для пересылки
всем узлам, и FF02::2, который обеспечивает многоадресную передачу всем адресам
маршрутизаторов.

В
методе Anycast используется один идентификатор для набора интерфейсов (обычно
принадлежащих разным узлам). Пакет, отправленный на произвольный адрес,
доставляется на один из интерфейсов, указанных в этом адресе («ближайший» в
соответствии с измерением расстояния, выполненным протоколом маршрутизации).
Архитектура anycast обычно включает инициатора anycast и одного или нескольких
ответчиков anycast.
Инициатор
anycast обычно может быть хостом, который запрашивает услугу, например, поиск
DNS, или запрашивает получение определенных данных, например, информацию
веб-страницы HTTP. Адреса anycast никоим образом не отличаются от адресов
одноадресной рассылки, за исключением того, что к данному устройству
применяются несколько экземпляров одного и того же адреса.
Метод
anycast по сравнению с традиционными методами адресации приносит много
потенциальных преимуществ в работе и производительности корпоративной сети.
Резервирование услуг — это одно из применений метода anycast, которое позволяет
использовать такуюуслугу, как HTTP, на нескольких серверах, для которых один и
тот же адрес связан с одним или несколькими серверами, которые работают в
качестве ответчиков anycast. В случае сбоя услуги на одном сервере клиентам
обычно приходится искать адрес другого сервера, а затем
перезапускать/восстанавливать связь.
Используя
адресацию anycast, инициатор anycast автоматически устанавливает связь с другим
сервером, использующим тот же адрес, обеспечивая эффективное решение для
резервирования.
С
точки зрения производительности, может применяться многосерверный доступ, когда
инициатор anycast устанавливает соединение с одним и тем же узлом одноадресной
передачи, каждое соединение автоматически устанавливается на несколько
серверов, которые указывают один и тот же адрес anycast, например, в случае,
когда клиент просматривает веб-страницу компании.

После
установления физического соединения с сетью IPv6 хосты должны установить
уникальный адрес IPv6 и связанные с ним параметры, такие как префикс сети.
Маршрутизаторы отправляют сообщения Router Advertisement периодически, а также
в ответ на запрос Router Solicitation (RS) в целях обнаружения соседнего
маршрутизатора и изучения префикса адреса и параметров конфигурации для
автоматической настройки адреса.
IPv6
поддерживает автоматическую настройку адреса без сохранения состояния
(stateless address auto-configuration; SLAAC), которая позволяет хостам
получать префиксы IPv6 и автоматически генерировать идентификаторы интерфейса,
без необходимости использования внешней службы, такой как DHCP. Для
автоматической настройки адреса IPv6 используется сообщение Router Discovery,
которое реализуется в двух форматах.
Сообщения
Router Advertisement (RA), периодически отправляемые каждым маршрутизатором в
многоадресной рассылке, содержат параметры конфигурации сети и служат для
объявления о существовании маршрутизатора хостам уровня 2 и другим
маршрутизаторам. Сообщение RA идентифицируется значением 134 в поле type.
Сообщения запроса Router Solicitation (RS) генерируются после подключения хоста
к сети.
Маршрутизаторы
будут периодически отправлять сообщения RA, однако, если хост захочет запросить
сообщение RA, он отправит сообщение RS. Маршрутизаторы в сети сгенерируют
сообщение RA для всех узлов, чтобы сообщить хосту маршрутизатора по умолчанию о
сегменте и связанных параметрах конфигурации. Сообщение RS, сгенерированное
хостом, можно отличить по полю type, которое содержит значение 133.

Для
организации связи по сети IPv6 каждому интерфейсу должен быть присвоен
действительный адрес IPv6. Идентификатор интерфейса адреса IPv6 может быть
определен либо посредством ручной настройки сетевым администратором, либо
сгенерирован с помощью системного программного обеспечения, либо сгенерирован с
использованием формата 64-битного расширенного уникального идентификатора IEEE
(EUI-64).
Из-за
практичности наиболее распространенным методом адресации IPv6 является
генерация идентификатора интерфейса в формате EUI-64. Для этого используется
MAC-адрес интерфейса, который представляет собой 48-битный адрес, но требуемый
идентификатор интерфейса должен состоять из 64-битного значения. Первые 24 бита
(выраженные c) MAC-адреса представляют идентификатор поставщика (компании), а
оставшиеся 24 бита (выраженные e) представляют уникальный идентификатор
расширения, назначенный производителем.
Старший
седьмой бит в адресе представляет универсальный/локальный бит для включения
идентификаторов интерфейса с универсальной областью действия. Если это значение
равно 0, MAC-адрес уникален глобально. Во время преобразования процесс EUI-64
вставляет два октета значений «0xFF» и «0xFE» на общую сумму 16 битов между
идентификатором поставщика и идентификатором расширения MAC-адреса, и
универсальный/локальный бит 0 заменяется единицей (1), чтобы указать, что ID
интерфейса теперь представляет глобально уникальное значение адреса. 64-битный
идентификатор интерфейса создается и привязывается к префиксу интерфейса для
генерации адреса интерфейса IPv6.

Перед
тем, как адрес одноадресной передачи IPv6 будет присвоен интерфейсу,
выполняется функция обнаружения дублирующихся адресов (DAD), которая проверяет,
используется ли этот адрес другим узлом. DAD требуется, если IP-адреса
настраиваются автоматически. Адрес IPv6 одноадресной передачи, назначенный
интерфейсу, но не проверенный функцией DAD, называется предварительным адресом.
Интерфейс не может использовать предварительный адрес для одноадресной
передачи, но может присоединиться к двум группам многоадресной рассылки: группе
многоадресной рассылки на все узлы (ALL-node) и группе многоадресной рассылки
на запрашиваемые узлы (Solicited-Node).
Адрес
многоадресной передачи запрошенным узлам создается путем взятия последних 24
битов одноадресного или произвольного адреса и добавления к адресу префикса
FF02:0:0:0:0:1:FF00::/104. В случае использования адреса 2000::1 будет
сгенерирован адрес многоадресной передачи Solicited-Node FF02::1:FF00:1.
IPv6
DAD похож на протокол gratuitous ARP, используемый в IPv4 для обнаружения
дублированных адресов хоста IPv4 при назначении адреса или подключении хоста к
сети. Узел отправляет сообщение neighbor solicitation (NS), содержащий запрос
предварительного адреса, который будет использоваться в качестве адреса
назначения для группы многоадресной передачи запрашиваемому узлу.
Если
узел получает ответное сообщение neighbor advertisement (NA), предварительный
адрес считается занятым другим узлом, и узел не будет использовать его для
связи, после чего потребуется назначение адреса вручную администратором.
Этот тест был открыт Вторник, 18 Апрель 2023, 15:36
Тестирование будет окончено в Вторник, 18 Апрель 2034, 15:36
Метод оценивания: Высшая оценка