In IPv4, we have had Classful and Classless subnetting. The reason for subnetting was because the IP addresses were dwindling but it was originally allocated by class.
How do we perform IPng subnetting?
What's in here?
-IPv6 Address Assignment
-IPv4 VLSM Sample
-IPv6 Subnetting Sample
IPv6 Address Assignment
The example below shows (even including the part where IANA handed off the IP address assignment task to ICANN) how IPv6 addresses are assigned.This starts with ICANN assigning an IPv6 block to a Regional Internet Registry, ARIN for that matter, the IPv6 block 2310::/12. With ARIN now having an IP block, it can assign ISPs IP addresses.
IPv4 VLSM Sample
VLSM is actually one of my favorite topics. Everything I want to say is actually in the picture. You can actually perform faster IPv4 subnetting with the technique displayed in the picture. I learned it the hard way -dealing with 1s and 0s to doing it using decimal numbers, which is the way to go.
Note: The graphic has a green background because I love the blackboard and chalk combination of the older days. VLSM is a classless subnetting technique whereas when IP subnetting was first devised it was classfulbased. What I mean is that everything was built around following the default prefixes of /8, /16, and /24 and depending on how many subnets were required, subnetting was then performed.
IPv6 Subnetting Sample
How are we to perform subnetting for IPv6? We do this the way we perform classless IPv4 subnetting. Let's make use of the same figure as we have for the VLSM sample I gave only this time we use v6 addresses. Also, let's assume that the network will be using the IPv6 address of 2310:1234:0003::/48.
One other thing to consider is that we shouldn't mind ourselves that much with subnet and broadcast addresses. And note what subnet mask value to assign to assign to the network with the lowest IP allocation.
Referring to the VLSM sample I gave (the green pic) and instead of using IPv4 we use IPv6, subnetting the example gives us the following:
Net # Alloc IP
LAN 3 - 33 - 2310:1234:0003::/58
LAN 4 - 21 2310:1234:0003:40/59
LAN 1 - 14 - 2310:1234:0003:60/60
LAN 2 - 04 - 2310:1234:0003:70/61
SL 01 - 02 - 2310:1234:0003:74/62
SL 02 - 02 - 2310:1234:0003:7c/62
SL 03 - 02 - 2310:1234:0003:80/62
Well, look at these:
Net # Alloc IP
LAN 3 33 2310:1234:0003::/64
LAN 4 21 2310:1234:0003:1/64
LAN 1 14 2310:1234:0003:2/64
LAN 2 04 2310:1234:0003:3/64
SL 01 02 2310:1234:0003:4/64
SL 02 02 2310:1234:0003:5/64
SL 03 02 2310:1234:0003:6/64
So, what's the difference? That's easy to spot. In sample 1, subnet IDs incremented with how many each subnet allocation incremented.
In sample 2, subnets incremented by 1 from 0.
Because when hosts are stateless, they will pickup the configuration for the routers and append their interface IDs in the last 64-bits of the v6 address.