IPv6 is the next-generation internet addressing protocol, offering a vastly expanded address space of 2^128 compared to IPv4's 2^32, along with improved efficiency and built-in security capabilities.
IPv6 Overview
We're going to be talking about IP version 6 and giving a broad overview of some of its components.
There are actually a lot of reasons why IP version 6 really helps out with equipping us for the next stage in our network communication. There are a lot of efficiencies and security that come involved with this. But the really big thing is that it just gives us a lot more scope, a lot more addresses to work with. When we created IP version 4, there was just no idea that it was going to be as big as it is, and so we need a much bigger address space now.
To give you an idea how much bigger it is, IP version 4 uses 2 to the 32nd power. There are 32 bits, so 2 times 2 times 2, 32 times, which is pretty big. When it was created, it was thought, well, this is going to last us a long time, and truthfully, it did last us a long time. But now, with the explosion of the amount of end devices that need IP addressing, we need a new system. Where the new system comes into play is IP version 6, and it is 2 to the 128th power. So it is an incredible number, a much larger scope, a much larger space to work with. That is the biggest reason why IP version 6 is needed and why we implemented it.
What does an IP version 6 address look like? Well, it is very large. This is an example of an IP version 6 address, and we'll go more in depth into all of the components of this in a future video. Just from a highlight standpoint, each one of these is called a hextet; it actually goes by several different names, but generally speaking, we call this a hextet. Each one of these is a hexadecimal number. This two right here is actually four bits, and this zero is another four bits, and this zero is another four bits, and this one is four bits. So each hextet is 16 bits long, and you can see that 16 times 8 is 128. So we've got a lot more bits to work with versus IP version 4, which is just 32 bits.
Generally speaking, and this can vary and change, the last four hextets are the host side, or what we call the interface side; it defines an interface. The first four here is the network portion. So we have a prefix that will define where that line is. In this case, the prefix is 64, so it defines that this is the 64 bits on the network side, and then on this side we have the host side.
Just a note: those IP version 6 addresses don't need to look that crazy. It could be as simple as this. Once again, in a future video we'll talk about how we can concatenate or shrink the address, but this would be an example of just a really short address. This happens to be a multicast address, but this is a short address that does exist.
So what are the different address types? A few of the big categories: one is unicast. The unicast, remember, is one device sending data to another device, a specific device on the network. It could be a remote network or something locally. So a unicast address is one to one.
Then we have a multicast address. The multicast address, similar to IP version 4, well, it's pretty much exactly the same thing, is a device to many different devices. When this can send out a multicast address, it could potentially go to multiple devices on the network, either the local network or possibly even outside in a remote network. So a multicast address would be one to many devices.
Then we have anycast. Anycast is similar to multicast, except it's going to go to the first available device. Where with a multicast it could be sent out to many different devices at the same time, with anycast there are many devices that can help or facilitate or respond to this device, but it is only going to go to one of those devices. Perhaps there are multiple servers or multiple routers on this network, and it could respond to this machine, where a multicast may go out and hit every single one of those routers, but with anycast the switch is only going to forward this on to one of those devices, and it's going to be the first device from a path standpoint, the closest device. So it is still a one to one, but it has multiple options to choose from.
Notice that there is no broadcast. Within IP version 6, broadcast has pretty much gone away. There is no broadcast address that gets sent out to all devices. However, there is a multicast address that can look much like a broadcast, meaning that most devices are going to subscribe to that multicast address, so you can send out to a lot of different devices, but it's still considered a multicast; it isn't a broadcast.
Let's get a little further into some different unicast addresses that we have. First of all, we have a link-local address. A link-local address is similar to, in IP version 4, if we have an APIPA address. That's the address that automatically gets assigned to your devices when there's no DHCP server. You start up a Windows machine, it doesn't find a DHCP server, so it will automatically assign a 169.254 address to it, and that is the APIPA, the link-local address. This is similar to that; it's an IP version 6 link-local address, but in IP version 6 they're much more important. They play a very critical role with IP version 6 addressing.
Then we have the global unicast address. A global unicast address is just a public IP address. In IP version 4, we just call them public addresses; they're routable on the internet. That is what a global unicast address is, or GUA, and we are going to get more in depth into those as well.
Then we've got the unique local. Let me give an example. This link-local address can only go into this local area network; it will not go beyond this router, whereas a global unicast address can go out to the internet and to the outside world. So let's say this is all some privately owned network. The unique local cannot be sent out to the internet; it's not routable back to this network at all, but it can be routed within this private network. So that is a unique local address. You can think of it similar to the private addressing that's in the IP version 4 space, the 10.0.0.0 network, or the 172.16 networks, or the 192.168 networks. So it is the private addressing that happens. The difference, though, is that it was never developed to be translated to the outside world. It only stays within your local network, meaning your privately owned network, and is not meant to be routed out to the internet.
So how do your machines get all of these addresses? The link-local address has a couple of different methods of actually creating it. One is we could randomly assign it; Windows machines randomly assign it. Another option is that, like Cisco equipment by default, it will use the EUI-64 to assign addresses to that link-local address. So there are a couple of ways the link-local address can get generated.
The other one I want to mention is the global unicast address. The global unicast address can be assigned several different ways. One is we could statically assign it, so we could statically assign an address to a machine, and then that will be the address it uses. The other way, we talked a little bit about DHCP. DHCP is an IP version 4 protocol, and it's used to assign addresses to a machine so it can get out to the internet. Well, there is a DHCP version 6, and DHCP version 6 is the equivalent to DHCP for IP version 4. Another method is using SLAAC, and we are going to get more in depth into what SLAAC is. It's the recommended way now to assign IP addresses to machines, and a lot of this course is going to build up to that point where we can discuss what SLAAC is, so we understand what it does and how it operates. Sometimes we actually couple these two and we use SLAAC, but then it also references some DHCP options, so we can use those in combination with each other as well.
Your machine needs a global unicast address for it to be able to get out onto the internet and have information returned to it. So it needs an address that's capable of doing that; that's why it's called a global unicast address. The answer to that in the past with IP version 4 was a DHCP server. I've already mentioned how SLAAC can do that, but that's actually a little misleading. SLAAC doesn't assign IP addresses to the machine. In fact, SLAAC, this protocol, allows a machine to assign an IP address to itself. It's very interesting how that works: it assigns a globally, globally in the world, unique address to itself.
How it does that is it has these interface bits. The last 64 bits of this address is the interface bits. Your machine already, with the link-local, has a mechanism to generate something that's going to be unique on the local network. So this gets generated somehow, either randomly or through the EUI-64, and it's unique to the network; no other machine on the network has that address. All it needs then to function is to know what network it's on, and then it's got a globally unique address. So what will happen is, through neighbor discovery protocol, it will send out some messages and do what's called a router solicitation and ask the router, hey, what network are we on? That router will reply, and it will give it this information. Then it will take this information, tag it onto the information that it's already generated, and now it is a global unicast address. It's unique to the world.
So that is how SLAAC works. We're going to get much more in depth into how it functions, but generally speaking, that's how SLAAC works, and the machine is able to generate an IP address that's specific to that machine, that's unique and doesn't overlap with any other machine out there in the world.
The reason SLAAC is able to do that is through this neighbor discovery protocol. Neighbor discovery protocol is something that interfaces with IP version 6 capabilities to do some configuration and create that global unicast address, and it can also do some other discoveries on the network. It's a replacement for ARP. IP version 6 does not have ARP, and so we somehow still need to find out the MAC addresses; neighbor discovery protocol does that as well. As we go through the next series of videos, we're going to start building upon these concepts and learn how the link-local address plays into the neighbor discovery protocol, which plays into doing the router solicitation and getting a router advertisement back, and that plays into SLAAC and how SLAAC operates. So we'll continually go through this and build upon this information.
We talked about IP addressing history, giving a brief overview of how we kept creating a new standard and then ran out of space and created another standard and ran out of space, and that led into finally saying, well, we've exhausted IP version 4, it is time to create a new standard, and that's where IP version 6 comes to the rescue, because it gives us just a huge address space to work with. We also talked about some formatting with the IP version 6 address and how it's formatted. We talked about some different address types with IP version 6. We talked about address assignments and how assignments happen with those different address types. And then we wrapped it up talking about neighbor discovery protocol.
TechKnowSurge builds IT and cybersecurity professionals through hands-on, concept-first training built around real understanding — not memorization. Free interactive tools, structured programs, and 25+ years of real-world experience, all in one place.
Explore free tools and programs →