0

I have a clear understanding of broadcast, DHCP and general network configuration for ipv4. I'm looking for a low level technical explanation of network configuration for ipv6.

Some of the terms that confuses me:

I'm not looking for tutorial on how to setup or use an ipv6 network, but for a technical/engineering internal description of this part of the protocol.

Nicolas C
  • 163
  • 2
  • 2
  • 9

1 Answers1

2

Link-local addresses are addresses that can only be used on the local network, and every network uses the same addresses. You might compare them to the 169.254.0.0/16 APIPA addresses in IPv4 with the big difference that in IPv6 every interface always has a link-local address even when it also has other addresses. This makes it a lot easier to implement things like DHCP and routing protocols as every system always has an address that it can use on the local link, independent of everything else.

Stateless address auto-configuration or SLAAC is a mechanism to automatically give all devices on a network a normal routable IPv6 address without needing a DHCP server. Because IPv6 has such a huge address space (every LAN gets a /64) the router on the network can just tell the clients "on this LAN we use this /64, go ahead and give yourself an address". Because the chances of two devices picking the exact same address (there are 264 addresses per LAN) are as good as zero this actually works really well :-) The packages the router sends are called Router Advertisements or RAs.

There is more information that can be provided with an RA. The router can also tell the clients that it is willing to act as a default gateway. It is also possible to tell the client which DNS resolvers to use. And more, but let's keep it simple for now. With the information in an RA a client can configure one or more addresses, it can learn the default gateway and it can learn the DNS resolvers. So it can learn everything needed for basic connectivity to the internet without needing DHCP.

DHCPv6 is like the IPv4 version, but with more options. It can be used in two modes: stateful and stateless. Stateful mode is like IPv4 DHCP where the DHCP server provides addresses to clients and provides other configuration options as well. Stateless mode just provides the configuration options without the address bit. That way you can let clients generate their own addresses but still provide them with the right configuration.

Neighbor Discovery Protocol or NDP basically performs the same function as ARP did for IPv4. The big difference is that ARP is a separate protocol and NDP uses normal IPv6 packets (ICMPv6 to be precise).

IPv6 provides you with a lot of options, which is really nice. But because of all the options it can also get confusing. The explanation I gave here is the most basic stuff. You can do even fancier things like provide multiple /64 prefixes on one LAN, let clients generate their own addresses in one, use DHCPv6 to provide addresses in the other etc. It is usually best to keep it simple though until you have some hands-on experience and know what you want.

Sander Steffann
  • 7,572
  • 18
  • 29