RFC Errata

Errata Search

Source of RFC  
Summary Table Full Records

RFC 2373, "IP Version 6 Addressing Architecture", July 1998

Note: This RFC has been obsoleted by RFC 3513

Source of RFC: ipngwg (int)

Errata ID: 456
Status: Rejected
Type: Editorial

Reported By: Mark Meiss
Date Reported: 2001-07-26
Rejected by: Brian Haberman
Date Rejected: 2012-04-25

It appears that the ABNF grammar for textual representations of IPv6 addresses as detailed in Appendix B of RFC 2373 is not correct in its treatment of IPv6 addresses with a trailing IPv4 address. Specifically, section 2.2.3 of the RFC states that:


It should say:

      IPv6address = dcolon | hexpart

      IPv4address = 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT
      IPv6prefix  = hexpart "/" 1*2DIGIT

      dcolon  = "::" | "::" hexseq [ ":" IPv4address ] | "::" [ IPv4address ]
      hexpart = hexseq | hexseq ":" IPv4address | hexseq dcolon
      hexseq  = hex4 *( ":" hex4)
      hex4    = 1*4HEXDIG


According to the grammar in Appendix B, this is not a valid IPv6
address; there is no provision for a double colon followed by an IPv4
address. However, the grammar does allow for a double colon, followed by
a colon, followed by an IPv4 address. In other words, ":::" is a
valid address according to the grammar and "::" is not.

I blame the discrepancy on the grammar simply because I feel that the
intent of the RFC was clearly to prefer two colons over three colons
before a trailing IPv4 address. This seems to match the behavior of
existing applications.
This RFC has been replaced by RFC 3513

Report New Errata