Jump to content

ICMPv6

Протокол управляющих сообщений Интернета для IPv6
Протокол связи
Общая структура сообщений ICMPv6
Аббревиатура ICMPv6
Цель Вспомогательный протокол для IPv6
Введение декабрь 1995 г .; 28 лет назад ( 1995-12 )
Уровень OSI Сетевой уровень
RFC(ы) RFC 4443

Протокол управляющих сообщений Интернета версии 6 ( ICMPv6 ) представляет собой реализацию протокола управляющих сообщений Интернета (ICMP) для Интернет-протокола версии 6 (IPv6). [1] ICMPv6 является неотъемлемой частью IPv6 и выполняет функции сообщения об ошибках и диагностики.

ICMPv6 имеет структуру расширений для реализации новых функций. Было опубликовано несколько расширений, определяющих новые типы сообщений ICMPv6, а также новые параметры для существующих типов сообщений ICMPv6. Например, Neighbor Discovery Protocol (NDP) — это протокол обнаружения узлов, основанный на ICMPv6, который заменяет и расширяет функции ARP . [2] Secure Neighbor Discovery (SEND) — это расширение NDP с дополнительной безопасностью. Обнаружение прослушивателей многоадресной рассылки (MLD) используется маршрутизаторами IPv6 для обнаружения прослушивателей многоадресной рассылки по прямо подключенному каналу, подобно тому, как протокол управления группами Интернета (IGMP) используется в IPv4 . Обнаружение многоадресного маршрутизатора (MRD) позволяет обнаруживать многоадресные маршрутизаторы.

Типы и форматы сообщений

[ редактировать ]

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

Сообщение ICMPv6 состоит из заголовка и полезных данных протокола. Заголовок содержит всего три поля: тип (8 бит), код (8 бит) и контрольная сумма (16 бит). type указывает тип сообщения. Значения в диапазоне от 0 до 127 (старший бит — 0) указывают на сообщение об ошибке, а значения в диапазоне от 128 до 255 (старший бит — 1) указывают на информационное сообщение. Значение поля кода зависит от типа сообщения и обеспечивает дополнительный уровень детализации сообщения. Поле контрольной суммы обеспечивает минимальный уровень проверки целостности сообщения ICMP.

ICMPv6-пакет
Битовое смещение 0–7 8–15 16–31
0 Тип Код Контрольная сумма
32 Тело сообщения

Управляющие сообщения идентифицируются по значению в поле типа . Поле кода предоставляет дополнительную контекстную информацию для сообщения. Некоторые сообщения служат той же цели, что и типы сообщений ICMP с соответствующими именами.

Тип Код
Ценить Значение Ценить Значение
Сообщения об ошибках ICMPv6
1 Пункт назначения недоступен 0 нет маршрута к месту назначения
1 сообщение с пунктом назначения административно запрещено
2 за пределами исходного адреса
3 адрес недоступен
4 порт недоступен
5 исходный адрес не справился с политикой входящего/исходящего трафика
6 отклонить маршрут до пункта назначения
7 Ошибка в заголовке исходной маршрутизации
2 Пакет слишком большой 0
3 Время превышено 0 превышен лимит прыжков при транзите
1 время сборки фрагмента превышено
4 Проблема с параметром 0 обнаружено ошибочное поле заголовка
1 обнаружен нераспознанный тип следующего заголовка
2 обнаружен неопознанный параметр IPv6
100 Частные эксперименты
101 Частные эксперименты
127 Зарезервировано для расширения сообщений об ошибках ICMPv6.
Информационные сообщения ICMPv6
128 Эхо-запрос 0
129 Эхо-ответ 0
130 Запрос прослушивателя многоадресной рассылки ( MLD ) 0

Существует два подтипа сообщений запроса многоадресного прослушивателя:

  • Общий запрос, используемый для определения того, какие адреса многоадресной рассылки имеют прослушиватели прикрепленной ссылки.
  • Запрос для конкретного адреса многоадресной рассылки, используемый для определения того, есть ли у определенного адреса многоадресной рассылки какие-либо прослушиватели на прикрепленной ссылке.

Эти два подтипа различаются содержимым поля адреса многоадресной рассылки, как описано в разделе 3.6 RFC 2710.

