Протокол IPv6
description
Transcript of Протокол IPv6
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
1
Протокол IPv6
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
2
1.Введение
В конце 1992 года сообщество Интернет для решения проблем адресного пространства и ряда смежных задач приняло новый протокол IPv6 с IP-адресами в 128 бит вместо 32 для IPv4. Внедрение этого нового протокола представляет отдельную серьезную проблему, так как этот процесс не предполагает замены всего программного обеспечения во всем мире одновременно.
IPv6 представляет собой новую версию протокола Интернет (RFC-1883), являющуюся преемницей версии 4 (IPv4; RFC-791). Изменения IPv6 по отношению к IPv4 можно поделить на следующие группы:
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
3
a.Расширение адресации
b.Спецификация формата заголовков
c.Улучшенная поддержка расширений и опций
d.Возможность пометки потоков данных
e.Идентификация и защита частных обменов
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
4
2. Формат заголовка IPv6
Версия - 4-битный код номера версии Интернет протокола (версия Интернет протокола для IPv6= 6)
Приор. - 4-битный код приоритета Метка потока - 24-битный код метки потока (для мультимедиа) Размер поля данных - 16-битовое число без знака. Несет в себе код
длины поля данных в октетах, которое следует сразу после заголовка пакета. Если код равен нулю, то длина поля данных записана в поле данных jumbo, которое в свою очередь хранится в зоне опций.
Следующий заголовок - 8-битовый разделитель. Идентифицирует тип заголовка, который следует непосредственно за IPv6 заголовком. Использует те же значения, что и протокол IPv4 [RFC-1700].
Предельное число шагов - 8-битовое целое число без знака. Уменьшается на 1 в каждом узле, через который проходит пакет. При предельном числе шагов, равном нулю, пакет удаляется.
Адрес отправителя - 128-битовый адрес отправителя пакета. Адрес получателя - 128-битовый адрес получателя пакета
(возможно не конечный получатель, если присутствует маршрутный заголовок).
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
5
Рис.1. Формат заголовка пакета IPv6.
0 4 8 16 24 31
Версия Приор Метка потока
Размер поля данных
Следующий заголовок
Предельное число шагов
Адрес отправителя (128 бит)
Адрес получателя (128 бит)
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
6
3. IP версия 6 архитектуры адресации
Существует три типа адресов: unicast:Идентификатор одиночного интерфейса. Пакет, посланный
по уникастному адресу, доставляется интерфейсу, указанному в адресе.
anycast:Идентификатор набора интерфейсов (принадлежащих разным узлам). Пакет, посланный по эникастному адресу, доставляется одному из интерфейсов, указанному в адресе (ближайший, в соответствии с мерой, определенной протоколом маршрутизации).
multicast:Идентификатор набора интерфейсов (обычно принадлежащих разным узлам). Пакет, посланный по мультикастинг-адресу, доставляется всем интерфейсам, заданным этим адресом.В IPv6 не существует широковещательных адресов, их функции переданы мультикастинг-адресам.
В IPv6, все нули и все единицы являются допустимыми кодами для любых полей, если не оговорено исключение.
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
7
4. Модель адресации
IPv6 адреса всех типов ассоциируются с интерфейсами, а не узлами. Так как каждый интерфейс принадлежит только одному узлу, уникастный адрес интерфейса может идентифицировать узел.
IPv6 уникастный адрес соотносится только с одним интерфейсом. Одному интерфейсу могут соответствовать много IPv6 адресов различного типа (уникастные,
эникастные и мультикстные).
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
8
4.1. Переход с IPv4 на IPv6
Как перевести на IPv6 Интернет, функционирующий НПО протоколу IPv4? Существует несколько способов.
1.Метод двойного стека.
A B C D E F
IPv6 IPv6 IPv6 IPv6IPv4 IPv4
Поток:XОтправитель:
AПолучатель:
Fданные
Отправитель: A
Получатель: F
данные
Отправитель: A
Получатель: F
данные
Поток:??Отправитель:
AПолучатель:
Fданные
От А к B IPv6 От B к C IPv6 От D к E Ipv4 От E к F IPv6
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
9
2.Тунеллизация.
A B C D E F
IPv6 IPv6 IPv6 IPv6IPv4 IPv4
Поток:XОтправитель:
AПолучатель:
Fданные
Отправитель:ВПолучатель: Е
Поток:XОтправитель: AПолучатель: F
данные
Поток:ХОтправитель:
AПолучатель:
Fданные
От А к B IPv6От B к C IPv6
(инкапсуляция IPv6)От D к E Ipv4
(инкапсуляция IPv6)От E к F IPv6
Отправитель:ВПолучатель: Е
Поток:XОтправитель: AПолучатель: F
данные
ТУННЕЛЬ
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
10
4.2. Представление записи адресов (текстовое представление адресов)Существует три стандартные формы для представления ipv6
адресов в виде текстовых строк:
1. Основная форма имеет вид x:x:x:x:x:x:x:x, где 'x' шестнадцатеричные 16-битовые числа.
Примеры:fedc:ba98:7654:3210:FEDC:BA98:7654:3210
1080:0:0:0:8:800:200C:417A
2. Альтернативной формой записи, которая более удобна при работе с ipv4 и IPv6, является x:x:x:x:x:x:d.d.d.d, где 'x' шестнадцатеричные 16-битовые коды адреса, а 'd' десятичные 8-битовые, составляющие младшую часть адреса (стандартное IPv4 представление).
Например:0:0:0:0:0:0:13.1.68.30:0:0:0:0:FFFF:129.144.52.38или в сжатом виде:::13.1.68.3::FFFF:129.144.52.38
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
11
3. Из-за метода записи некоторых типов IPv6 адресов, они часто содержат длинные последовательности нулевых бит. Для того чтобы сделать запись адресов, содержащих нулевые биты, более удобной, имеется специальный синтаксис для удаления лишних нулей. Использование записи "::" указывает на наличие групп из 16 нулевых бит. Комбинация "::" может появляться только при записи адреса. Последовательность "::" может также использоваться для удаления из записи начальных или завершающих нулей в адресе.
Например:1080:0:0:0:8:800:200c:417aуникастадресff01:0:0:0:0:0:0:43мультикастадрес0:0:0:0:0:0:0:1адрес обратнойсвязи0:0:0:0:0:0:0:0неспецифицированный адресНо можно следующим образом:1080::8:800:200c:417aуникаст-адресff01::43мультикаст адрес::1адрес обратной связи::не специфицированный адрес
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
12
5. Заголовки расширения IPv6
В IPv6, опционная информация уровня Интернет записывается вотдельных заголовках, которые могут быть помещены между
IPv6заголовком и заголовком верхнего уровня пакета. Существуетнебольшое число таких заголовков, каждый задаетсяопределенным значением кода поля следующий заголовок. Как показано в примерах ниже, IPv6 пакет может нести нуль,один, или более заголовков расширения, каждый задаетсяпредыдущим полем следующий заголовок:
IPv6-
заголовок.Следующий заголовок = TCP
IPv6-заголовок.Следующий
заголовок = routing
TCP-заголовок+данные
IPv6-заголовок.Следующий
заголовок = routing
Заголовок маршрута. Следующий заголовок =
TCP
Заголовок маршрута. Следующий заголовок =
TCP
Заголовок маршрута. Следующий заголовок =
Fragment
TCP-заголовок+данные
TCP-заголовок фрагмента+данные
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
13
Заголовки расширения не рассматриваются и не обрабатываютсяузлами по пути доставки. Содержимое и семантика каждогозаголовка расширения определяет, следует или нет обрабатыватьследующий заголовок.
Если в результате обработки заголовка узлу необходимо перейтик следующему заголовку, а код поля следующий заголовок нераспознается, необходимо игнорировать данный пакет и послатьсоответствующее сообщение ICMP (parameter problem message)отправителю пакета. Это сообщение должно содержать код ICMP= 2 ("unrecognized next header type encountered " – встретилсянераспознаваемый тип следующего заголовка) и поле – указательна не узнанное поле в пакете. Аналогичные действия следуетпредпринять, если узел встретил код следующего заголовкаравный нулю в заголовке, отличном от IPv6-заголовка.
Каждый заголовок расширения имеет длину кратную 8 октетам.
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
14
6. Маршрутный заголовок
Заголовок маршрутизации используется отправителем, чтобы заставитьпакет посетить один или более промежуточных узлов на пути к местуназначения. Эта функция схожа с опцией принудительной маршрутизациив протоколе IPv4. Заголовок маршрутизации идентифицируется кодом 43поля следующий заголовок предыдущего заголовка и имеет формат:
Следующий заголовок -битовый селектор. Определяет тип заголовка, которыйследует непосредственно за заголовком маршрутизации. Использует те же кодыпротоколов, что и IPv4 hdr ext len8 -битовое целое без знака. Длина заголовкамаршрутизации выражается в 8 октетных блоках, и не включает в себя первые 8октетов.Тип маршрутизации 8 -битовый идентификатор конкретного вариантаМаршрутизацииОставшиеся сегменты 8-битовое число без знака. Числоостающихся сегментов пути, т.e. число промежуточных узлов, которые должныбыть посещены пакетом по пути к месту назначенияДанные, зависящие от типа Поле переменной длины, формат зависит от кодаполя тип маршрутизации, а длина определяется заголовком маршрутизации икратна октетам.
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
15
Если в процессе обработки входного пакета встретитсязаголовок маршрутизации с не узнанным полем типмаршрутизации, то поведение узла зависит от содержимогополя число оставшихся сегментов пути.
Если число оставшихся сегментов пути равно нулю, узелдолжен проигнорировать заголовок маршрутизации ипродолжить работу со следующим заголовком, чей тип указан вполе следующий заголовок заголовка маршрутизации.
Если число оставшихся сегментов пути не равно нулю, узелдолжен выбросить пакет и послать сообщение ICMP (parameterproblem, код 0) с указателем на поле не узнанного типамаршрутизации. Заголовок маршрутизации типа 0 имеетследующий формат :
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
16
Рис. Формат заголовка маршрутизации типа 0
Следующий заголовок
Резерв
Hdr Ext Len Тип маршрутизации=0
Оставшиеся сегменты
Strict/Loose Bit Map
Адрес [1]
Адрес [2]
Адрес [N]
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
17
7. Заголовок фрагмента
Следующий заголовок 8-битовый селектор. Идентифицирует типИсходного заголовка фрагментируемой части исходного пакета.Использует те же коды протоколов, что и IPv4 [RFC-1700].Резерв 8ббитовое резервное поле.Инициализируется нулем при
передачеи игнорируется при приемеFragment offset 13-битовое число без знака. Смещение в 8октетном блоке, для данных, которые следуют за этим заголовком,началом отсчета является начало фрагментируемой части исходногопакета.Резерв (второй) 2-битовое резервное поле. Инициализируетсянулем при передаче и игнорируется при приемеm флаг1 = есть еще фрагменты; 0 = последний ФрагментИдентификация 32 бита
Следующий заголовок
РезервУказатель фрагмента
Резерв М
Идентефикация
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
18
8. Заголовок опций места назначения
Заголовок опции места назначения используется для передачиопционной информации, которая должна анализироваться толькоузлом (узлами) назначения. Заголовок опции места назначенияидентифицируется кодом поля следующий заголовок равным 60предшествующего заголовка имеет формат:
Следующий заголовок - 8-битовый селектор. Идентифицирует тип
заголовка, который непосредственно следует за заголовком опций места
назначения. Использует те же коды протокола, что и IPv4
Hdr Ext Len - 8-битовое целое без знака. Длина заголовка опций места
назначения в 8-октетных блоках, исключая первые 8 октетов.
Опции - поле переменной длины, кратное 8 октетам. Содержит одну или
более TLV-закодированных опций.
Следующий заголовок
Hdr Ext Len
Опции
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
19
9. Отсутствие следующего заголовка
Код 59 в поле следующий заголовок IPv6 заголовка или
любой другой заголовок расширения указывает, что за
этим заголовком ничего не следует. Если поле длина
данных заголовка IPv6 указывает на присутствие
октетов после конца заголовка, содержащего код 59 в
поле следующий заголовок, эти октеты должны быть
проигнорированы и переданы без изменений при
переадресации пакета.
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
20
10.Размер пакетов
Протокол IPv6 требует, чтобы каждый канал в Интернетимел MTU = 576 октетов или более. Для каждого канала,который не способен обеспечить длину пакетов в 576октетов должна быть обеспеченафрагментация/дефрагментация на уровне ниже IPv6.
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
21
11. Расширение DNS для поддержки IP-версии 6 (DNS Extensions to Support IP Version 6. S. Thomson. RFC-1886)Существующая поддержка записи адресов Интернет в DNS
(Domain Name System) не может быть легко расширена для поддержки IPv6-адресов , так как приложение предполагает, что адресный запрос вернет только 32-битовый IPv4-адрес.
Для того чтобы запоминать IPv6-адреса, определены следующие расширения:
Определен новый тип ресурсной записи, для того чтобы установить соответствие между именами доменов и адресами IPv6.
Определен новый домен, предназначенный для обработки запросов по новым адресам.
Существующие запросы, которые выполняют выявление IPv4-адресов, переопределены для получения как IPv4, так и IPv6-адресов.
Изменения выполнены так, чтобы быть совместимыми с имеющимся программным обеспечением. Существующая поддержка IPv4-адресов сохраняется. Переходное состояние осуществования IPv4 и IPv6-адресов обсуждается в .
каф.ВТ, ТОГУ, г. Хабаровск, вед. преп. Шоберг А.Г.
22
12. Вывод
Протокол Internet (IP) версии 6 (IPv6 или IPng) –это следующее поколение IP, значительноусовершенствованное по сравнению с IP версии 4(IPv4). В IPv6 значительно увеличено адресноепространство в соответствии с ростомпопулярности сети Internet. IPv6 - новая версияпротокола IPv4, поэтому в одной и той же сетимогут применяться и старый, и новый стекипротоколов. В результате переход от IPv4 (32разрядная адресация) к IPv6 (128-разряднаяадресация) в любой сети может осуществлятьсяпостепенно.