Google DNS 服务器未正确更新 MX 记录

Google DNS 服务器未正确更新 MX 记录

我们目前正在丢失一些电子邮件,我们发现这是由错误的 DNS 设置引起的。我们对 MX 记录使用了 CNAME,这是不允许的。因此,大约 2 周前,我们将其更改为 A 记录以解决问题。

似乎所有主要的 DNS 服务(如 OpenDNS 和 ISP)都已同步其记录并在我们的 DNS 查询中返回正确的结果。但 Google 的 DNS 服务(8.8.8.8)仍在返回 CNAME 值,并且我们仍有一些电子邮件无法正确发送。

在 OpenDNS 上查询:

; <<>> DiG 9.7.3-P3 <<>> mx wrep.nl @208.67.222.222
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51231
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;wrep.nl.           IN  MX

;; ANSWER SECTION:
wrep.nl.        3595    IN  MX  10 druif.wrep.nl.

;; Query time: 21 msec
;; SERVER: 208.67.222.222#53(208.67.222.222)
;; WHEN: Fri Nov 25 21:36:58 2011
;; MSG SIZE  rcvd: 47

在 Google DNS 上查询:

; <<>> DiG 9.7.3-P3 <<>> mx wrep.nl @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12124
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;wrep.nl.           IN  MX

;; ANSWER SECTION:
wrep.nl.        2372    IN  CNAME   druif.wrep.nl.

;; AUTHORITY SECTION:
wrep.nl.        572 IN  SOA ns0.freshdns.nl. hostmaster.twilightinc.nl. 2011112401 14400 3600 604800 3600

;; Query time: 94 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Fri Nov 25 21:38:10 2011
;; MSG SIZE  rcvd: 117

那么有谁能解释为什么 Google 在上次更改两周后给出了不同的(不正确的)结果?我们如何才能让 Google 正确更新其 DNS 记录?任何帮助都非常感谢。

(请注意,由相同 DNS 服务器/工具管理的其他域名运行正常。)

答案1

我在Google 公共 DNS Google 群组。Alex Nizhner 的评论帮助我解决了我的问题。

似乎如果您首先解析 wrep.nl,而这实际上是 druif.wrep.nl 的 CNAME,则 DNS 客户端会缓存此记录。如果您尝试解析 wrep.nl 的 MX 记录,它将使用缓存的 CNAME 记录进行响应,而不会返回正确的 MX 记录。

所以我将 wrep.nl 更改为 A 记录,等待所有 DNS 服务器同步,现在一切都按预期运行。所有邮件都已发送。:)

答案2

我似乎离您不太远,而且得到的结果似乎还不错。

此问题可能是由于Google 的公共 DNS 服务器使用任播路由8.8.8.88.8.4.4不同的数据中心,如此处所示。根据您查询服务器的位置,可能会存在一些路由差异。您可以通过登录某些服务器并在那里对相同的 IP 地址执行查询来轻松进行测试。

根据你现在写的内容和我在这里看到的内容,我最有可能的猜测是,问题出在仍然由某些数据中心提供服务的缓存条目上。如果问题仍然存在,你可能需要向Google 公共 DNS 用户组

查询结果来自(兹沃勒):

; <<>> DiG 9.7.3-P3 <<>> mx wrep.nl @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19924
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;wrep.nl.           IN  MX

;; ANSWER SECTION:
wrep.nl.        1566    IN  MX  10 druif.wrep.nl.

;; Query time: 56 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Nov 26 13:41:55 2011
;; MSG SIZE  rcvd: 47

来自以下服务器的查询结果阿姆斯特丹

; <<>> DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5_7.1 <<>> wrep.nl MX @8.8.8.8
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23370
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;wrep.nl.           IN  MX

;; ANSWER SECTION:
wrep.nl.        3112    IN  MX  10 druif.wrep.nl.

;; Query time: 19 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Nov 26 13:42:40 2011
;; MSG SIZE  rcvd: 47

查询结果来自圣荷西

; <<>> DiG 9.6-ESV-R4 <<>> wrep.nl MX @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27967
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;wrep.nl.           IN  MX

;; ANSWER SECTION:
wrep.nl.        3599    IN  MX  10 druif.wrep.nl.

;; Query time: 277 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Nov 26 12:44:15 2011
;; MSG SIZE  rcvd: 47

答案3

这里工作正常。

; <<>> DiG 9.6.0-APPLE-P2 <<>> mx wrep.nl
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14549
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;wrep.nl.           IN  MX

;; ANSWER SECTION:
wrep.nl.        2489    IN  MX  10 druif.wrep.nl.

;; Query time: 52 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Fri Nov 25 15:46:53 2011
;; MSG SIZE  rcvd: 47

答案4

有趣的是,前几天我在处理 DNS 服务器时注意到了这一点。

更新区域以添加 MX 记录后,我检查了 Google 的服务器,看它是否会接收该记录。它接收了新的 SOA 序列号,但仍缓存了旧的 MX 记录。

我怀疑 Google 的缓存方法会缓存在区域序列号发生变化时不会被刷新的单个记录。

相关内容