RFCs for IP Address Usage in Network Documentation and Examples

RFCs for IP Address Usage in Network Documentation and Examples

Have you ever wondered which IP addresses and ranges you should use in your network topology examples or documentation? (Hopefully, you are not thinking about 1.1.1.1 or 1.2.3.4. )

There are in fact two official RFC documents that provide a standardized set of IP addresses reserved for use specifically in documentation and examples: RFC3849 and RFC5737. RFC3849 outlines the use of the IPv6 address prefix 2001:DB8::/32, while RFC5737 outlines the use of several IPv4 address blocks, including 192.0.2.0/24, 198.51.100.0/24, and 203.0.113.0/24. These addresses are not intended for use in a production network but instead serve as placeholders to ensure accurate and clear documentation.

RFC3849: IPv6 Address Prefix Reserved for Documentation

In short, RFC3849 specifies the IPv6 address prefix 2001:DB8::/32 for use in documentation and example code, not in a production network. For example, a network administrator might use the IPv6 address 2001:DB8::1 in their documentation or example code to represent a specific device or network location. This address would not be used for actual network traffic, but rather as a reference point for documentation purposes.

RFC5737: IPv4 Address Blocks Reserved for Documentation

RFC5737 outlines the use of several IPv4 address blocks for use in documentation and example code. These address blocks are similar to the IPv4 addresses outlined in RFC5735 (which contains more special blocks such as 0.0.0.0/8), but are specifically for use in documentation and examples.

The address blocks outlined in RFC5737 include:

  • 192.0.2.0/24

  • 198.51.100.0/24

  • 203.0.113.0/24

Similarly, these address blocks are not intended for use in a production network, but rather as placeholders for documentation and examples.

Proper Use of Reserved IP Addresses

Using reserved IP addresses for documentation and examples is essential for a number of reasons. First, it ensures that these addresses are not used for general Internet routing, which can help to prevent routing issues and other network problems. Second, it helps to prevent confusion and technical issues that can arise when non-reserved addresses are used in documentation or example code.

In recent years, there have been cases where non-reserved IP addresses have been used in documentation and examples, leading to confusion and technical issues. In response to this, our friend at Cloudflare Tom Strickx, in a recent YouTube video, made a passionate plea for the operators to stop abusing addresses such as 1.1.1.1 and 1.2.3.4 and instead use the ranges specified in RFC5735, RFC5737, and RFC3849 for examples and documentation.

To sum up, utilizing reserved IP addresses in documentation and examples is imperative for the stability and reliability of the Internet. RFC3849 and RFC5737 offer a standardized collection of IP addresses reserved for such purposes, and we network operators and researchers should adhere to these guidelines to ensure the accuracy and clarity of our documentation and examples.