Solicited-node multicast address

A solicited-node multicast address is an IPv6 multicast address used by the Neighbor Discovery Protocol to determine the link layer address associated with a given IPv6 address, which is also used to check if an address is already being used by the local-link or not, through a process called DAD (Duplicate Address Detection). The solicited-node multicast addresses are generated from the host's IPv6 unicast or anycast address, and each interface must have a solicited-node multicast address associated with it.

A solicited-node address is created by taking the least-significant 24 bits of a unicast or anycast address and appending them to the prefix.

Example
Assume a host with an unicast/anycast IPv6 address of. Its solicited-node multicast address will be.

 2001:db8::2aa:ff:fe28:9c5a                 IPv6 unicast/anycast address (compressed notation) 2001:0db8:0000:0000:02aa:00ff:fe28:9c5a    IPv6 unicast/anycast address (uncompressed notation) --     The least-significant 24 bits

ff02::1:ff00:0/104                         Solicited-node multicast address prefix (compressed notation) ff02:0000:0000:0000:0000:0001:ff00:0000/104 Solicited-node multicast address prefix (uncompressed notation) --           The most-significant 104 bits ff02:0000:0000:0000:0000:0001:ff28:9c5a    Solicited-node multicast address (uncompressed notation) ff02::1:ff28:9c5a                          Solicited-node multicast address (compressed notation)

Solicited-node multicast MAC address
A solicited-node multicast MAC address is an Ethernet multicast address used by the Neighbor Discovery Protocol as a destination MAC address when communicating to hosts using a solicited-node multicast address. Each interface must be listening to its solicited-node multicast MAC address associated to them.

It is created by taking the least-significant 24 bits of a solicited-node multicast address and appending them to the prefix 33:33:FF:xx:xx:xx.

Example
Assume a host with a solicited-node multicast address of. Its solicited-node multicast MAC address will be.

 ff02::1:ff28:9c5a Solicited-node multicast address -- The least-significant 24 bits

33:33:FF:xx:xx:xx Solicited-node multicast MAC address prefix 33:33:FF:28:9C:5A Solicited-node multicast MAC address -- -- -- The least-significant 24 bits

Efficiency compared to IPv4 and ARP
Solicited-node multicast addresses are used with IPv6 neighbor discovery to provide the same function as the Address Resolution Protocol in IPv4. ARP uses broadcasts to send an ARP request to the broadcast MAC address, which is received by all hosts on the local link, although only one host—the one being queried—would need to respond. The other hosts still have to process and discard the request.

Since a solicited-node multicast address is a function of the last 24 bits of an IPv6 unicast/anycast address, the number of hosts that are subscribed to each solicited-node multicast address is very small. This number would typically be one, but there could be a few because the mapping function is not a 1:1 mapping, like for example if the same host bear the same last 24 bits of their IPv6 address ( and has the same solicited-node multicast address). This means that a host should not need to be interrupted as often to neighbor solicitation requests, compared to ARP in IPv4.