RFC 4147

Proposed Changes to the Format of the IANA IPv6 Registry

πŸ“… published August 2005, from ietf

RFC 4147: Proposed Changes to the Format of the IANA IPv6 Registry πŸŽ€

Okay bestie, this one is a whole glow-up pitch for how the IANA IPv6 registry should look ✨. It's written by G. Huston of APNIC, it's marked Informational 🧚, and it dates from August 2005 🌸. The title block doesn't list anything it obsoletes or updates, so this is a standalone proposal, not a replacement for anything πŸ’….


Status of This Memo πŸ’œ

Real quick disclaimer: this memo gives information to the Internet community. It is NOT a formal Internet standard of any kind πŸ™ˆ. Distribution of this memo is unlimited, so share it with everyone you know πŸ’–.

Copyright (C) The Internet Society (2005).

Abstract ✨

This doc proposes a fresher format for the IANA IPv6 address registries πŸ“. Instead of giving a formal definition, it shows the format by example, using what the registries looked like when this was written πŸ“Έ. The goal is to line the registries up with the IPv6 Address Architecture spec, and to switch to a format that's more useful and widely accepted πŸ‘‘.

1. Introduction ✨

Same energy as the abstract, bestie: this document proposes a revised format for the IANA IPv6 address registries πŸ’…. The new format would match the current IPv6 Address Architecture spec and upgrade to something more useful and widely accepted πŸ¦‹.

Okay, the history tea β˜•: the current IANA IPv6 registries (as of when this was written) are built on an address architecture that's now deprecated πŸ’€. That old system used Top Level Aggregation Identifiers (TLAs) and sub-TLAs. The current IPv6 Address Architecture [RFC3513] swapped that terminology for Global Identifiers instead 🫢.

2. IPv6 Address Registry πŸ¦‹

The proposed format is shown by example, using the registry state that was current when this was written. It's in Figure 1 πŸŽ€. The registry clearly says which entity is holding a reservation on an address block, and it notes the defining RFC for each allocation πŸ’œ.

The format is a title line, the date of the last change, the registry in a table, then notes and references 🌸.

The table has 4 columns πŸ’…. The first column has an IPv6 address prefix written in hex, plus a prefix length. No address blocks in that column overlap, and the whole set of blocks covers the entire IPv6 address space 🌈. The second column shows the block's current disposition, written in notation based on the defining RFC πŸ”₯. The third column points to the RFC that describes that current disposition πŸ“–. The fourth column uses numeric footnote notation to link to extra text about the block πŸ“.

The notes can include a summary of the block's earlier disposition values. That summary is deliberately left out of the table itself ✨. The notes are numbered in order 🧚.

The references use a regular citation format, and they cover documents cited in the table and documents cited in the notes πŸ’–.

   -----------------------------------------------------

   INTERNET PROTOCOL VERSION 6 ADDRESS SPACE

   [last updated 13 January 2005]

     IPv6 Prefix           Allocation              Reference      Note
     -----------           ----------              ---------      ----
     0000::/8              Reserved by IETF        RFC3513        [1]
     0100::/8              Reserved by IETF        RFC3513
     0200::/7              Reserved by IETF        RFC4048        [2]
     0400::/6              Reserved by IETF        RFC3513
     0800::/5              Reserved by IETF        RFC3513
     1000::/4              Reserved by IETF        RFC3513
     2000::/3              Global Unicast          RFC3513        [3]
     4000::/3              Reserved by IETF        RFC3513
     6000::/3              Reserved by IETF        RFC3513
     8000::/3              Reserved by IETF        RFC3513
     A000::/3              Reserved by IETF        RFC3513
     C000::/3              Reserved by IETF        RFC3513
     E000::/4              Reserved by IETF        RFC3513
     F000::/5              Reserved by IETF        RFC3513
     F800::/6              Reserved by IETF        RFC3513
     FA00::/7              Reserved by IETF        RFC3513
     FC00::/7              Reserved by IETF        RFC3513
     FE00::/9              Reserved by IETF        RFC3513
     FE80::/10             Link Local Unicast      RFC3513
     FEC0::/10             Reserved by IETF        RFC3879        [4]
     FF00::/8              Multicast               RFC3513

   Notes:

     [0]  The IPv6 address management function was formally delegated to
          IANA in December 1995 [RFC1881].

     [1]  The "unspecified address", the "loopback address", and the
          IPv6 Addresses with Embedded IPv4 Addresses are assigned out
          of the 0000::/8 address block.

     [2]  0200::/7 was previously defined as an OSI NSAP-mapped prefix
          set [RFC1888].  This definition has been deprecated as of
          December 2004 [RFC4048].

     [3]  The IPv6 Unicast space encompasses the entire IPv6 address
          range with the exception of FF00::/8. [RFC3513] IANA unicast
          address assignments are currently limited to the IPv6 unicast
          address range of 2000::/3.  IANA assignments from this block
          are registered in the IANA registry: iana-ipv6-unicast-
          address-assignments.

     [4]  FEC0::/10 was previously defined as a Site-Local scoped
          address prefix.  This definition has been deprecated as of
          September 2004 [RFC3879].

   References:

     [RFC1881]   The IAB and IESG, "IPv6 Address Allocation Management",
                 RFC 1881, December 1995.

     [RFC1888]   J. Bound et al, "OSI NSAPs and IPv6", RFC 1888, August
                 1996.

     [RFC3513]   R. Hinden and S. Deering, "IP Version 6 Addressing
                 Architecture", RFC 3513, April 2003.

     [RFC3879]   C. Huitema and B. Carpenter, "Deprecating Site Local
                 Addresses", RFC 3879, September 2004.

     [RFC4048]   B. Carpenter, "RFC 1888 Is Obsolete", RFC 4048, April
                 2005.

   -----------------------------------------------------

