The man pages given in the subject both state an IPv6 address "is a
sequence of three to eight hexadecimal octet pairs separated by ':'."
I find that a tad unclear. How is :: handled? Can I put 2001:db8:1::1
or do I need to enter it as 2001:db8:1:0:0:0:0:1? Does the format
support trimming leading zeroes from each octet pair?
What if I wanted to have 2001:db8: or fe80:? Both of those are valid
IPv6 prefixes that should match 2001:db8::/32 and fe80::/16,
respectively, per the search algorithm, but they have less than two
octet pairs.
Are IPv6-mapped IPv4 addresses (e.g., ::ffff:192.0.2.1) supported?