131 Отчет прослушивателя многоадресной рассылки ( MLD ) 0
132 Прослушиватель многоадресной рассылки готов ( MLD ) 0
133 Запрос маршрутизатора ( NDP ) 0
134 Объявление маршрутизатора ( NDP ) 0
135 Обращение к соседям ( НДП ) 0
136 Реклама соседей ( НДП ) 0
137 Сообщение перенаправления ( NDP ) 0
138 Перенумерация маршрутизатора [3] 0 Команда перенумерации маршрутизатора
1 Результат перенумерации маршрутизатора
255 Сброс порядкового номера
139 Запрос информации об узле ICMP 0 Поле данных содержит адрес IPv6, который является предметом этого запроса.
1 Поле данных содержит имя, которое является предметом этого запроса, или пусто, как в случае NOOP.
2 Поле данных содержит адрес IPv4, который является предметом этого запроса.
140 Ответ с информацией об узле ICMP 0 Успешный ответ. Поле «Данные ответа» может быть или не быть пустым.
1 Ответчик отказывается дать ответ. Поле «Данные ответа» будет пустым.
2 Qtype запроса неизвестен ответчику. Поле «Данные ответа» будет пустым.
141 Сообщение с запросом на обнаружение обратного соседа 0
142 Рекламное сообщение об обнаружении обратного соседа 0
143 Отчеты об обнаружении прослушивателя многоадресной рассылки ( MLDv2 ) [4]
144 Сообщение с запросом на обнаружение адреса домашнего агента 0
145 Ответное сообщение об обнаружении адреса домашнего агента 0
146 Запрос мобильных префиксов 0
147 Реклама мобильного префикса 0
148 Запрос пути сертификации ( ОТПРАВИТЬ )
149 Объявление о пути сертификации (SEND)
151 Объявление многоадресного маршрутизатора ( MRD )
152 Запрос многоадресного маршрутизатора ( MRD )
153 Завершение многоадресного маршрутизатора ( MRD )
155 Управляющее сообщение RPL
200 Частные эксперименты
201 Частные эксперименты
255 Зарезервировано для расширения информационных сообщений ICMPv6.

Обратите внимание, что приведенная выше таблица не является полной. Текущий полный список назначенных типов ICMPv6 можно найти по этой ссылке: IANA: ICMPv6 Параметры .

Контрольная сумма

[ редактировать ]

ICMPv6 обеспечивает минимальный уровень проверки целостности сообщения за счет включения 16-битной контрольной суммы в его заголовок. Контрольная сумма рассчитывается, начиная с псевдозаголовка полей заголовка IPv6 в соответствии со стандартом IPv6, [5] который состоит из адресов источника и назначения, длины пакета и следующего поля заголовка, последнему из которых присвоено значение 58. После этого псевдозаголовка контрольная сумма продолжается сообщением ICMPv6. Вычисление контрольной суммы производится в соответствии со стандартами интернет-протокола с использованием 16-битного суммирования дополняющих единиц с последующим окончательным дополнением самой контрольной суммы и вставкой ее в поле контрольной суммы. [6] Обратите внимание, что это отличается от способа расчета для IPv4 в ICMP , но аналогично расчету, выполняемому в TCP .

Псевдозаголовок ICMPv6
Битовое смещение 0 – 7 8–15 16–23 24–31
0 Исходный адрес
32
64
96
128 Адрес назначения
160
192
224
256 Длина ICMPv6
288 Нули Следующий заголовок

Полезная нагрузка сообщения ICMPv6 варьируется в зависимости от типа отправляемого сообщения. Он начинается с бита 32 сразу после заголовка, описанного выше. Для некоторых сообщений, таких как пункт назначения недоступен или превышено время, не существует определенного тела сообщения.

Пункт назначения недоступен
Битовое смещение 0–7 8–15 16–31
0 1 Код Контрольная сумма
32 Неиспользованный
64 Тело сообщения (переменный размер)
Время превышено
Битовое смещение 0–7 8–15 16–31
0 3 Код Контрольная сумма
32 Неиспользованный
64 Тело сообщения (переменный размер)

Другие определяют использование только первых четырех байтов тела без какого-либо другого определенного содержимого:

Пакет слишком большой
Битовое смещение 0–7 8–15 16–31
0 2 0 Контрольная сумма
32 МУЖЧИНА
64 Тело сообщения (переменный размер)
Проблема с параметром
Битовое смещение 0–7 8–15 16–31
0 4 Код Контрольная сумма
32 Указатель
64 Тело сообщения (переменный размер)
Эхо-запрос
Битовое смещение 0–7 8–15 16–31
0 128 0 Контрольная сумма
32 Идентификатор Порядковый номер
64 Данные (переменный размер)
Эхо-ответ
Битовое смещение 0–7 8–15 16–31
0 129 0 Контрольная сумма
32 Идентификатор Порядковый номер
64 Данные (переменный размер)

