dave-fiete
Goto Top

IPv6 Solicited-Multicast - what is the query really for?

Hello, my question:

It often states: "The solicited-node multicast address facilitates the efficient querying of network nodes to resolve a link-layer address from a known IPv6 address, known as link-layer address resolution."

For me "link-layer address" means the MAC address of the NIC.
For me "from a known IPv6 address" means the fe80::/64 link-local address.

Normally the fe80::/64 link-local address is built from the IEEE 802 or EUI-64 address. So, if the IPv6 address is already known, the interface ID of the fe80::/64 address is already known, so why to try to re-resolve the MAC address via sending a solicited-node multicast address constructed from the prefix FF02::1:FF00:0/104?

Example:

If I know FE80::2AA:FF:FE28:9C5A I can build the multicast address FF02::1:FF28:9C5A to send it out. But why? In this case I already know the rest (upper 24 bit) which in this case is 0x0002AA.

Thanks in advance for each note.

Content-Key: 461759

Url: https://administrator.de/contentid/461759

Printed on: April 26, 2024 at 05:04 o'clock

Member: aqui
Solution aqui Jun 13, 2019 at 11:12:48 (UTC)
Goto Top
Member: lcer00
Solution lcer00 Jun 13, 2019 at 11:24:46 (UTC)
Goto Top
Hallo,

https://www.cisco.com/c/en/us/support/docs/ip/ip-version-6-ipv6/113328-i ...
Link-local addresses are not necessarily bound to the MAC address (configured in a EUI-64 format). Link-local addresses can also be manually configured in the FE80::/10 format using the ipv6 address link-local command.

You may use manually configured link-local-addresses.
You may not use EUI-64: https://tools.ietf.org/html/rfc4291?referring_site=bodynav#section-2.5.1

lcer
Member: dave-fiete
dave-fiete Jun 16, 2019 at 09:22:08 (UTC)
Goto Top
Thanx aqui and icer for your effort. Now I do understand better.

IPv6 hosts typically have at least 2 addresses with which they can receive packets; a link-local address for local link traffic and a routable site-local or global address. A solicited-node address is created for each unicast address on each interface the host listens for traffic.

At 1st glance I only thought about the unicast link-local address fe80::/64 created from a MAC-address of the manufacturer. Why? Because the solicited-node multicast address is constructed from prefix ff02::1:ff:0/104 which codes the following information:

0xff : is multicast address
0x02 : the scope is link-local (!!!) and transient flag is zero
0x01 : all nodes on the segment

So, it's not so obvious why to create a solicited-node address from a global address which in addition may also changes over time.

With "netsh interface ipv6 show neighbors" I explored my neighbor cache and see that also a lot of multicast Ethernet MAC addresses in range 33-33-00-00-00-00 to 33-33-FF-FF-FF-FF is resolved.