pub fn probe() -> ProbeExpand description
Probes IPv4, IPv6 and IPv4-mapped IPv6 communication
capabilities which are controlled by the IPV6_V6ONLY socket option
and kernel configuration.
Should we try to use the IPv4 socket interface if we’re only dealing with IPv4 sockets? As long as the host system understands IPv4-mapped IPv6, it’s okay to pass IPv4-mapped IPv6 addrs to the IPv6 interface. That simplifies our code and is most general. Unfortunately, we need to run on kernels built without IPv6 support too. So probe the kernel to figure it out.