В случае сообщений NDP первые четыре байта либо зарезервированы, либо используются для флагов/ограничения переходов. Хотя сброс тела имеет неуказанные структурированные данные:

Запрос маршрутизатора
Битовое смещение 0–7 8–15 16–31
0 133 0 Контрольная сумма
32 Сдержанный
64 Опции (переменный размер)
Реклама маршрутизатора
Битовое смещение 0–7 8–15 16–31
0 134 0 Контрольная сумма
32 Предел Cur Hop Флаг управляемого адреса Другой флаг конфигурации Зарезервировано Срок службы маршрутизатора
64 Доступное время
96 Время ретрансляции
128 Опции (переменный размер)
Соседское ходатайство
Битовое смещение 0–7 8–15 16–31
0 135 0 Контрольная сумма
32 Сдержанный
64 Целевой адрес (16 байт)
192 Опции (переменный размер)
Соседская реклама
Битовое смещение 0–7 8–15 16–31
0 136 0 Контрольная сумма
32 От маршрутизатора (R) Запрошенный флаг(S) Переопределить(O) Сдержанный
64 Целевой адрес (16 байт)
192 Опции (переменный размер)

Для перенаправления первые байты тела сообщения зарезервированы, но не используются. Далее следует адрес цели и назначения. В конце можно присоединить неуказанные опции:

Перенаправление ICMPv6
Битовое смещение 0–7 8–15 16–31
0 137 0 Контрольная сумма
32 Сдержанный
64 Целевой адрес (16 байт)
192 Адрес назначения (16 байт)
320 Опции (переменный размер)

Обработка сообщений

[ редактировать ]

Когда узел ICMPv6 получает пакет, он должен предпринять действия, зависящие от типа сообщения. Протокол ICMPv6 должен ограничивать количество сообщений об ошибках, отправляемых в один и тот же пункт назначения, чтобы избежать перегрузки сети. Например, если узел продолжает пересылать ошибочные пакеты, ICMP сигнализирует об ошибке в первом пакете, а затем делает это периодически, с фиксированным минимальным периодом или с фиксированной максимальной нагрузкой сети. Сообщение об ошибке ICMP никогда не должно отправляться в ответ на другое сообщение об ошибке ICMP.

  1. ^ А. Конта; С. Диринг (март 2006 г.). М. Гупта (ред.). Протокол управляющих сообщений Интернета (ICMPv6) для спецификации Интернет-протокола версии 6 (IPv6) . Сетевая рабочая группа. дои : 10.17487/RFC4443 . СТД 89. RFC 4443 . Интернет-стандарт. Устаревшие RFC 2463. Updates RFC 2780. Updated by РФК 4884 .
  2. ^ Т. Мругальский; М. Сиодельский; Б. Фольц; А. Юрченко; М. Ричардсон; С. Цзян; Т. Лемон; Т. Уинтерс (ноябрь 2018 г.). Протокол динамической конфигурации хоста для IPv6 (DHCPv6) . IETF . дои : 10.17487/RFC8415 . ISSN   2070-1721 . РФК 8415 . Предлагаемый стандарт. сек. 3. Устаревшие RFC 3315 , 3633 , 3736 , 4242 , 7083 , 7283 и 7550 .
  3. ^ М. Кроуфорд (август 2000 г.). Перенумерация маршрутизатора для IPv6 . Сетевая рабочая группа. дои : 10.17487/RFC2894 . РФК 2894 . Предлагаемый стандарт.
  4. ^ Р. Вида; Л. Коста, ред. (июнь 2004 г.). Обнаружение прослушивателя многоадресной рассылки версии 2 (MLDv2) для IPv6 . Сетевая рабочая группа. дои : 10.17487/RFC3810 . РФК 3810 . Предлагаемый стандарт. Обновления RFC 2710. Updated by РФК 4604 .
  5. ^ С. Диринг ; Р. Хинден (июль 2017 г.). Спецификация интернет-протокола версии 6 (IPv6) . IETF . дои : 10.17487/RFC8200 . СТД 86. RFC 8200 . Интернет Стандарт 86. сек. 8.1. Устаревшие РФК 2460 .
  6. ^ Р. Брейден ; Д. Борман; К. Партридж (сентябрь 1988 г.). Вычисление контрольной суммы Интернета . Сетевая рабочая группа. дои : 10.17487/RFC1071 . РФК 1071 . Информационный. Обновлено РФК 1141 .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 7a30966fc58c7775932d765319189193__1687695300
URL1:https://arc.ask3.ru/arc/aa/7a/93/7a30966fc58c7775932d765319189193.html
Заголовок, (Title) документа по адресу, URL1:
ICMPv6 - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)