This trait is an extension trait for TcpStack and UdpStack for dns
resolutions. It does not handle every DNS record type, but is meant as an
embedded alternative to ToSocketAddrs, and is as such meant to resolve
an ip address from a hostname, or a hostname from an ip address. This means
that it only deals in host address records A (IPv4) and AAAA (IPv6).
This trait is implemented by TCP/IP stacks. The trait allows the underlying driver to
construct multiple connections that implement the I/O traits from embedded-io-async.
This trait is implemented by UDP/IP stacks. The trait allows the underlying driver to
construct multiple connections that implement the I/O traits from embedded-io-async.