Applying the New IPv6 Documentation Space: A Practical Approach (3FFF::/20)
06/02/2025

By Alejandro Acosta, R&D Coordinator, and Julio Buiza, Registration Services Specialist, at LACNIC
Introduction
On 23 July 2024, the IANA reserved 3FFF::/20 as a new dedicated IPv6 address prefix for documentation purposes, thus adding a new block to the existing documentation block (2001:db8::/32). This request was included in IETF draft https://datatracker.ietf.org/doc/draft-ietf-v6ops-rfc3849-update/05/ as follows:
“The document describes the reservation of an additional IPv6 address prefix for use in documentation. This update to RFC 3849 expands on the existing 2001:db8::/32 address block with the reservation of an additional, larger prefix. The addition of a /20 allows documented examples to more closely reflect a broader range of realistic, current deployment scenarios and more closely aligns with contemporary allocation models for large networks.”
Following this expansion, in this article we will discuss an IPv6 address plan as an example, using address block3FFF::/20.
Importance of an IP Address Plan
What is an IP (v4/v6) address plan?
An IP address plan is defined as the form, actions, and systematic model used for assigning IP addresses on a network [1].
Why you should develop an IP address plan
An IP address plan:
- Helps to keep the network documentation in order,
- Simplifies the implementation of assignment policies,
- Supports the orderly growth of the network (future assignments/scaling),
- Improves network performance efficiency (smaller routing tables),
- Facilitates troubleshooting, and
- Simplifies network management.
What should an IP address plan look like? What aspects should it consider?
- An IP address plan must be scalable (anticipate the potential growth of the network over the next 2, 5, 10, and 15 years).
- It must be flexible. For example, in the future, new services may be added or coverage may be extended to other cities.
- It must be simple and comprehensible, in other words, it must not introduce unnecessary complexity.
- It must follow best practices.
- It must separate the infrastructure from customers (important).
Recommendations to begin your IPv6 address plan
1) The most important piece of advice, and one of the most fundamental, is to manipulate the blocks by nibbles, in other words, considering each character of the IPv6 address.
What would the new 3FFF::/20 prefix look like?
As shown in the image below, because the prefix is a /20, the first five nibbles are fixed and every “X” character can be modified:

Where:
- C1, C2, C3, C4, C5, C6, C7, C8 -> Represent groups of 16 bits
2) Mapping the nibbles to a function
A common practice is to map a nibble or a group of nibbles to “something”, where this “something” might be a function, a country, a service, a type of customer, or something else.
This is illustrated in the following image:
- For ISPs:

Where:
- PPP -> Represents a country
- CCC -> Represents a city
- SS -> Represents a service
- T -> Represents a type of customer
- For End Users (EU):

