问题:
用户反馈邮件不能投递到某个别域。这是最诡异的,投往其他域都很正常!
现象:
客户端收到的退信邮件:
向以下收件人或组传递邮件失败:
qam (qam@err.com)
服务器已尝试传递此邮件但没有成功,它已停止尝试。请再次尝试发送此邮件。如果问题仍然存在,请与支持人员联系。
供管理员使用的诊断信息:
生成服务器: EDG-01.domain.CN
qam@err.com
#550 4.4.7 QUEUE.Expired; message expired ##
原始邮件标题:
……
检查edge服务器的连接日志
C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\Connectivity
2013-12-24T02:53:13.792Z,08D0C3BB2DA1ED0D,SMTP,nttms.com,>,DNS server returned ErrorRetry reported by 10.251.189.51
排查:
在edge上Nslookup 此域名err.com很正常
google,无果,什么刷新本地和DNS服务器的缓存,都木用。。。
在edge上抓包
发现,AAAA ??IPV6 ?发现SMTP连接的时候居然只去解析AAAA记录。。
因此可以考虑直接在edge上添加此域名的A记录来解决。
测试添加对方服务器的A记录后,可以正常投递出去。
尝试查找根本原因
再次搜索 exchange 2010 dns query failed AAAA,找到一篇KB:
http://support.microsoft.com/kb/972744/en-us
kb谈到了这个原因:
个人感觉很无语!并没有说明白为什么仅对个别域名会出现这个问题。
kb中也提到2个解决这个问题的解决方案:
1个是对这个单独的域使用智能主机来投递:(思路应该是直接绕过了dns问题,邮件直达此域名下的SMTP接收服务器)
2个是为往外投递的发送连接器设置使用单独的外部dns:(思路是应该是规避原来可能有问题的dns服务器,直接用外部dns服务器来解析,比较牵强不是么?----问题的根源最可能还是exchange本身的投递机制,好端端的,找什么AAAA,找不到AAAA,怎么就不着A了呢?)