Протокол обнаружения соседей (англ.Neighbor Discovery Protocol, NDP) — протокол из набора протоколов TCP/IP, используемый совместно с IPv6. Он работает на сетевом уровнемодели Интернета (RFC 1122) и ответственен за автонастройку адреса конечных и промежуточных точек сети, обнаружения других узлов на линии, определения адреса других узлов канального уровня, обнаружение конфликта адресов, поиск доступных маршрутизаторов и DNS-серверов, определения префикса адреса и поддержки доступности информации о путях к другим активным соседним узлам (RFC 4861)[1].
Этот протокол устанавливает пять различных типов пакета ICMPv6 для выполнения функций IPv6, сходных с ARP, ICMP, IRDP и Router Redirect протоколов для IPv4. Тем не менее, он предоставляет множество улучшений относительно IPv4 аналогов (RFC 4861, секция 3.1). Например, он включает NUD, который повышает надежность доставки пакетов в присутствии проблемных маршрутизаторов или подключений, или мобильных устройств.
Разрешение адреса: работа между IP-адресом и адресами уровня канала связи.
Обнаружение следующего перехода: узлы могут находить следующий на пути пакета маршрутизатор.
Обнаружение недоступности соседа (NUD): определение того, что сосед более недоступен на линии.
Обнаружение конфликта адресов (DAD): узлы сами могут определять, занят ли адрес.
Перенаправление: маршрутизатор может информировать узел о других наилучших маршрутизаторах для начала пути пакета.
Рекурсивный DNS-сервер (RDNSS) и список поиска DNS (DNSSL) назначается через параметры отклика маршрутизатора (RA).[3] Это новая функция, и поддерживается не всем программным обеспечением.
Уязвимости
Некоторые маршрутизаторы уязвимы при работе с протоколом NDP[4]. Зачастую, маршрутизаторы имеют меньше доступных адресов для NDP, чем доступно в подсети IPv6 (обычно 2^64 или более, для поддержки SLAAC). Решение доступно (неактуально)[5].
Примечания
↑RFC 4861, Протокол обнаружения соседей для протокола IP версии 6 (IPv6), T. Narten et al. (сентябрь 2007)
↑RFC 2461, Протокол обнаружения соседей для протокола IP версии 6 (IPv6), T. Narten, декабрь 1998
↑RFC 6106, IPv6 Параметры ответа маршрутизатора для настройки DNS , J. Jeong (Ed.), S. Park, L. Beloeil, S. Madanapalli (ноябрь 2010)