Jestem programistą i właśnie dostałem darmową książkę o IPv6 na Techdays, którą czytam dla zabawy. Oddali go, ponieważ jest to trochę stara książka (W2008), więc może jest inaczej w przypadku innych / nowszych systemów operacyjnych, ale nie rozumiem konieczności uzyskania adresu MAC przez Neighbor Discovery.
Zgodnie z książką, każdy węzeł automatycznie otrzymuje lokalny adres IP łącza, który jest tworzony z adresu MAC poprzez wstawienie FF-FE
między 3 i 4 bajtami i odwrócenie bitu U / L, tak aby lokalny adres IP łącza węzeł z adresem MAC 00-AA-00-3F-2A-1C
staje się FE80::2AA:FF:FE:3F:2A1C
.
Aby ustalić adres MAC warstwy łącza, na adres lokalny adres IP łącza wysyłana jest wiadomość Neighbor Solicitation, która odpowiada wiadomością zawierającą adres MAC ... Ale nadawca już o tym wie, ponieważ MAC jest zakodowany w łączu lokalny adres IP. Brzmi więc jak wysłanie pocztówki do kogoś, kto prosi o adres.
Więc albo źle zrozumiałeś, albo zostałeś źle poinformowany o kilku rzeczach.
Korzystając z SLAAC, host może zbudować własne adresowanie IPv6 przy użyciu swojego adresu MAC, ale wiele osób uważało, że jest to niebezpieczne, przekazując zbyt wiele informacji i umożliwiając śledzenie określonego hosta. Na tej podstawie opracowano rozszerzenia prywatności i losowe adresowanie, które są wykorzystywane przez systemy operacyjne w celu zapewnienia prywatności / bezpieczeństwa. Oznacza to, że host może utworzyć własne adresowanie, nie oparte na adresie MAC.
Kiedy host musi wykryć adres MAC sąsiada w IPv4, używa ARP. ARP rozgłasza żądanie, ale IPv6 nie ma rozgłoszenia. Zamiast tego każdy host musi dołączyć do grupy multiemisji z zamówionym węzłem. Ta grupa opiera się na ostatnich 24 bitach adresu IPv6. Ponieważ interfejsy IPv6 mogą mieć dowolną liczbę adresów IPv6, host może dołączyć do wielu grup multiemisji Zażądanego Węzła. Host IPv6 szukający adresu MAC innego hosta wyśle żądanie multiemisji do grupy multiemisji Zażądanego węzła docelowego adresu IPv6.
Zapewnia to przewagę nad ARP IPv4. Ponieważ ARP korzysta z emisji dla żądań, przerywa każdy host w domenie emisji warstwy 2. Ponieważ grupa multiemisji z zamówionym węzłem wykorzystuje ostatnie 24 bity docelowego adresu IPv6, żądanie multiemisji ND prawdopodobnie przerwie tylko hosta docelowego lub ewentualnie jednego lub dwóch innych hostów w domenie rozgłoszeniowej warstwy 2.
źródło