With IPv6, we've taken a number of techniques we've used with IPv4, and we've updated them for the modern network. Of course, there's DHCP for IPv6. Those DHCP servers use a very similar process to what we saw with IPv4 to assign IP addresses with IPv6.
This uses redundant DHCP servers, so it's ready for the enterprise, and you as the DHCP administrator we'll be managing this DHCP version 6 server as well. But unlike IP version 4, IP version 6 can assign an IP address to itself and be able to communicate with anyone on the network. We refer to this as stateless addressing.
There's no DHCP server that manages the process. You don't have to keep track of IP addresses or MAC addresses. And with this stateless addressing, there's no lease time, so you never have to worry about giving up your IP address.
An important protocol that's used for IPv6 stateless addressing and other purposes is the NDP protocol. This stands for Neighbor Discovery Protocol. In IP version 4, we use the Address Resolution Protocol, or ARP, to be able to find other devices on the network.
But ARP requires broadcasts to be able to operate. With NDP, we're using multicasts so the overall communication is much more efficient. The way that an IPv6 device is able to effectively assign itself an IPv6 address is using stateless address auto-configuration, or Slack.
You don't need a DHCP server. The device running IPv6 creates its own IP address to use. One of the concerns we obviously have is that if a device is creating its own IP address, it could potentially conflict with an existing IP address on the network.
But in IPv6, we have duplicate address detection, or DAD, and it checks to be sure that there are no duplicate IP addresses on the network. Neighbor Discovery Protocol can do more than simply find other devices on your network. It can also identify routers using the router solicitation and router advertisement features.
If a device wants to find a router that's on its local subnet, it uses this Neighbor Discovery Protocol and uses the router solicitation feature. and sends that to a multicast that says, if there's any router out there, please respond back. And if a router sees that multicast, it will send a router advertisement directly back to that workstation.
Routers can also send their own advertisements out without being queried. We refer to those as unsolicited RA messages. They're sent to a slightly different multicast location, and they are sent to all of the devices on the network that might be interested in knowing where routers exist.
This router advertisement is useful because it can provide information about the local subnet. Things such as prefix values, prefix lengths, DNS server configuration, and other IPv6 configuration parameters. So here's how Slack or the stateless address auto-configuration works with IPv6.
The first thing your device does is determine what local subnet am I on, and it does that by using the neighbor discovery protocol and asking a router through the router solicitation feature, what subnet is this? The router will respond back with a router advertisement containing that information. For example, we can query the router using this neighbor discovery protocol, and we'll receive back this 64-bit IPv6 subnet prefix. You can see an example of that is listed here. But of course, that's only half of the IPv6 address.
We also need what's known as the last 64 bits, or the interface ID. Many devices will take a modified version of their MAC address, put the letters FFFE in the middle to create 64 bits that it can then use as the last part of the address. Other devices will simply randomize this value to create those last 64 bits. And just to make sure that this random value or the value associated with the MAC address doesn't somehow already match an IPv6 address on the network, the Neighbor Discovery Protocol is used again.
It uses a feature called duplicate address detection, or DAD, and checks the rest of the network to be sure that no one else is using that specific IPv6 address. Now that the stateless address auto-configuration process is complete, your device now has a completely routable IPv6 address that is unique to that particular station.