IPv6 Solicited Node Multicast Address

Every device that uses an IPv6 address will also compute and join a solicited node multicast group address. This address is required for IPv6 Neighbor Discovery which we use for layer two address discovery.

All solicited node multicast group addresses start with FF02::1:FF /104:

IPv6 solicited node multicast address

  • FF /8 is the IPv6 multicast range.
  • FF02 /16 is the multicast link local scope.

Let’s take a look on a Cisco IOS router to see what these solicited node multicast group addresses look like:

R1(config)#interface FastEthernet 0/0
R1(config-if)#ipv6 enable

I just enabled IPv6 on an interface, this causes the router to create a link-local IPv6 address. It will also compute and join the solicited node multicast group address:

R1#show ipv6 interface FastEthernet 0/0
FastEthernet0/0 is up, line protocol ibs up
  IPv6 is enabled, link-local address is FE80::21D:A1FF:FE8B:36D0
  No Virtual link-local address(es):
  No global unicast address is configured
  Joined group address(es):
    FF02::1
    FF02::1:FF8B:36D0

Above you can see that the router joined FF02::1:FF8B:36D0. The last 6 hexadecimal characters were copied from the link local address. Here’s a picture:

ipv6-solicited-node-multicast-address-from-router

Above you can see the complete uncompressed solicited node multicast address.

I can configure multiple IPv6 addresses on the interface, if the last 6 hexadecimal characters are similar then there is no need to join another multicast address. For example, let’s configure an IPv6 unicast address:

R1(config)#interface FastEthernet 0/0
R1(config-if)#ipv6 address 2001:DB8:1212:1212::/64 eui-64

I’ll use EUI-64 to generate the last 64 bits. Take a look at the joined group addresses:

R1#show ipv6 interface FastEthernet 0/0
FastEthernet0/0 is up, line protocol is up
  IPv6 is enabled, link-local address is FE80::21D:A1FF:FE8B:36D0
  No Virtual link-local address(es):
  Global unicast address(es):
    2001:DB8:1212:1212:21D:A1FF:FE8B:36D0, subnet is 2001:DB8:1212:1212::/64 [EUI]
  Joined group address(es):
    FF02::1
    FF02::1:FF8B:36D0

The last 64 bits of the link local and unicast address are the same so the solicited node multicast group address remains the same. If we configure an IPv6 address where the last 6 hexadecimal characters are different then the router will join another multicast group. Let’s try that:

We're Sorry, Full Content Access is for Members Only...

If you like to keep on reading, Become a Member Now! Here is why:

  • Learn any CCNA, CCNP and CCIE R&S Topic. Explained As Simple As Possible.
  • Try for Just $1. The Best Dollar You've Ever Spent on Your Cisco Career!
  • Full Access to our 662 Lessons. More Lessons Added Every Week!
  • Content created by Rene Molenaar (CCIE #41726)

525 Sign Ups in the last 30 days

satisfaction-guaranteed
100% Satisfaction Guaranteed!
You may cancel your monthly membership at any time.
No Questions Asked!

Forum Replies

  1. Hi Diana,

    Glad to hear you like it!

    There’s not really a short answer to your question. Technically, ND doesn’t require MLD to work.

    IPv6 ND uses multicast and the solicited node multicast addresses.

    Using multicast instead of broadcast sounds effective but in reality, your ND traffic is probably still broadcasted since your L2 switches don’t know where to forward the multicast traffic to.

    To improve this, you could enable MLD snooping on the switches. Your hosts will have to report what they want to receive through MLD and then the switch will be able to deliv

    ... Continue reading in our forum

  2. Itai,
    The solicited node multicast address is known because the IPv6 RFC standards have established a “rule” in how to form the solicited node multicast address based on the IPv6 addresses that is needing to be queried. The rule states that solicited node multicast address is: FF02::1:FFXX:XXXX where X is the last 24 bits of the IPv6 target address. This means you take the last “half” of the next to last hextet, and the entire last hextet and append it to FF01::1:FF. See example below.

    The last thing you would need to know is that there is also an IPv6 RFC r

    ... Continue reading in our forum

  3. Hello Rahul

    Whenever you configure an interface to function as an IPv6 interface, it automatically sends out NS messages.
    This will occur even BEFORE any IPv6 addresses have been configured. You can see from your capture and from your CLI that you have posted, that both R1 and R2 have link-local addresses of FE80::C001:8FFF:FEEF:0 and FE80::C001:8FFF:FEF7:0 respectively.

    As for the NA message, those are sent under two conditions: The first is as a response to an NS and the second when there is a change in the link-layer address of a node on a local link. Wh

    ... Continue reading in our forum

  4. @castrojuanj
    Hello Juan,
    I hope you are doing well,
    I have labed your question and took a packet capture to see if I can help you understand NDP better.

    First off a link-local address is configured in two ways.

    1. The administrator specifies the link-local address to be used
    2. The local router uses eui-64 to generate the proper IP address for link-local use

    Now if you have a unique local and global unicast IP address assigned to the same interface and it receives an RS, it will the respond with an address for both unique local and global unicast addresses. So no t

    ... Continue reading in our forum

  5. you state this twice. Once here and once above. The first time you stated it I was not sure as I just thought on it briefly. Not liking the answer but then you state it again here so

    ... Continue reading in our forum

35 more replies! Ask a question or join the discussion by visiting our Community Forum