Where:
- UUU -> Represents a campus/location
- EEE -> Represents a building withing the campus/location
- SS -> Represents a service
- F -> Represents a faculty
Important: Keep in mind that the final 64 bits (C5, C6, C7, and C8) are typically assigned by the autoconfiguration process and/or manually by the administrator.
Practical Example of an IPv6 Address Plan:
Below we have included a couple of examples of an address plan using the new 3FFF::/20 prefix.
Note: These examples are offered as recommendations and show one of many possible approaches to developing an IPv6 address plan within a network.
- IPv6 Address Plan for an ISP
In this scenario, an ISP operating in three countries, each with three cities, has been considered. Using the nomenclature in the previous example, specific values have been assigned and characters have been replaced based on the category they each represent, as shown in the following table:
Characters to be modified | Category | Values | Description |
PPP | Country | 058 | Venezuela |
057 | Colombia | ||
051 | Peru | ||
CCC | Ciudad | 212 | Caracas |
261 | Maracaibo | ||
241 | Valencia | ||
601 | Bogota | ||
604 | Medellin | ||
605 | Cartagena | ||
031 | Lima | ||
032 | Arequipa | ||
033 | Cusco | ||
SS | Service | 10 | HFC Internet |
20 | GPON Internet | ||
30 | Satellite Internet | ||
T | Type of customer | 1 | Company |
2 | Government entity | ||
3 | Residential | ||
4 | NGO |
This is an example of what an IPv6 address plan for an ISP would look like:
IPv6 prefix | Country | Prefix assigned to the country [NET_ID] | City | Subnet assigned to the city [Subnet] | Service | Type of customer | Subnet assigned to the service and type of customer [Division] |
3FFF::/20 | Venezuela | 3FFF:0058::/32 | Caracas | 3FFF:0058:0212::/48 | HFC Internet | Company | 3FFF:0058:0212:0101::/64 |
Government entity | 3FFF:0058:0212:0102::/64 | ||||||
Residential | 3FFF:0058:0212:0103::/64 | ||||||
NGO | 3FFF:0058:0212:0104::/64 | ||||||
GPON Internet | Company | 3FFF:0058:0212:0201::/64 | |||||
Residential | 3FFF:0058:0212:0203::/64 | ||||||
Maracaibo | 3FFF:0058:0261::/48 | GPON Internet | Company | 3FFF:0058:0261:0201::/64 | |||
Government entity | 3FFF:0058:0261:0202::/64 | ||||||
Residential | 3FFF:0058:0261:0203::/64 | ||||||
NGO | 3FFF:0058:0261:0204::/64 | ||||||
Valencia | 3FFF:0058:0241::/48 | GPON Internet | Company | 3FFF:0058:0241:0201::/64 | |||
Government entity | 3FFF:0058:0241:0202::/64 | ||||||
Satellite Internet | Residential | 3FFF:0058:0241:0303::/64 | |||||
NGO | 3FFF:0058:0241:0304::/64 | ||||||
Colombia | 3FFF:0057::/32 | Bogota | 3FFF:0057:0601::/48 | HFC Internet | Company | 3FFF:0057:0601:0101::/64 | |
Government entity | 3FFF:0057:0601:0102::/64 | ||||||
Residential | 3FFF:0057:0601:0103::/64 | ||||||
NGO | 3FFF:0057:0601:0104::/64 | ||||||
Medellin | 3FFF:0057:0604::/48 | GPON Internet | Company | 3FFF:0057:0604:0201::/64 | |||
Government entity | 3FFF:0057:0604:0202::/64 | ||||||
Residential | 3FFF:0057:0604:0203::/64 | ||||||
NGO | 3FFF:0057:0604:0204::/64 | ||||||
Cartagena | 3FFF:0057:0605::/48 | GPON Internet | Company | 3FFF:0057:0605:0201::/64 | |||
Government entity | 3FFF:0057:0605:0202::/64 | ||||||
Satellite Internet | Residential | 3FFF:0057:0605:0303::/64 | |||||
NGO | 3FFF:0057:0605:0304::/64 | ||||||
Peru | 3FFF:0051::/32 | Lima | 3FFF:0051:0031::/48 | GPON Internet | Company | 3FFF:0051:0031:0201::/64 | |
Residential | 3FFF:0051:0031:0203::/64 | ||||||
Satellite Internet | Residential | 3FFF:0051:0031:0303::/64 | |||||
Arequipa | 3FFF:0051:0032::/48 | HFC Internet | Company | 3FFF:0051:0032:0101::/64 | |||
Government entity | 3FFF:0051:0032:0102::/64 | ||||||
Residential | 3FFF:0051:0032:0103::/64 | ||||||
NGO | 3FFF:0051:0032:0104::/64 | ||||||
GPON Internet | Company | 3FFF:0051:0032:0201::/64 | |||||
Government entity | 3FFF:0051:0032:0202::/64 | ||||||
Residential | 3FFF:0051:0032:0203::/64 | ||||||
NGO | 3FFF:0051:0032:0204::/64 | ||||||
Cusco | 3FFF:0051:0033::/48 | GPON Internet | Company | 3FFF:0051:0033:0201::/64 | |||
Residential | 3FFF:0051:0033:0203::/64 | ||||||
Satellite Internet | NGO | 3FFF:0051:0033:0304::/64 | |||||
Reserve blocks | 3FFF:0004::/32 – 3FFF::0FFF::/32 | Reserve IPv6 blocks | /32 | – | – | – |
- IPv6 Address Plan for an End User (EU)
For an End User (EU) scenario, an example will be provided considering a university with three campuses. Values have been assigned and characters have been replaced based on the category they each represent, as shown in the following table.
Characters to be modified | Category | Values | Description |
UUU | Campus/Location | 001 | Main campus |
002 | Secondary campus 1 | ||
003 | Secondary campus 2 | ||
EEE | Building | 111 | Building 1 |
222 | Building 2 | ||
333 | Building 3 | ||
SS | Service | 10 | HFC Internet |
20 | GPON Internet | ||
F | Faculty | 1 | Law |
2 | Medicine | ||
3 | Administration | ||
4 | Engineering |
This is an example of what an IPv6 address plan for an End User would look like:
IPv6 prefix | Campus/Location | Prefix assigned to the campus [NET_ID] | Building | Subnet assigned to the building [Subnet] | Service | Faculty | Subnet assigned to the service and the faculty [Division] |
3FFF::/20 | Main campus | 3FFF:0001::/32 | Building 1 | 3FFF:0001:0111::/48 | HFC Internet | Law | 3FFF:0001:0111:0101::/64 |
Medicine | 3FFF:0001:0111:0102::/64 | ||||||
Administration | 3FFF:0001:0111:0103::/64 | ||||||
Engineering | 3FFF:0001:0111:0104::/64 | ||||||
GPON Internet | Law | 3FFF:0001:0111:0201::/64 | |||||
Administration | 3FFF:0001:0111:0203::/64 | ||||||
Building 2 | 3FFF:0001:0222::/48 | GPON Internet | Law | 3FFF:0001:0222:0201::/64 | |||
Medicine | 3FFF:0001:0222:0202::/64 | ||||||
Administration | 3FFF:0001:0222:0203::/64 | ||||||
Engineering | 3FFF:0001:0222:0204::/64 | ||||||
Building 3 | 3FFF:0001:0333::/48 | GPON Internet | Law | 3FFF:0001:0333:0201::/64 | |||
Medicine | 3FFF:0001:0333:0202::/64 | ||||||
Secondary campus 1 | 3FFF:0002::/32 | Building 1 | 3FFF:0002:0111::/48 | HFC Internet | Law | 3FFF:0002:0111:0101::/64 | |
Medicine | 3FFF:0002:0111:0102::/64 | ||||||
Administration | 3FFF:0002:0111:0103::/64 | ||||||
Engineering | 3FFF:0002:0111:0104::/64 | ||||||
Building 2 | 3FFF:0002:0222::/48 | GPON Internet | Law | 3FFF:0002:0222:0201::/64 | |||
Medicine | 3FFF:0002:0222:0202::/64 | ||||||
Secondary campus 2 | 3FFF:0003::/32 | Building 1 | 3FFF:0003:0111::/48 | GPON Internet | Law | 3FFF:0003:0111:0201::/64 | |
Administration | 3FFF:0003:0111:0203::/64 | ||||||
Building 2 | 3FFF:0003:0222::/48 | GPON Internet | Law | 3FFF:0003:0222:0201::/64 | |||
Administration | 3FFF:0003:0222:0203::/64 | ||||||
Reserve blocks | 3FFF:0004::/32 – 3FFF::0FFF::/32 | Reserve IPv6 blocks | /32 | – | – | – |
Conclusions
An IPv6 address plan should be scalable, easy to understand, and facilitate network management. While there is no single way to create an IPv6 address plan, it is recommended to consider separating addresses by nibbles and assigning a function/task to each nibble character. This will help keep everything in order during the assignment process throughout the operation of the network.
References
[1] https://blog.acostasite.com/2018/06/concepto-que-es-un-plan-de.html?m=1
https://datatracker.ietf.org/doc/rfc9637
[2] LACNIC Podcast: Ampliación del espacio documentación IPv6
The views expressed by the authors of this blog are their own and do not necessarily reflect the views of LACNIC.