Subnetting IPv6 Addresses

As I say in my earlier IPv6 lessons that IPv6 addresses are going to replace IPv4 addresses?  The reason is that IPv4 address space is running out. So, the 32-bit IPv4 addresses are not enough to link every device which wants connectivity to the Internet. The IPv6 is 128 bit address which allows 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. Basically, the addresses are too large for the human being to seize. Presently CIDR, VLSM, and NAT have used to save IPv4 address space as much as possible. These tools are not available in IPv6 addresses. The subnetting IPv6 addresses require a different approach than IPv4 subnetting. The main reason is that with IPv6 there are so many addresses, so the reason for subnetting is totally different.

IPv4 subnetting limiting the broadcast domains and it is also required for managing IP addresses shortage. The VLSM and subnet mask helps to keep IPv4 addresses. The subnetting IPv6 addresses are not concerned with keeping address space. The /64 is the smallest recommended subnet in IPv6. This means that even if you have a few devices on your subnet you must use /64 that has 264 IP addresses. The important thing that IPv6 does not use network and broadcast addresses. 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 IPv6 enabled device can create a unique link-local address based on the MAC address of that device. The method of link-local address already describes in the previous article. The method changes the MAC address to 64-bits from 48-bits.

The IPv6 Global Unicast Addresses

The IPv6 global unicast address normally consists of a /48 global routing prefix, a 16-bit subnet ID, and a 64-bit interface ID. The figure illustrates the global unicast address.

The subnet ID includes more than enough subnets. IPv6 subnetting is about building an addressing hierarchy based on the number of sub-networks needed.

Subnetting IPv6 addresses Using Subnet ID

The 16-bit subnet ID section of IPv6 global unicast address can be used to create internal 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 or 18 quintillion host IPv6 address per subnet. Subnetting of IPv6 addresses easier than IPv4 because there is no binary conversion in IPv6 subnetting. It has just required counting in hexadecimal.

Example of Subnetting IPv6 Addresses

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

IPv6 Subnet Allocation

Any IPv6 based network required to subnet for each LAN as well as for the WAN link. Unlike IPv4, the IPv6 WAN link subnet will not be subnetted further. Although this may “waste” addresses, that is not a concern when using IPv6.

subnetting ipv6 addresses

As shown in Figure 1, there are 5 subnetworks which allotted first five subnet, with the subnet IDs 0000 through 0004 and for four WAN links which allotted subnet from IDs 0005 through to 0008. for this example. Each /64 subnet will give more addresses than ever needed. As shown in the Figure, each LAN segment and the WAN link assigned a /64 subnet.  Similar to configuring IPv4, the Figure 2 displays that every router interfaces have configured on a different IPv6 subnet.