Subject: IPv6 AAAA weirdness

IPv6 AAAA weirdness

From: Joe Kemp <joe_at_close.io>
Date: Tue, 13 Dec 2016 08:41:11 -0500

I'm using c-ares via the python gevent module on AWS. When resolving an
AWS Elastic Load Balancer (ELB) hostname a valid A record is returned
but the AAAA response contains an Authority RR with a SOA record. When
gevent is configured to use the native resolver it gets the valid A
record and continues on ignoring the AAAA response. When gevent is
configured to use ares it treats the AAAA SOA record as invalid and does
additional AAAA queries using the search list. In my particular
configuration this is causing an issue because the search list has 4
domains which is causing every lookup to result in a bunch of unneeded
queries and load on the DNS servers.

I wasn't sure where to start to figure out what is causing this
behavior. It looks like the underlying c-ares library is
misinterpreting the AAAA SOA response but I'm not super familiar with
c-ares or IPv6. I think it should either stop with the valid A response
or query the provided NS for with the initial AAAA query.

Thanks,
-Joe
Received on 2016-12-13