Протокол в наборе интернет-протоколов, используемый с IPv6.
Протокол обнаружения соседей ( NDP ) или просто Обнаружение соседей ( ND ) — это протокол набора интернет-протоколов , используемый с интернет-протоколом версии 6 (IPv6). [1] Он работает на сетевом уровне модели Интернета, [2] [3] и отвечает за сбор различной информации, необходимой для сетевого взаимодействия, включая конфигурацию локальных соединений, а также серверов доменных имен и шлюзов. [4]
Протокол определяет пять типов пакетов ICMPv6 для выполнения функций для IPv6, аналогичных протоколу разрешения адресов (ARP) и протоколу управления сообщениями Интернета (ICMP) протоколам обнаружения маршрутизатора и перенаправления маршрутизатора для IPv4 . Он обеспечивает множество улучшений по сравнению со своими аналогами IPv4 (RFC 4861, раздел 3.1). Например, он включает в себя обнаружение недоступности соседей (NUD), что повышает надежность доставки пакетов при наличии сбоев маршрутизаторов, каналов или мобильных узлов.
Расширение протокола Inverse Neighbor Discovery ( IND ) (RFC 3122) позволяет узлам определять и объявлять адрес IPv6, соответствующий заданному адресу канального уровня, аналогично Reverse ARP для IPv4.
Протокол обнаружения безопасного соседа (SEND), расширение безопасности NDP, использует криптографически генерируемые адреса (CGA) и инфраструктуру открытых ключей ресурсов (RPKI), чтобы обеспечить альтернативный механизм защиты NDP с помощью криптографического метода, независимого от IPsec . Прокси-сервер обнаружения соседей (ND-прокси) (RFC 4389) предоставляет услугу, аналогичную прокси-прокси IPv4 ARP , и позволяет соединять несколько сегментов сети в пределах одного префикса подсети, когда мост не может быть выполнен на канальном уровне.
Функции
NDP определяет пять типов пакетов ICMPv6 для запроса маршрутизатора, объявления маршрутизатора, запроса соседа, объявления соседа и перенаправления сети. [4]
- Запрос маршрутизатора (тип 133)
- Хосты запрашивают сообщения Router Solicitation, чтобы найти маршрутизаторы на подключенном канале. [5] Маршрутизаторы, которые пересылают пакеты, не адресованные им, генерируют объявления маршрутизатора сразу после получения этого сообщения, а не в следующее запланированное время.
- Объявление маршрутизатора (тип 134)
- Маршрутизаторы объявляют о своем присутствии вместе с различными параметрами соединения и Интернета либо периодически, либо в ответ на сообщение Router Solicitation.
- Обращение к соседям (тип 135)
- Запросы соседа используются узлами для определения адреса канального уровня соседа или для проверки того, что сосед все еще доступен через кэшированный адрес канального уровня.
- Объявление соседа (тип 136)
- Объявления соседей используются узлами для ответа на сообщение запроса соседа или не запрошены для быстрого предоставления новой информации.
- Перенаправление (тип 137)
- Маршрутизаторы могут сообщать хостам о лучшем маршрутизаторе первого перехода для пункта назначения.
Эти сообщения используются для обеспечения следующих функций:
- Обнаружение маршрутизаторов: хосты могут находить маршрутизаторы, находящиеся на подключенных каналах.
- Обнаружение префиксов: хосты могут обнаруживать префиксы адресов, которые находятся в прикрепленных ссылках.
- Обнаружение параметров: хосты могут находить параметры канала (например, MTU ).
- Автоконфигурация адреса: дополнительная настройка адресов сетевых интерфейсов без сохранения состояния (см. IPv6 § Автоконфигурация адреса без сохранения состояния (SLAAC) и Адрес IPv6 § Автоконфигурация адреса без сохранения состояния ).
- Разрешение адресов: сопоставление IP-адресов и адресов канального уровня.
- Определение следующего перехода: хосты могут найти маршрутизаторы следующего перехода для пункта назначения.
- Обнаружение недоступности соседа (NUD): определение того, что сосед больше недоступен по каналу.
- Обнаружение дубликатов адресов (DAD): узлы могут проверять, используется ли адрес уже.
- Назначение рекурсивного DNS-сервера (RDNSS) и списка поиска DNS (DNSSL) с помощью параметров объявления маршрутизатора (RA). [6] Это предлагаемый стандарт с 2010 года [7] и обновленный в марте 2017 года, но поддерживаемый не всеми клиентами.
- Перенаправление пакетов для обеспечения лучшего маршрута следующего перехода для определенных пунктов назначения.
IANA ведет список всех текущих вариантов NDP по мере их публикации. [8]
Пример
Два компьютера в офисе ( Компьютер 1 и Компьютер 2 ) соединены друг с другом в локальной сети с помощью кабелей Ethernet и сетевых коммутаторов без каких-либо промежуточных шлюзов или маршрутизаторов . Компьютер 1 имеет пакет для отправки на компьютер 2 . Через DNS он определяет, что компьютер 2 имеет IP-адрес 2001:db8::55 .
Для отправки сообщения также требуется MAC-адрес компьютера 2 . Во-первых, компьютер 1 использует кэшированную таблицу NDP для поиска 2001:db8::55 для любых существующих записей MAC-адреса компьютера 2 ( 00:EB:24:B2:05:AC ). Если MAC-адрес найден, он отправляет кадр Ethernet, содержащий IP-пакет, по каналу с адресом назначения 00:EB:24:B2:05:AC . Если кэш не дал результата для 2001:db8::55 , компьютер 1 должен создать многоадресный адрес запрошенного узла , взяв младшие 24 бита адреса компьютера 2 и добавив их к префиксу ff02::1: ff00:0/104 , то есть ff02::1:ff00:55 , и создайте MAC-адрес многоадресной рассылки запрошенного узла, взяв младшие 24 бита многоадресного адреса запрошенного узла Компьютера 2 и добавив их к префиксу 33: 33:FF:xx:xx:xx , [9] что равно 33:33:FF:00:00:55 и отправьте сообщение запроса соседа с запросом ответа для 2001:db8::55 (назначение ff02::1: ff00:55 IP-адрес и назначение 33:33:FF:00:00:55 MAC-адрес), который принимается компьютером 2 , который прослушивает свой собственный многоадресный адрес запрошенного узла в локальной сети.
Компьютер 2 отвечает рекламным сообщением соседа, содержащим его MAC-адреса и IP-адреса. При отправке запроса Компьютер 2 может вставить запись для Компьютера 1 в свою таблицу NDP для использования в будущем.
Компьютер 1 получает и кэширует информацию ответа в своей таблице NDP и теперь может отправить пакет.
Форматы сообщений
Сообщение запроса маршрутизатора
Рекламное сообщение маршрутизатора
Сообщение с просьбой соседа
Рекламное сообщение соседа
Перенаправление сообщения
Смотрите также
Рекомендации
- ^ Томас Нартен; Эрик Нордмарк; Уильям Аллен Симпсон; Хешам Солиман (1 марта 2005 г.). «Обнаружение соседей для IP версии 6 (IPv6)». ietf.org . Инженерная группа Интернета (IETF): 3. Архивировано из оригинала 3 июля 2016 года . Проверено 7 июня 2016 г.
{{cite journal}}
: CS1 maint: bot: исходный статус URL неизвестен ( ссылка ) - ^ RFC 1970, Т. Мартен, Э. Нордмарк, В. Симпсон, Обнаружение соседей для IP версии 6 (IPv6) , IETF, 1996.
- ^ RFC 1122
- ^ ab RFC 4861, Обнаружение соседей для IP версии 6 (IPv6) , Т. Нартен и др . (сентябрь 2007 г.)
- ^ Томас Нартен; Эрик Нордмарк; Уильям Аллен Симпсон; Хешам Солиман (1 марта 2005 г.). «Обнаружение соседей для IP версии 6 (IPv6)». ietf.org . Инженерная группа Интернета (IETF). п. 9. Архивировано из оригинала 2 сентября 2007 года . Проверено 2 марта 2013 г.
Обнаружение маршрутизатора: как хосты находят маршрутизаторы, находящиеся на подключенном канале.
- ^ Чон, Джехун Пол; Пак, Сухонг Даниэль; Белой, Люк; Маданапалли, Шьям (март 2017 г.). Параметры объявления маршрутизатора IPv6 для конфигурации DNS. дои : 10.17487/RFC8106 . РФК 8106.
- ^ Чон, Джехун Пол; Пак, Сухонг Даниэль; Белой, Люк; Маданапалли, Шьям (ноябрь 2010 г.). Параметры объявления маршрутизатора IPv6 для конфигурации DNS. дои : 10.17487/RFC6106 . РФК 6106.
- ^ «Форматы параметров обнаружения соседей IPv6» . Параметры протокола управляющих сообщений Интернета версии 6 (ICMPv6) . Управление по присвоению номеров в Интернете. 05.12.2017 . Проверено 16 декабря 2017 г.
- ^ «Использование IPv6 IEEE 802.16 в реальном времени: постановка проблемы» . www.ietf.org . Проверено 22 сентября 2023 г.