Протокол обнаружения соседей
Протокол связи | |
![]() При определении своих сообщений NDP следует ICMPv6 . формату сообщений | |
Цель | Вспомогательный протокол для IPv6 |
---|---|
Разработчик(и) | Целевая группа по интернет-инжинирингу |
Введение | март 1996 г |
Уровень OSI | Сетевой уровень |
RFC(ы) |
|
Протокол обнаружения соседей ( 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 .
Для отправки сообщения также требуется компьютера 2 MAC-адрес . Во-первых, компьютер 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 (IP-адрес назначения ff02::1:ff00:55 и назначение 33:33:FF: 00:00:55 MAC-адрес), который принимается компьютером 2 , который прослушивает свой собственный многоадресный адрес запрошенного узла в локальной сети.
Компьютер 2 отвечает рекламным сообщением соседа, содержащим его MAC-адреса и IP-адреса. При отправке запроса Компьютер 2 может вставить запись для Компьютера 1 в свою таблицу NDP для использования в будущем.
Компьютер 1 получает и кэширует информацию ответа в своей таблице NDP и теперь может отправить пакет.
Форматы сообщений [ править ]
- Сообщение запроса маршрутизатора
- Рекламное сообщение маршрутизатора
- Сообщение с просьбой соседа
- Рекламное сообщение соседа
- Перенаправление сообщения
См. также [ править ]
- NDPMon — монитор протокола обнаружения соседей
- radvd — демон рекламы маршрутизатора
- Безопасное обнаружение соседей
Ссылки [ править ]
- ^ Томас Нартен; Эрик Нордмарк; Уильям Аллен Симпсон; Хешам Солиман (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
- ↑ Перейти обратно: Перейти обратно: а б 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 . RFC 8106 .
- ^ Чон, Джехун Пол; Пак, Сухонг Даниэль; Белой, Люк; Маданапалли, Шьям (ноябрь 2010 г.). Параметры объявления маршрутизатора IPv6 для настройки DNS . дои : 10.17487/RFC6106 . RFC 6106 .
- ^ «Форматы параметров обнаружения соседей IPv6» . Параметры протокола управляющих сообщений Интернета версии 6 (ICMPv6) . Управление по присвоению номеров в Интернете. 05.12.2017 . Проверено 16 декабря 2017 г.
- ^ «Использование IEEE 802.16 IPv6 в реальном времени: постановка проблемы» . www.ietf.org . Проверено 22 сентября 2023 г.