Add square brackets to ipv6 addresses, otherwise net.Dial() and net.SplitHostPort() will return too many colons error.