Интернет протокол шестой версии IPv6
5.6.1 Принципиальное решение проблемы дефицита сетевых адресов и многих других проблем, связанных с продвижением IP-пакетов по сетям, обусловило переход на новую версию IP-протокола IPv6 (REC 2460) и систему адресации (REC 2373). В соответствии с (REC 2373) увеличилась разрядность IP-адреса с 4-х байт (IPv4) до 16-и байт (IPv6), показанная на рисунке 5.6.
Рисунок 5.6 Представление форматов адресов в протоколах маршрутизирования пакетов IPv4 и IPv6
Главной целью изменения системы адресации было не механическое увеличение адресного пространства, а повышение эффективности работы стека TCP/IP в целом. Переход на новую систему снизил затраты на маршрутизацию за счет увеличения числа уровней иерархии адресов, групповой адресации и др.
Тип адреса определяется значением нескольких старших битов адреса, которые названы «префиксом формата». Наличие префикса позволяет магистральным маршрутизаторам агрегировать потоки данных, т.е. направлять данные с адресами, имеющими одинаковые префиксы формата по одному и тому же маршруту.
5.6.1.1 Распределением адресного пространства на самом верхнем уровне занимается Администрация адресного пространства Интернет IANA (Internet Assigned Numbers Authority). Эта организация выделяет блоки адресов с префиксом размером в 8 бит региональным интернет-регистраторам RIR (Regional Internet Registry). В настоящее время существуют пять RIR:
1 Для северной Америки ARIN (American Registry for Internet Numbers).
2 Для Европы, Ближнего Востока, Центральной Азии RIPE NCC (Regional Internet Registry European Network Coordination Centre).
3 Для Азии и Тихоокеанского региона APNIC (Asia-Pacific Network Information Centre).
4 Для Латинской Америки и Карибского региона LACCIA (Latin American and Caribbean Internet Addresses).
5 Для Африки AfriNIC (African Nerwork Information Centre).
Интернет-регистратор RIR, в свою очередь, выделяет блоки адресов локальным интернет-регистраторам LIR (Local Internet Registry), которые являются крупными провайдерами Internet. Локальные интернет-регистраторы LIR, выделяют блоки адресов более мелким провайдерам или корпоративным клиентам.
На рисунке 5.5 представлена структура глобального агрегируемого уникального адреса в пакете IPv6
8 бит | 16 бит | 24 бита | 16 бит | 64 бита |
Идентификатор региональных регистраторов (IANA) | Идентификатор локальных регистраторов (RIR) | Идентификатор крупных провайдеров (LIR) | Идентификатор конечных подсетей (SLA) | Идентификатор конечного узла в подсети (Interface ID) |
Рисунок 5.5 Структура глобального агрегируемого уникального адреса в пакете IPv6
В протоколе IPv6 адрес состоит из 128 бит, и маски подсети не используются, так как пришлось бы иметь очень длинные маски тоже по 128 бит. Вместо этого используется только префикс. Смысл префикса в IPv6 такой же, как и для IPv4 отделение части адреса, хранящей информацию о сети от части адреса, хранящей информацию об узле сети. Правая часть, хранящая информацию об узле сети, имеет специальное название «Идентификатор интерфейса» (Interface ID).
Адрес IP-пакета, в соответствии с протоколом маршрутизирования данных IPv6, содержит следующие поля:
1 Префикс формата (IANA) имеет размер 8 бит и описывает уровни идентификации региональных сетей;
2 Агрегирование верхнего уровня (RIR) имеет размер 16 бит и идентифицирует сети самых крупных поставщиков услуг;
3 Агрегирование уровня (LIR) имеет размер 24 бита и идентифицирует сети средних и мелких поставщиков услуг;
4 Агрегирование местного уровня (SLA) имеет размер 16 бит и идентифицирует подсети отдельных групп абонентов, например, подсети корпоративной сети;
5 Идентификатор интерфейса (Interface ID) имеет размер 64 бита и идентифицирует отдельные узлы абонентов (по размеру совпадает с локальным адресом). Его размер 64 бита позволяет поместить, например, при маршрутизации адрес сети Х25 (до 60 бит) или сети Ethernet (MAC-адрес 48 бит).
Для записи IP-адреса (сеть IPv4) в заголовке IP-пакета отводится всего 4-е байта (32 бита), которые представляют 4 числа, а в сети IPv6 16 байт (128 бит), которые представляют 16 чисел
5.6.1.2 Адреса могут записываться в различной форме, например, по протоколу IPv4 в форме десятичных чисел с точкой 128.10.2.30; шестнадцатеричной записи 80.010.02.1D; двоичной записи 10000000 00001010 00000010 00011110. По протоколу IPv6 каждый байт адреса записывается в виде двух шестнадцатеричных цифр и отделяется от соседнего байта двоеточием, например, 3005:0DB4:0000:0000:0000:000A:0000:6789.
Для удобства приняты сокращенные формы записи адресов IPv6. К ним относятся следующие:
1 Записи, в которых нулевые группы 0000 обозначаются 0 или не записывать незначащие нули в группе 000A представить в виде A. Приведенный выше адрес IPv6 можно записать как, 3005: DB4:0:0:0: A:0:6789.
2 Поскольку число групп адреса IPv6 известно (их 8) можно не записывать нулевые группы, а указать на них двумя двоеточиями, следующими друг за другом, например, 3005: DB4:: A:0:6789.
3 В адресе допускается только один пропуск нулевых групп, иначе при восстановлении адреса возникнет неоднозначность.
4 Допускается пропуск в записи адреса любой цепочки нулевых групп не обязательно самой длинной.
5 В записи адреса шестой версии, как и в записи четвертой используется префикс, который обозначает непрерывную цепочку определенного количества битов, идентифицирующих те разряды адреса, которые совпадают с этой цепочкой. Например, записи 2001: DB8:0: CD9F::123/58 соответствует адрес, у которого префикс запишется в виде 2001: DB8:0: CD80:: .
5.6.1.3 Адреса IPv6, как и адреса IPv4 подразделяются на типы:
1 Индивидуальные адреса это глобальные индивидуальные адреса (Global Unicast). Пакет с таким адресом доставляется конкретному узлу сети (интерфейсу).
2 Частные индивидуальные адреса (Private-use Unecast), предназначенные для использования в корпоративных сетях.
3 Внутриканальные индивидуальные адреса (Link-local Unicast) используются при автоматической настройке узлов в простой одноранговой сети.
4 Многоадресные Multicast-адреса, которые используются для групповой рассылки пакетов.
5 Нововведением в системе адресации являются Anycast-адреса, которые адресуют группу интерфейсов, но пакет, посланный по такому адресу попадает только на один (обычно ближайший) интерфейс.
6 В качестве адреса обратной связи используется адрес в виде ::1.
Поскольку переход от IPv4 к IPv6 будет проходить поэтапно и довольно длительное время, необходимо организовать взаимодействие сетей, работающих по этим протоколам. К организации такого взаимодействия существует несколько подходов.
Первый подход это трансляция (преобразование) протоколов реализуемая шлюзом, который устанавливается на границе сетей, использующих разные протоколы. Основная задача такого шлюза преобразование IPv4-пакета в IPv6-пакет и обратно в соответствии с правилами, проиллюстрированными рисунком 5.6.
0000…….000000 | IPv4 |
12 байт 4 байта
Преобразование IPv6 в IPv4 (при передаче пакета IPv6 через сеть IPv4 старшие байты отбрасываются)
0000…….000000 | 111….111 | IPv4 |
10 байт 2 байта 4 байта
Преобразование IPv4 в IPv6 (при передаче пакета IPv4 через сеть IPv6 11-й и 12-й байты заполняются единицами)
Рисунок 5.6 Правила трансляции адресов IPv6 в IPv4 и обратно
Второй подход это мультиплексирование стеков протоколов, состоящее в том, что на взаимодействующих узлах сети устанавливаются оба протокола. Это относится также и к маршрутизаторам, через которые проходит маршрут передачи пакетов между этими узлами. При взаимодействии узла IPv6 с узлом IPv4 используется протокол IPv4.
Третий подход называется инкапсуляцией или туннелированием. Этот подход применяется в случае, когда две сети с одной версией протокола необходимо объединить с использованием транзитной сети с другой версией протокола. На рисунке 5.7 приведен пример, когда в качестве транзитной сети выступает сеть с протоколом IPv6. В пограничном маршрутизаторе сети IPv6 пакеты IPv4 инкапсулируются в IPv6-пакеты и переносятся через «туннель», проложенный через IPv6-сеть.
Рисунок 5.7 Пример использования туннелирования для связи сетей