IPv6 uses a prefix length to identify network bits, functioning similarly to CIDR notation in IPv4. It divides an address into three components — the global routing prefix, subnet identifier, and interface ID — with /64 being the standard boundary for host assignment.
IPv6 Prefix Length
With IP version 4 addresses we identify the network bits using either a subnet mask or CIDR notation. So what we have to do is do the same thing with IP version 6, but we use what's called a prefix length. It operates very similarly to the CIDR notation. So let's get into the prefix length and how it identifies significant bits.
The RFCs that define IP version 6 break up an IP version 6 address into smaller components. For the purpose of this course let's talk about three of those components.
First of all we have the global routing prefix. The global routing prefix is the first 48 bits, and this is usually what's given to the ISP, or really what the ISP gives to you. Then we have this second section right here, which is the subnet identifier, so this identifies the subnet. And then the last portion of this is the interface ID, so this defines the actual interface, or the actual node, that's on your network.
So these are the host portions. If we're talking IP version 4 language, this is the host portion, and this is what we have to subnet, and then this is what's given to us from the ISP.
A prefix length does identify the network bits. If you were to assign an IP address to a machine, so let's say we assign this IP address to the machine, then it is given a /64, meaning that the first 64 bits are the network portion of this. We can just identify the network side then, just by dropping off the interface ID here, and we end up with this. Or we could even condense this down by just removing this colon 000000, and that is the network address for this. It's /64 because the first 64 bits identifies the network portion of this.
But there are also other cases that we use the prefix length, similar actually to IP version 6 in the CIDR notation, to identify sections of this address. For instance, let's say you were to be assigned a /48 address from the ISP. Then this portion right here is what you're given, the first 48 bits is defined by the internet service provider, and that's what you have to work with. And then you have everything at the end here, from a /48 to a /64, that you have to actually work with for subnetting purposes to identify different subnets.
So essentially this is the subnet. This is how we do the subnetting, using this hextet right here. So just realize that when we say /48 here, your network is still going to end up being a /64; we're just identifying which bits are significant with this prefix.
So let's take a little more granular look at this. We're going to take a look at prefixes from a binary standpoint. When I look at the binary numbers, the ones and zeros that this is made up of, this first row right here is representing the address that we saw in our last slide, so I just broke it down into the nibbles. So these are the same numbers. The second row is the same numbers except these are just written out into its nibbles, broken down in its nibbles, and then those nibbles are converted to that hexadecimal number which we're used to seeing now with IP version 4 addresses.
So prefixes do identify the network bits, and in this case it'd be just the /64. I don't have the last 64 bits showing here just because I didn't have enough space, but imagine here that it continues on, there's another 64 bits on here, and those 64 bits identify the interface. So that is going to be the network portion of this.
But often your internet service provider assigns you these bits right here and you don't have much option with it, so they're going to say that it's a /48. The /48 identifies these as being significant bits, even though your networks are going to end up being a /64. That just means that each one of these bits can represent a different network. So we have 16 bits there, and with 16 bits there we have 65,536 options, which means that we can break this down into 65,536 different subnets. So we've got a lot of mobility and a lot of ways that we can arrange this.
But realize we're not always going to see a /48. In fact, we're going to identify some ranges here. We may see something like a /3, which means that we draw the line right here, so that's where we're going to draw the line; it just means those are the significant bits to identify the range. Or maybe we see a /10, that means here's four, here's another four, so that's eight, and there's 10, so we're going to draw the line right here, and so then those are the significant bits of that range right here. Or maybe we see a /16, because that's the first 16 bits, or maybe we see a /32 or /48.
Or commonly, usually we break things down into nibbles, so maybe you're breaking down your network into these portions right here and you're going to see a /52, a /56, a /60 and a /64. So really this is just to identify portions of the network and be able to divvy this up, or hand this out to different sections of the network. But your end goal of all of your networks are pretty much going to be a /64 when it comes to assigning IP addresses within your network.
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 →