How can one distinguish the host and the port in an IPv6 URL?

The notation in that case is to encode the IPv6 IP number in square brackets:

http://[2001:db8:1f70::999:de8:7648:6e8]:100/

That’s RFC 3986, section 3.2.2: Host

A host identified by an Internet Protocol literal address, version 6
[RFC3513] or later, is distinguished by enclosing the IP literal
within square brackets (“[” and “]”). This is the only place where
square bracket characters are allowed in the URI syntax. In
anticipation of future, as-yet-undefined IP literal address formats,
an implementation may use an optional version flag to indicate such a
format explicitly rather than rely on heuristic determination.

Leave a Comment