IPv6 Router Advertisement Preference

This topic is to discuss the following lesson:

https://networklessons.com/ipv6/ipv6-router-advertisement-preference/

i did the configuration with 2 routers and a workstation with win 7, the comand router-preference has no impact at all.
Is there something i missed in Win7 ?

Finally the only way i found is to deactivate the nd protocol to make sure there is only one gateway in win 7.
But i loose the failover for slaac.

Two questions,
- the first RS that the host sent, what are the source/destination IPs/MACs in use in the RS packet ?
- If the gi0/1 interface on R2 was getting shutdown immediately how could the host receive the RA msg from R2 ? Is it part of port shutdown procedures to send out RA ?
- How about a router shutdown? Is RA being generated ?

Hello Ray,

In the RS, the source MAC address is the host’s MAC address, the destination is the “all routers multicast” destination FF02::2.

About the “shutdown procedure”, I just labbed this up to see how it works. Take a look at this wireshark capture:

https://www.cloudshark.org/captures/69fd7a31fe57

The first packet (length 118) is a regular router advertisement. The second packet (length 102) is sent when the interface is shut but also when you reload the router.

The difference between the two is that in the “goodbye” router advertisement, all ICMPv6 options are removed except for the prefix information. Also, the router lifetime is set to 0.

This seems to be specified in the RFC:

A Lifetime of 0 indicates that the router is not a default router and SHOULD NOT appear on the default router list.

I couldn’t find anything in the RFC about withdrawing options as a requirement so that might be specific to Cisco.

Hope this helps!

Rene

1 Like

Good question.
I just keep a doubt, RA is sent periodically like BPDU or OSPF hello interval?
Regards

Hello Carlo

Yes, RAs are sent out periodically every few seconds. However, they are also sent as responses to Router Solicitations (RS) when an IPv6 device requests information during the SLAAC process. More on SLAAC can be found at this lesson:

I hope this has been helpful!

Laz

1 Like

So I see this Lifetime 1800 sec in show ipv6 routers output, I guess that´s like a hold time in OSPF, how often is hello/keepalive timer sent? in IPv6 RA

Hello Carlo

The lifetime is the amount of time that a device will consider the specific router as its default router, unless informed otherwise. By default, this value is set to 1800 seconds, or 30 minutes. The RA advertisement interval, which is how often an RA is sent, is set to 30 seconds by default. Both the lifetime and the advertisement intervals can be modified on a per interface basis using the following commands respectively:

R1(config-if)# ipv6 nd ra interval ?
    RA Interval (sec)
  msec      Interval in milliseconds

and

R1(config-if)# ipv6 nd ra lifetime ?
    RA Lifetime (seconds)

As you can see, the interval can be configured with an accuracy of milliseconds, while the lifetime with an accuracy of seconds.

A lifetime value of 0, if configured, indicates to the client that this specific router is not available as a default router.

It’s interesting to note, that if you shutdown an interface of a router that is functioning as a default router, before it actually shuts down, it will send out an RA with a lifetime of 0, indicating gracefully to all concerned hosts that it is no longer available as a default router.

I hope this has been helpful!

Laz

2 Likes

really good explanation. Thank you

1 Like

Hi Rene and staff,

i lab an ipv6 interesting feature that is ND high availability: with IPV6 ND you can have “some” availability without configuring HSRP or VRRP (i don’t find this feature in the lessons ?)
So, with my lab “high availability” i can test also RA preference


R1 is the client (no ipv6 routing-unicast), it receives RA from R2 and R3
In my lab, i played to have R2 default router, then R3 default router
You can see default router with show ipv6 routers default

But you can see also the default router with show ipv6 route

I guess i am tired learning CCNP/CCIE but i wonder why AD=2 ???
Could you help me ?
Regards

Hello Dominique

I have been unable to find any documented reason for using an AD of 2 in such a case. I’m sure that you also have attempted to search as well. There is no reference to this in the related RFCs, as far as I can find. However, I believe that simply put, any default gateway learned via SLAAC will have an AD of 2.

I labbed this up and got the same results. Think about it this way:

  • A directly connected route has an AD of 0
  • A static route (with exit interface or next hop address) will have an AD of 1.
  • Any default route learned via a routing protocol will have an AD of that routing protocol
  • Any default route (gateway) learned from DHCP will have an AD of 254.

There are a whole series of other default AS values that exist as well, and these can be seen at the following Cisco documentation:


Because the default gateway learned via the NDP processes doesn’t fall into any of these categories, it must have a different AS designation. I am assuming, for lack of found evidence, that this default for IPv6 default route learned via RAs is indeed an AD of 2. Note that the AD is such regardless of whether you are implementing ND in an high availability arrangement or not.

If someone can find some hard evidence of this in RFCs or documentation, that would be great, but as far as I can see at this point, this has not been found.

I hope this has been helpful! Stay healthy and safe!

Laz

how is it possible on the above topology 2 different os iou and c720 adventrprice rtr

  1. not listening to the two rs, but only to one,
  2. not have default rtr
  3. not make ipv6 address related to info from the 2 rtrs, but on link local address?

just not to upload the messages from debugging

Hello Konstantinos

I’m not sure I understand your question fully. However, I will attempt to answer. Regardless of what operating system or firmware is running on the routers involved, IPv6 will still function the same. Even if you have routers from different vendors, how the IPv6 router advertisement preference works is the same because it is standardized.

The autoconfiguration process is used for the host to obtain a default router. This, by default, is the router from which the RA is received first.

The IPv6 address that the host uses comes from the RA of the router that becomes the default router for that host.

Does that make sense? If you have further questions, let us know.

I hope this has been helpful!

Laz