Figure 1 πŸ“Έ

2.1. Notes on Proposed Format Changes to the Registry πŸ’…

Here's the glow-up list of what's changing in the registry πŸ”₯:

  • The text preamble at the top of the registry is gone πŸ™ˆ. Standard IPv6 prefix notation does the talking now πŸ’–.
  • Binary prefix notation got swapped out for standard IPv6 prefix hexadecimal notation πŸ“. The fraction-of-address-space column is replaced by a reference to the RFC that defines each block's disposition πŸ“–. Footnote references are displayed consistently too ✨.
  • "Unassigned" is now "Reserved by IETF" πŸ‘‘. That phrase is more precise, because it names the body that holds the token to allow a block's status to be reassigned 🧚.
  • The "Formerly Site-Local" entry in the body of the registry is replaced by an explicit reference to deprecation πŸ’€. A similar treatment is proposed for 0200::/8, although the RFC number for that deprecation document hasn't been assigned yet 🌸. The proposal also separates two things: the table shows the registry's current status, and the text footnotes record the transactions that led to that state, including any former states πŸ¦‹.
  • Annotations that point to footnotes now live in their own separate column 🌈.
  • The text commentary on unicast, multicast and anycast addresses is gone πŸ’œ. That's because there's no distinction between anycast and unicast addresses, and multicast addresses are explicitly flagged in the registry 🫢.
  • A note and a matching reference to RFC1881 were added to record that the IPv6 address management function was formally delegated to IANA πŸŽ€.

3. Global Unicast IPv6 Address Registry ✨

okay so this section is the registry format glow-up πŸ’… they show what the new Global Unicast table would look like using the registry state as of when this doc was written (see Figure 2 below). it only lists what's actually been allocated, no future plans or reservations. literally anything not in the table is the IANA unallocated pool, handed out later under whatever allocation policies are current πŸ¦‹

the format is basically: a title line, the date of the last change, the table, then notes and references. ✨

the table has 4 columns:

  • Column 1 is the IPv6 prefix in hex plus its prefix length. no overlapping blocks allowed, and it only covers real IANA allocations. temporary IANA reservations, allocation expansion windows, and other internal IANA states are NOT in here πŸ™ˆ
  • Column 2 says who got the block: either the Regional Internet Registry (RIR) it was assigned to, or what the block is intended for. 🌸
  • Column 3 is the date of the IANA allocation, day of the month included. πŸ“…
  • Column 4 is a numeric footnote pointing to extra text about that block. πŸ”—

the notes can include a summary of old disposition status values for a block, since that history doesn't go in the table itself. notes are numbered in order. πŸ“

references use a normal citation format and cover both the documents in the table and the ones in the notes. πŸ“š


IPV6 GLOBAL UNICAST ADDRESS ASSIGNMENTS

