Stateless autoconfiguration for IPv6

Dear Rene,

Awesome explanation! I miss out this lesson. Thanks!

Davis

Hi Davis

I know it’s a bit of a late response but just to add onto this. On the client you can also add the syntax “default” after the statement “ipv6 address autoconfig”

e.g. “ipv6 address autoconfig default”. This will inject a default route on your client.

please check:-
The big difference between DHCP for IPv6 and DHCPv6 is that we don’t use broadcast traffic anymore”

I think you mean DHCP for IPv4

Hi Nassir,

That’s correct, thanks for letting me know. Just fixed it.

Rene

Hello rené
Do we have to use ipv6 as the “marked in marble” ipv4 addresses or are IPV6 autoconfig addresses “leased addresses” ?

for example, if a new equipement (new ports, with new mac; or maintenance) is added to a router, does he find the same mandatory ip when he restarts ?
then (if the maintenance change all the router) is it a best practice to write in the new router a static address with the same eui/64 form than the old router ? or is it préférable to have new on in this case ?

Hello Hugues

When using SLAAC, the addresses that are configured depend on the operating system being used. Specifically for Cisco IOS devices, the EUI64 process is used by default. This means that the actual IPv6 address that a Cisco device will obtain will depend directly on the MAC address of the device itself. If this device is then removed and another device is put in its place, because MAC addresses are unique, the new IPv6 address it will obtain will be different. If the same device is shutdown and restarted, then the same IPv6 address will be assigned to the device once again.

Well, it really depends on what you want. Typically, for network equipment, it is preferable to use a static address so that remote administration can take place over the same destination IP address.

I hope this has been helpful!

Laz

1 Like

Hello, thanks for the lesson. In this video you show for example how to configure Stateless autoconfiguration. But is this the same as SLAAC(stateless Address Autoconfiguration)?

Best regards Lars

Hello Lars

Yes, Stateless Autoconfiguration for IPv6 is the same thing as SLAAC.

Laz

Hi Guys - two quick questions…

Is ipv6 address autoconfig all we need to configure SLAAC?

Is SLAAC used exclusively for link local addresses?

Thanks,

Gareth.

Hello Gareth

From the client side, yes that command is all that you need. You must also have an IPv6 enabled router connected to the subnet of that interface in order for the autoconfig to function.

SLAAC is used only for global unicast addresses. Link local addresses are generated either using the EUI-64 method, or randomly. (Cisco uses EUI-64 by default, Microsoft Windows, for example, uses a random algorithm for their hosts). Link local IPv6 address generation does not require the presence of an IPv6 router on the subnet as it generates the address completely independently of any other device. SLAAC requires the existence of an IPv6 router on the subnet to function.

I hope this has been helpful!

Laz

Ok - that makes sense - thanks Laz.

So if you enabled SLAAC this process would automatically configure the /64 network bits of all the Global Unicast addresses on your subnet?

Does this mean you would still end up with EUI-64 addresses as the second 64 host bits of the Global Unicast address?

Would this make the admin a little bit more complicated as the host bits wouldn’t follow a set pattern as an ipv4 administered network where you could allocate sequentially numbered hosts?

Hello Gareth

Yes. The network portion of the address is determined by the SLAAC-enabled router on the subnet. In the lesson you can see that R2 sent information to R1 that told it to use the same prefix as its own:

R2# 
ICMPv6-ND: Sending RA to FF02::1 on FastEthernet0/0
ICMPv6-ND:     MTU = 1500
ICMPv6-ND:     prefix = 2001:1234::/64 onlink autoconfig

The method by which the host bits are determined depends once again on the vendor. Typically, this is determined using the EUI-64 method (so you will see that the host bits are the same as those on the link local address on a Cisco device), but some hosts use other methods such as Microsoft, for these bits. More information on the specific method for determining these bits used by Microsoft and others can be found at RFC4941.

As an administrator, how IPv6 allocates the network bits of the hosts in a subnet wouldn’t bother me very much. Because this whole process of SLAAC automates much of the administration process, I would be less concerned about how the allocation is achieved. The benefits here are: configure the local router, configure hosts to use SLAAC and that’s it. No DHCP parameters, scopes, options or anything else.

I hope this has been helpful!

Laz

Thanks Laz - your comprehensive answer is much appreciated! :):smile:

1 Like

I noticed that in this series of commands (see below), Rene does not issue the command enable ipv6 on the interface. Is this because when you assign an IPv6 address to an interface, it is automatically ipv6-enabled?

And when / why would you enable an interface for IPv6 addresses while not enabling the router for IPv6 routing? (which he did in the topic ’ IPv6 Solicited Node Multicast Address’ I think, see below below). Or was this just for teaching purposes?

Hello Marit

The ipv6 unicast-routing command enables the router to route IPv6 packets. This essentially allows a router to create an IPv6 routing table, and to be able to respond to Route Solicitation messages with Router Advertisement messages. This command does not affect the ability of specific interfaces to function as IPv6-addressed hosts. You can have IPv6 enabled interfaces without enabling IPv6 routing. These interfaces would simply function as IPv6 hosts that can send and receive IPv6 packets, but the router will not be able to forward any such packets out of another interface.

When an interface is explicitly configured with an IPv6 address, it automatically becomes IPv6 enabled, and there is no need to issue the ipv6 enable command. Interestingly, if you issue the no ipv6 enable command on an interface with a configured IPv6 address, the command would be ignored.

If you haven’t explicitly configured in IPv6 address, then you can enable an interface to actively become an IPv6 host. This means that it will obtain a link local address, and will be able to exchange Neighbor Discovery Protocol (NDP) messages including neighbor solicitations (NS) and duplicated address detection (DAD) messages, without having obtained a global unicast IPv6 address.

I hope this has been helpful!

Laz

1 Like

As usual a crystal clear answer, thanks Laz!

1 Like

Dear Rene,

Hope you are doing well . Need to confirm the below …

  1. FF02::1 (All nodes address)
  2. FF02::2 (All Routers Address)

Whats the difference/meaning between All node and All Routers.Thx

BR//ZAMAN

Hello Zaman

Imagine you have a network like the following, where all devices have been configured to function in IPv6:


Assume that the switch is a Layer 2 switch. All of these devices will have obtained a link local address on the same subnet, regardless of whether they have global unicast addresses assigned, and what prefixes they have been given. Using their link local addresses, they can all communicate with each other.

If HOST A sends a packet to the All Nodes address, it will reach all devices on the local link. If HOST A sends a packet to the All Routers address, only the routers will have received it.

Remember that both of these addresses are multicast addresses, and all IPv6 enabled devices (including routers) become members of the all nodes multicast address, and all routers become members of the all routers multicast address.

I hope this has been helpful!

Laz

Hi Rene,

What is the role of RS in SLAAC ?You didn’t mention it here .

BR//ZAMAN

Hello Mohammad

IPv6 routers will send out a router advertisement (RA) every 30 seconds by default. Like most parameters, this can be adjusted. This means that any IPv6 device on a network segment will receive an RA at most every 30 seconds. When the RA is received by a host, it is used, as stated in the lesson, for IPv6 autoconfiguration.

In the lesson, the example shows that an RA was indeed sent from R2 to R1, and from this, R1 was able to get its configuration.

The Router Solicitation (RS) is a message sent out by IPv6 hosts to locate routers on the network segment. When a router receives an RS, it responds immediately by generating an RA rather than waiting for the next scheduled time.

Typically, when an IPv6 host is just activated, it will send out an RS immediately to find its local gateway rather than waiting for the scheduled RA. This is likely what has happened in the lesson to trigger the routers RA, but it is not shown.

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

Laz