使用注册器与名称服务器主机设置 MX 记录

Ker*_*rri 6 domain-name-system nameserver mx-record

我对我客户的一个电子邮件帐户发生的事情感到有些困惑。

我的客户在 dotster.com 上注册了一个域。在我们建立她的网站之前,她想开始使用该域的电子邮件,所以我通过 Google Apps 邮件设置了她,并将适当的 MX 记录添加到她的 dotster 帐户。

当她的网站准备好后,我将其托管在 Dreamhost 上,并指向 dotster 帐户中域的 Dreamhost 名称服务器。(例如,在 dotster 托管的域指向用于网络托管的 Dreamhost 名称服务器)。MX 记录和以前一样,并且一切正常。

今天,她告诉我她的电子邮件开始被退回。“另一台服务器返回的错误是:554 554 5.7.1:收件人地址被拒绝:访问被拒绝(状态 14) ”。当我执行 traceroute 时,MX 记录没有显示,但文本记录显示了(也设置在 dotster)。

所以我去了 Dreamhost 并在那里添加了 MX 记录。现在她的电子邮件又可以使用了。

我的问题:

1) MX 记录是否必须设置在名称服务器指向的位置?我以为他们是独立的。

2)在我将域名服务器指向dreamhost之后,我也很确定她的电子邮件工作了很长时间。那么为什么它会突然停止工作呢?

我是一名前端网页设计师/开发人员,所以请记住,你假设我已经知道了多少。:)(与服务器相关的东西通常比其他任何东西都让我难堪)。

h0t*_*1r3 7

  1. 是的
  2. DNS缓存。一旦超时到期,事情就开始变糟了。

每个域都有所谓的SOA 记录。除其他外,它定义了其他服务器应缓存有关从何处请求所述域的记录的信息的时间

举个例子:

@   IN  SOA     nameserver.place.dom.  postmaster.place.dom. (
                       1            ; serial number
                       3600         ; refresh   [1h]
                       600          ; retry     [10m]
                       86400        ; expire    [1d]
                       3600 )       ; min TTL   [1h]
Run Code Online (Sandbox Code Playgroud)

一旦对 place.dom(MX、TXT 等)中的某些内容进行查询,所有未来请求的位置将被缓存最多 1 天。 在您的情况下,它更长,所以您没有注意到,因为 SOA 已被缓存。

要获取有关域的 SOA 记录的更多信息,请尝试从命令行执行以下操作:

~$ nslookup
> set type=soa
> set debug
> zaplabs.com
Server:     192.168.1.1
Address:    192.168.1.1#53

------------
    QUESTIONS:
    zaplabs.com, type = SOA, class = IN
    ANSWERS:
    ->  zaplabs.com
    origin = dns1.name-services.com
    mail addr = info.name-services.com
    serial = 2002050701
    refresh = 10001
    retry = 1801
    expire = 604801
    minimum = 181
    AUTHORITY RECORDS:
    ADDITIONAL RECORDS:
------------
Non-authoritative answer:
zaplabs.com
        origin = dns1.name-services.com
        mail addr = info.name-services.com
    serial = 2002050701
    refresh = 10001
    retry = 1801
    expire = 604801
    minimum = 181

Authoritative answers can be found from:
> 
Run Code Online (Sandbox Code Playgroud)


Fli*_*mzy 6

1) 绝对。当 DNS 查找完成时(在这种情况下,是查看发送邮件的位置),该查找是从名称服务器完成的。因此,如果您的名称服务器没有列出 MX 记录,则查找将不会有任何结果。

它与电话簿相同——只是想象一下您一次只能在一个电话簿中列出您的电话号码。因此,您告诉您的朋友“在 Acme 电话簿中查找我”。因此,当他们想联系您时,他们会在 Acme 电话簿中查找您的电话号码,找到您的列表,然后给您打电话。但是如果你把你的列表移到“OtherGuys电话簿”,但不要告诉OtherGuys你的电话号码是什么,当你的朋友在OtherGuys中查找你时,他们不会看到你的电话号码——因为它列在Acme 书代替。

2) 这是因为您的客户端域的名称服务器记录被缓存了一段时间(通常是几个小时,可能长达几天——超时是可配置的)。这意味着(大致)在您切换名称服务器之前进行 MX 查找的任何人都会将旧信息保留在内存中一段时间​​,因此他们不必再次查找。但最终,该信息已过期,因此当他们再次尝试查找信息时——这次是从新服务器——他们“什么也没有”,所以邮件开始退回。