I am having an issue with an Exchange server sending to craigslist using our internal DNS server. The error message I get is:
2015-11-18T23:58:05.493Z,08D2EE6E9A1AEEB1,SMTP,reply.craigslist.org,+,DnsConnectorDelivery ddf6ac94-838c-4b87-bacd-12c2e712b3f7;QueueLength=TQ=1;RN=1;
2015-11-18T23:59:11.580Z,08D2EE6E9A1AEEB1,SMTP,reply.craigslist.org,>,DNS server returned ErrorRetry reported by 0.0.0.0. [Domain:Result] = reply.craigslist.org:ErrorRetry;
2015-11-18T23:59:11.580Z,08D2EE6E9A1AEEB1,SMTP,reply.craigslist.org,-,Messages: 0 Bytes: 0 (The DNS query for 'DnsConnectorDelivery':'reply.craigslist.org':'ddf6ac94-838c-4b87-bacd-12c2e712b3f7' failed with error : ErrorRetry)
It would appear to be a DNS issue, and I was able to work around it by creating a separate send connector for reply.craigslist.org that uses the external DNS server. Where I am confused, however, is why this error is even being generated because DNS appears to be working. Here is what I tested.
Using our internal DNS server, I did an MX record lookup for reply.craigslist.org and received 14 MX records, all with a weight of 10. The query also then returned 9 A records for 9 of the 14 MX records. I could then query individually the remaining 5 A records and they were also all found individually. This was done using nslookup on the Exchange server using the same internal DNS that Exchange itself is using.
I then monitored the DNS traffic and SMTP traffic from the Exchange server and saw the following. When the email first tried going out, Exchange did a DNS lookup and received the same response I did from the DNS server. It then waited about 20 seconds, and did an A record lookup on one of the other MX records. It then did nothing else. It did not try to send the email.
When I configured the mail server to use 8.8.8.8 and did a network capture, what I saw was that it performed a DNS query for reply.craigslist.org and received a reply with the 14 MX records and the 14 A records. It then queried each MX record individually for both a AAAA and A record and received responses. Then it sent the email.
Does anyone have any ideas why Exchange would react differently based on the two DNS responses it received?