Hello,

AI_ADDRCONFIG was added in order to optimise DNS query traffic, so that only useful addresses are queried for.
In other words, an IPv4-only node should not query its upstream resolver for IN AAAA resource records,
while an IPv6-only node should not query for IN A resource records.

The proper function of AI_ADDRCONFIG requires that:
1. The usual processing of all node-local and link-local names and addresses is preserved as long as the respective addresses are present.
2. The global name resolution is not affected by the existence or non-existence of node-local and link-local addresses.
3. IN AAAA DNS queries should not be transmitted from a node with no global IPv6 address, and vice versa: IN A queries should not to be transmitted from a node with no global IPv4 address.
Unfortunately, the current implementation of getaddrinfo() mostly follows the informational RFC 3493, which fails in both #1, #2, and partially in #3.

https://fedoraproject.org/wiki/QA/Networking/NameResolution/ADDRCONFIG?rd=Networking/NameResolution/ADDRCONFIG

https://pagure.io/SSSD/sssd/issue/1665

I believe sssd as of now doesn't keeps strong hold of pre-conditions of using AI_ADDRCONFIG.


-- 
Thanks
Amit Kumar
!!If you stumble, get back up. 
What happened yesterday, no longer matters.
Today is another day to move closer to your GOAL!!