В IPv4 узлу, который хочет обмениваться данными с другим узлом в сети, необходимо иметь IP-адрес, полученный либо с помощью DHCP, либо путем ручной настройки. Как только хост имеет некоторый действительный IP-адрес, он может общаться с любым хостом в подсети. Для связи на уровне 3 хост также должен знать IP-адрес другого хоста. Связь по каналу связи устанавливается с помощью аппаратных встроенных MAC-адресов. Чтобы узнать MAC-адрес хоста, IP-адрес которого известен, хост отправляет широковещательную рассылку ARP, а взамен предполагаемый хост отправляет обратно свой MAC-адрес.
В IPv6 нет механизмов вещания. Узлу с поддержкой IPv6 не обязательно получать IP-адрес от DHCP или настраивать его вручную, но он может автоматически настраивать свой собственный IP.
ARP был заменен протоколом обнаружения соседей ICMPv6.
Протокол обнаружения соседей
Хост в сети IPv6 способен автоматически конфигурировать себя с помощью уникального локального адреса канала. Как только узел получает адрес IPv6, он присоединяется к нескольким группам многоадресной рассылки. Все сообщения, относящиеся к этому сегменту, осуществляются только по тем многоадресным адресам. Хост проходит через ряд состояний в IPv6:
-
Запрос соседей : после настройки всех IPv6 либо вручную, либо с помощью DHCP-сервера, либо путем автоматической настройки хост отправляет сообщение запроса соседей на адрес многоадресной рассылки FF02 :: 1/16 для всех своих адресов IPv6, чтобы узнать, что никто другой занимает одни и те же адреса.
-
DAD (обнаружение дублированного адреса) : когда хост не прослушивает что-либо из сегмента, касающееся его сообщения запроса соседей, он предполагает, что в сегменте не существует дублированного адреса.
-
Объявление соседей : после назначения адресов своим интерфейсам и создания и запуска хост снова отправляет сообщение рекламы соседей, сообщающее всем остальным хостам в сегменте, что он назначил эти адреса IPv6 своим интерфейсам.
Запрос соседей : после настройки всех IPv6 либо вручную, либо с помощью DHCP-сервера, либо путем автоматической настройки хост отправляет сообщение запроса соседей на адрес многоадресной рассылки FF02 :: 1/16 для всех своих адресов IPv6, чтобы узнать, что никто другой занимает одни и те же адреса.
DAD (обнаружение дублированного адреса) : когда хост не прослушивает что-либо из сегмента, касающееся его сообщения запроса соседей, он предполагает, что в сегменте не существует дублированного адреса.
Объявление соседей : после назначения адресов своим интерфейсам и создания и запуска хост снова отправляет сообщение рекламы соседей, сообщающее всем остальным хостам в сегменте, что он назначил эти адреса IPv6 своим интерфейсам.
Как только хост настроен на настройку его адресов IPv6, он выполняет следующие действия:
Router Solicitation : хост отправляет пакет многоадресной рассылки Router Solicitation (FF02 :: 2/16) в своем сегменте, чтобы узнать о присутствии любого маршрутизатора в этом сегменте. Это помогает хосту настроить маршрутизатор в качестве шлюза по умолчанию. Если его маршрутизатор шлюза по умолчанию выходит из строя, хост может переключиться на новый маршрутизатор и сделать его шлюзом по умолчанию.
Объявление маршрутизатора : Когда маршрутизатор получает сообщение запроса маршрутизатора, он отвечает хосту, сообщая о своем присутствии на этой ссылке.
Redirect : это может быть ситуация, когда маршрутизатор получает запрос Router Solicitation, но он знает, что это не лучший шлюз для хоста. В этой ситуации маршрутизатор отправляет обратно сообщение Redirect, сообщающее хосту, что существует лучший маршрутизатор следующего перехода. В следующем прыжке хост отправит свои данные, предназначенные для хоста, который не принадлежит к тому же сегменту.