URLs always have this format:
The problem is that IPv6 uses colons, just like the separator of port and host, e.g:
But what if this is the host, and I want to connect to it with HTTP on port 100?
The problem is the last colon. Since zero's are omitted with double colons (between 1f70 and 999), it's unknown if ':100' belongs to the IP or the port number. How can we know this?