Any case where the three colons occur happens because someone just takes the IP address, prints a colon after it and the port, rather than just using existing libraries that do this right.
It is ambiguous. See this which could be either an address or address + port. 2001:db8:1::2:443
That is a valid address…expanded it would be 2001:db8:1:0:0:0:2:443
…but oh no, the intent was for it to be 2001:db8:1:0:0:0:0:2 with port 443…but you’d never know
Can it actually be ambiguous though? If not, we should adopt this standard instead. It’s so annoying adding the square bracket
The square bracket is the standard, eg. as the IP-literal from RFC3986 <https://datatracker.ietf.org/doc/html/rfc3986#section-3.2.2>.
Any case where the three colons occur happens because someone just takes the IP address, prints a colon after it and the port, rather than just using existing libraries that do this right.
Sure but is it actually ambiguous is what I wonder
It is ambiguous. See this which could be either an address or address + port. 2001:db8:1::2:443
That is a valid address…expanded it would be 2001:db8:1:0:0:0:2:443 …but oh no, the intent was for it to be 2001:db8:1:0:0:0:0:2 with port 443…but you’d never know
Yes good example. So it’s down to a game of “do I know all my ports.” 443, 22, 80, 5900, 8080, etc