

IPv6 and IPv4 name resolution with Go - zdw
http://garrett.damore.org/2015/02/ipv6-and-ipv4-name-resolution-with-go.html

======
p1mrx
My hypothesis is that the Go socket library was imported from an alternate
timeline where getaddrinfo() never existed. Most functions assume that one
hostname means one IP address, which is fundamentally incompatible with the
modern Internet.

Currently, the best solution is to use net.LookupHost(), which calls
getaddrinfo() without reordering. Then pretend you're writing in C, where
Dial(), Listen(), and Resolve*() only accept IP addresses, not hostnames.