[last updated 13 January 2005]

  Global Unicast Prefix Assignment     Date        Note
  --------------------- ----------     ------      ----
  2001:0000::/23        IANA           01 Jul 99   [1]
  2001:0200::/23        APNIC          01 Jul 99
  2001:0400::/23        ARIN           01 Jul 99
  2001:0600::/23        RIPE NCC       01 Jul 99
  2001:0800::/23        RIPE NCC       01 May 02
  2001:0A00::/23        RIPE NCC       02 Nov 02
  2001:0C00::/23        APNIC          01 May 02   [2]
  2001:0E00::/23        APNIC          01 Jan 03
  2001:1200::/23        LACNIC         01 Nov 02
  2001:1400::/23        RIPE NCC       01 Feb 03
  2001:1600::/23        RIPE NCC       01 Jul 03
  2001:1800::/23        ARIN           01 Apr 03
  2001:1A00::/23        RIPE NCC       01 Jan 04
  2001:1C00::/22        RIPE NCC       01 May 04
  2001:2000::/20        RIPE NCC       01 May 04
  2001:3000::/21        RIPE NCC       01 May 04
  2001:3800::/22        RIPE NCC       01 May 04
  2001:4000::/23        RIPE NCC       11 Jun 04
  2001:4200::/23        ARIN           01 Jun 04
  2001:4400::/23        APNIC          11 Jun 04
  2001:4600::/23        RIPE NCC       17 Aug 04
  2001:4800::/23        ARIN           24 Aug 04
  2001:4A00::/23        RIPE NCC       15 Oct 04
  2001:4C00::/23        RIPE NCC       17 Dec 04
  2001:5000::/20        RIPE NCC       10 Sep 04
  2001:8000::/19        APNIC          30 Nov 04
  2001:A000::/20        APNIC          30 Nov 04
  2002::/16             6to4           01 Feb 01   [3]
  2003:0000::/18        RIPE NCC       12 Jan 05
  3FFE::/16             6BONE          01 Dec 98   [4]

Notes:

  [0]  The assignable Global Unicast Address space is defined
       in [RFC3513] as being the address block defined by the
       prefix 2000::/3.  All address space in this block not
       listed in the table above is reserved by IANA for
       future allocation.

  [1]  The prefix assigned to the IANA, 2001:0000::/23, is for
       assignment for testing, experimental and trial usage by IANA
       [RFC2928].

  [2]  2001:0DB8::/32 has been assigned as a NON-ROUTABLE
       range to be used for documentation purposes [RFC3849].

  [3]  2002::/16 is reserved for use in 6to4 deployments [RFC3056]

  [4]  3FFE::/16 is an experimental allocation to the 6BONE
       [RFC2471].  This prefix will be returned to the unassigned
       address pool on the 6th June 2006 [RFC3701].

Figure 2

Quick translation of the notes 🧚

  • [0] Global Unicast space is defined in [RFC3513] as the block 2000::/3. Anything in that block not in the table is reserved by IANA for future allocation. 🌈
  • [1] 2001:0000::/23 belongs to IANA and is for testing, experimental and trial use by IANA [RFC2928]. πŸ§ͺ
  • [2] 2001:0DB8::/32 is a NON-ROUTABLE range set aside for documentation [RFC3849]. πŸ“–
  • [3] 2002::/16 is reserved for 6to4 deployments [RFC3056]. 🫧
  • [4] 3FFE::/16 was an experimental 6BONE allocation [RFC2471]. it gets returned to the unassigned pool on the 6th June 2006 [RFC3701]. the 6BONE is basically getting phased out, bye bye πŸ‘‹

References (kept exactly as written):

References:

  [RFC2471]   R. Hinden, R. Fink and J. Postel, "IPv6 Testing
              Address Allocation", RFC 2471, December 1998.

  [RFC2928]   R. Hinden, S. Deering, R. Fink and T. Hain,
              "Initial IPv6 Sub-TLA ID Assignments", RFC 2928,
              September 2000.

  [RFC3056]   B. Carpenter and K. Moore, "Connection of IPv6 Domains
              via IPv4 Clouds", RFC 3056, February 2001.

  [RFC3513]   R. Hinden and S. Deering, "Internet Protocol Version 6
              (IPv6) Addressing Architecture", RFC 3513, April 2003.

  [RFC3701]   R. Fink and R. Hinden, "6bone (IPv6 Testing Address
              Allocation) Phaseout", RFC 3701, March 2004.

  [RFC3849]   G. Huston, A. Lord, A and P. Smith, "IPv6 Address
              Prefix Reserved for Documentation", RFC 3849, July
              2004.

