IPv6 Address Allocation In Your Network

Posted by

I’ve written a few different posts on IPv6, including my previous IPv6 Best Practices article.  I want to take a moment and run through the IPv6 allocation process I use when doing a design for a customer.

1) Apply for an IPv6 block from ARIN or other RIR like APNIC.  The groups assign global IP addresses for both IPv4 and IPv6. ARIN at the moment is handing out /32 IPv6 space to service providers.

For the sake of this article lets assume we have been assigned 2001:abcd::/32. Assuming each network, per RFC, will be a /64 this gives us 32-bits to use for network addressing. Each of these /64 networks has 64-bits for host addressing.  With a /32 we will have 2^32 networks or 4,294,967,296 billion possible /64 networks.

2) Now that you have an address space assigned to you, you will want to begin an address design for your network.  Per ARIN, it is recommended to have at  a minimum a /48 for infrastructure use (internal links, server networks, loopbacks, etc.) and a /48 for customer facing networks and customer assignment.

I prefer to summarize on a boundry that is a multiple of 4 so the hex works out.  For each site I assign a /44 or a /40 that is then split into various /48 networks for use at that site.

So the first site would be 2001:abcd::/40, the second site would be 2001:abcd:0100::/40, and the third site would be 2001:abcd:0200::/40.  This gives you 8 bits for site assignments, 2^8 = 256 sites. This allows for future expansion and keeps your global table to a minimum as you will have one summarized route for each site (with exposed loopbacks for MPLS functionality).

3) At each site the /40 will then be further divided for various functionality.  I like to take the first /48 and designate for infrastructure use and then the first /64 out of each of those and dedicate it to loopback addressing of routers and other devices.

For example at site 2:

2001:abcd:0100::/48 will be used for infrastructure.  2001:abcd:0100::/64 will be used for loopback addressing.  If my IPv4 loopback on a router was, I would make my IPv6 loopback on that route be 2001:abcd:0100::10:10:1:6/64.

The remaining addresses in that first /48 would be assigned to server networks, monitoring devices, point-to-point links, and any infrastructure related devices.

The remaining /48 networks would be used for customer facing interfaces, BGP peering with customers, prefix delegation to customers, and any networks that will be used by customers.

4) Deploy the network


If you have any questions on designing an IPv6 addressing scheme, post a comment or send me an email, and I can give you hand.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s