IPv6 and draft-petersson-forwarded-for

Andreas, Martin,

The relevant ABNF to construct an IPv6 address is:

       node = nodename [":" node-port]
       node-port = port | obfport
       nodename = IPv4address | IPv6address |
                   "unknown" | "hidden" | obfnode
       IPv6address = addr6 | "[" addr6 "]"

which could result in something like 2001:db8::5555, which has an ambiguous
meaning -- it could be "2001:db8 port 5555", or simply the IPv6 address
"2001:db8::5555" (without the node-port).

The simplest fix is to require the "[]" characters around an IPv6 address,
similar to how HTTP is constructed (RFC3986), like this:
       IPv6address = "[" addr6 "]"

-d

Received on Tuesday, 26 April 2011 05:15:26 UTC