We've just published a free online IPv6 subnet calculator for your use and enjoyment. For the uninitiated, a subnet is a subdivision or allocation of a larger address block. Subnetting is necessary to enable an organization to carve up the address block received from its ISP into subdivisions across the organization in order to provide IP address capacity to end devices requiring IP network access. In many enterprises, the subnetting process involves tiers or layers to better map to the organization's routing structure, security policies, applications' routing requirements, or other reasons. Thus in the simplest case, an organization choosing to use the private 10.0.0.0/8 space, they may choose to allocate bits 9-16 to the top layer of its address hierarchy. This would yield 256 subnets, starting from 10.0.0.0/16, 10.1.0.0/16, 10.2.0.0/16, on up to 10.255.0.0/16. Each /16 could in turn be further subdivided using bits 17-24 to create 256 subnets for each of the 256 /16 blocks. For example, within the 10.25.0.0/16 block, the first such subnet is 10.25.0.0/24 and the last is 10.25.255.0/24.
In this trivial example, subnetting was quite easy because our subnet sizes coincided with our notation boundaries; that is the size of each subnet was 8 bits corresponding to the dot-separated decimal numbers. If you've worked with subnetting IPv4 blocks, you've probably encountered the more challenging task of subnetting on non-octet boundaries. Converting the 32-bit IPv4 block to binary, counting out to the subnet bit length, then back to dotted decimal is the sure-fire way to perform this function.
IPv6 introduces a much longer binary string with 128 bits, though the IPv6 addressing architecture specifications stipulate minimum subnet sizes of /64 (64 bits) in most cases. This leaves 64 bits to work with, which is twice as many as an entire IPv4 address in bit length. The other wrinkle of course is that IPv6 addresses are expressed in hexadecimal, which makes the conversion to binary and back more challenging or at least less familiar. To help you get your head around this process, we've published our IPv6 subnet calculator. It's even mobile-compatible so you can bring it up wherever you are.
Just enter your IPv6 block address (the default shown is the IPv6 documentation address), define the prefix length, then select the subnet size corresponding to the CIDR length of each subnet. Click the Calculate button and you'll see the resulting subnets displayed. Depending on the subnet size with respect to the prefix length, the results may span several pages. You can also select the page size to fit the device on which you happen to be using the calculator. Feel free to post a comment or send me an email with any feedback or comments!