3.1. Notes on Proposed Format Changes to the Registry πŸŽ€

here's the tea on what's changing in the registry β˜•

  • the registry name iana-ipv6-tla-assignments should be changed to iana-ipv6-unicast-address-assignments. 🏷️
  • the title no longer mentions "TOP LEVEL AGGREGATION IDENTIFIER". bye, old name πŸ‘‹
  • the TLA and Sub-TLA assignments got merged into one set of prefixes and their assignments. 🫢
  • the text commentary at the top of the registry contents is gone πŸ—‘οΈ
  • binary value notation for the address prefixes is removed πŸ”’
  • extra commentary about assignments, like the planned 6BONE phaseout, now lives in a footnote πŸ“
  • the registry continuation lines that used ellipsis notation are gone πŸŒ€
  • only assigned addresses are listed now. every unassigned entry (the ones marked (future assignment) in the original IANA registry) is removed, and so is the entry marked reserved *). 🧹
  • assignments use prefix size notation for the actual allocation, instead of reporting it in sub-units of /23 prefixes. πŸ“
  • the date of the IANA action now includes the day of the month along with the month and year. πŸ“…

4. IANA Considerations πŸ›οΈ

IANA is advised to adopt these formats for the IPv6 address registry and the IPv6 Global Unicast address registry. bestie, that's the whole ask πŸ’–


5. Security Considerations 🚨

okay this one is SERIOUS so pay attention πŸ™ˆ

the internet's routing system depends on being able to authenticate someone's claim to uniquely control an address block. the ways we check those claims rely on validating that the block is part of an already allocated address block, on there being a trustable reference from the IANA address registry to the RIR, and on a trustable reference from the RIR's registry to a Local Internet Registry or end-user Internet Service Provider. no trust chain, no slay πŸ’€

the proposed format for the IANA registry is a small step toward building a registry that can serve as a trust point for starting a chain of address validation. πŸ” consideration should be given to IANA registry publication formats that are machine parseable, and also to using file signatures and associated certificate mechanisms, so applications can confirm the registry contents are current and that IANA actually published them. 🫑


6. Acknowledgements 🫢

this doc was prepared with help from Kurt Lindqvist, Thomas Narten, Paul Wilson, David Kessens, Bob Hinden and Brian Haberman. Pekka Savola, Brian Carpenter, Christian Huitema and Michael Patton gave helpful review comments. thank you, legends πŸ‘‘


7. References

7.1. Normative References

[RFC3513]             Hinden, R. and S. Deering, "Internet Protocol
                      Version 6 (IPv6) Addressing Architecture",
                      RFC 3513, April 2003.

7.2. Informative References

[iana-ipv6-registry]  IANA, "IANA IPv6 Address Registry",
                      December 2004.

[iana-ipv6-tla]       IANA, "IANA Registry of IPv6 Top Level
                      Aggregation Identifier Assignments",
                      December 2004.

Author's Address πŸ–ŠοΈ

Geoff Huston
Asia Pacific Network Information Centre

EMail: gih@apnic.net
URI:   http://www.apnic.net

Copyright (C) The Internet Society (2005). πŸ“œ

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. πŸ”’

This document and the information in it are provided on an "AS IS" basis. The contributor, the organization they represent or are sponsored by (if any), the Internet Society and the Internet Engineering Task Force all disclaim every warranty, in the exact words of the original:

THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property βš–οΈ

the IETF takes no position on whether any Intellectual Property Rights or other rights claimed to cover the technology in this doc are valid or in scope, or on whether a license for them is available. it also doesn't claim to have independently checked for any such rights. info about rights in RFC documents is in BCP 78 and BCP 79. πŸ“š

copies of IPR disclosures sent to the IETF Secretariat, any assurances of licenses, and the results of attempts to get a general license or permission to use those proprietary rights for implementers or users of this spec can be found from the IETF's online IPR repository at http://www.ietf.org/ipr. πŸ”

the IETF invites anyone to tell it about any copyrights, patents, patent applications or other proprietary rights that might cover technology needed to implement this standard. send that info to the IETF at ietf-ipr@ietf.org. πŸ’Œ


Acknowledgement 🌷

funding for the RFC Editor function is currently provided by the Internet Society. πŸ’œ

πŸ“¦ where this page comes from