IPv6 Subnetting

We know that IP version 6 addresses are going to replace IP version 4 addresses because IP version 4 address space is running out of space. Presently we are using CIDR, VLSM, and NAT to save IPv4 address space as much as possible. The CIDR, VLSM as well as NAT are not available in IPv6 addresses. The IPv6 subnetting requires a different approach than IPv4 subnetting.  Because there are too many addresses, therefore the reason for IPv6 subnetting is totally different.

The IP version 4 addresses are 32-bit while the IP version 6 addresses are 128 bit which allows more hosts.  The IP version 6 allow about, 340,282,366,920,938,463,463,374,607,431,768,211,456, or 340 undecillion addresses, almost equal to each particle of sand on the Earth. The addresses are too large for the human being to seize.

IPv4 subnet limits the broadcast domains which increase the efficiency and speed of the network. We also required subnetting for better management of IP addresses. The Variable Length Subnet Mask (VLSM) and Fixed Length Subnet Mask helps to keep IPv4 address space. The IPv6 subnetting is not concerned with keeping address space. The /64 is the smallest recommended subnet prefix in IPv6 addresses.

This means if you have a few devices on your subnet or your network you must use /64 prefix address that has 264 IP addresses. The important thing about IPv6 is that it does not use network ID and broadcast addresses. So, an address where the host bits are all 0s or all 1s is still valid. There are two types of assignable IPv6 addresses:

  1. link-local
  2. Global Unicast Addresses

Each IP version 6 enabled device can create a unique link-local address based on the MAC address of that device Using EUI process.

The IPv6 Global Unicast Addresses

The IP version 6 global unicast address generally consists of a /48 global routing prefix, a 16-bit subnet ID, and a 64-bit interface ID. We already discussed the IPv6 Global Unicast addresses. You can see that the subnet ID is 16 bit which is more than enough subnets. IPv6 subnetting is about building an addressing hierarchy based on the number of sub-networks needed.

IPv6 Subnetting 2

IPv6 Subnetting Using Subnet ID

The 16-bit subnet ID of IPv6 global unicast address is used to create more subnets. The subnet ID provides enough subnets and hosts support for any organization.  The 16-bit section can create 65536/64 subnets without borrowing any bit from the interface ID section of the address. Each subnet support 18,000,000,000,000,000,000 host IPv6 address for each subnet. IPv6 subnetting are easier than IPv4 addresses because there is no binary conversion in IPv6 subnetting. It has just required counting in hexadecimal.

Example of Subnetting IPv6 Addresses

Suppose there is IP version 6 address 2001:1D11:220A::/48 has assigned to an organization with 16-bit subnet ID. The network administrators can subnet the IP version 6 address just counting /16-bit subnet ID in hexadecimal. This would allow the administrator to create 65,536 /64 subnet. The table below illustrates the subnetting procedure of IPv6 address.

IPv6 Subnet Allocation

An IP version 6 network needed subnet for each LAN as well as for the WAN link. We cannot subnet the IP version 6 WAN link network further like IP version 4 addresses. Even if this may “waste” more addresses, that is not a concern when using IP version 6.

IPv6 Subnetting

As shown in the figure above, there are 6 subnetworks which allotted six subnets, with the subnet IDs 0000 through 0004 are assigned to LANs and for a subnet with ID 0005 assigned to WAN links. Every /64 subnet will give more addresses than the requirement of these Local Area Networks (LANs) including Wide Area Network (WAN). As shown in the Figure, each Local Area Network (LAN) segment and the Wide Area Network (WAN) link assigned a /64 subnet.