If your organization is looking to get
a block of IPv6 addresses, this address distribution
usually starts with the IANA.
This is the Internet Assign Numbers Authority.
They provide address blocks to the Regional Internet
Registries or the RIRs.
The RIRs then assign smaller blocks of IPv6 addresses
to the internet service providers.
And then the internet service provider is probably going
to provide you, the end user, with an IPv6 address that has
a /48 subnet, and you'll be able to subnet it further from
there.
Visually, this starts with the Internet Assign Numbers
Authority, who will be giving out ranges of IPv6 addresses
to the different regional internet registries.
For example, ARIN, our regional internet registry
here in North America might have been given 2600 as the prefix.
ARIN is going to subnet that further for individual ISPs.
An ISP might be provided 2600 and then
four Cs, 2600 quad D, 2600 quad E.
And the ISPs can now start subnetting
from there for their customers.
For example, ISP number 2 may have different customers,
customer 1, 2, and 3, and they may
provide customer 1 with an IPv6 range of 2600 DDDD 1111.
The next customer for that ISP might get 2600 DDDD 2222.
And the next might get 2600 CCCC 3333.
And of course, they can begin numbering individually
as they go as well.
So our ISP may have provided us as the end user 2A00 DDDD 1111,
and that's a /48.
But we can build a lot of IPv6 addresses from this.
Let's build the first one that we might have.
Here's an IPv6 address that we built using the scheme from
our ISP, 2600 DDDD 1111 0001, all zeros and then we have a 1
at the end.
Let's break out what this address really shows.
The first part of the IP address was
provided by the internet service provider.
We couldn't change anything associated with those first 48
bits of 2600 DDDD 1111.
Those are also considered to be the global routing prefix,
and it's 48 bits long.
Now we have the ability to now start assigning subnets
to this particular network.
So we're going to subnet further,
taking the next 16 bits and allocating
those for network IDs.
Those are going to be locally assigned by us once it's
been given to us by the ISP.
All of the remaining bits in this IPv6 address
are all the host ID.
It's 64 bits long for the host ID.
So if we've got a network that we numbered number 1,
we can obviously build out networks 2, 3, 4, 5, and so on.
And each one of those networks will have 64 bits
that we could use for host values.
Although it doesn't look like much in this IPv6 address,
these 16 bits allow us to subnet out 65,536 separate networks.
That is a lot of IP subnets, and that could probably
handle most people's requirements
for IPv6 networking.
With the 64 bits left for the host ID,
we can fit about 18 million trillion hosts per subnet.
Let's compare that with the entire IPv4 address
range, which is only 32 bits in length
and allows for a total number of IPv4 addresses
that's just over 4 billion.
We can fit drastically more hosts on a single IPv6 subnet
than we could on the entire IPv4 address range.
If we break this out and look at it then,
the first half of the IPv6 address, the first 64 bits,
are effectively the prefix or the network address.
And then the last 64 bits would be dedicated as the host
part of the IPv6 address.
If you were to write out this IPv6 subnet address,
then you'd have 2600 DDDD 1111 a 1, and then all zeros.
You can also abbreviate or compress this IPv6 subnet
address as 2600 DDDD 1111 1 a double colon and then /64
to designate what the subset mask might be for this IPv6
address.
So assigning IPv6 subnet addresses on your network
is very similar to the process of assigning IPv4.
So in our network, we might have four different subnets
that are connected to each other that
need IPv6 network addresses.
And we'll simply apply our 2600 DDDD 1111 1, 2, 3,
and 4 with a /64 subnet mask to provide addressing for our IPv6
networks.