Domain-Name-System

為特定子域使用備用伺服器 - DNS 設置

  • February 25, 2014

我正在嘗試為域名設置 DNS 記錄,以便mail.domain.com使用不同於任何其他請求的伺服器*.domain.com。當我一直試圖弄清楚如何做到這一點時,我意識到我有可能是在我的頭上。

我已經嘗試了一些由於錯誤而導致 `zone domain.com/IN 未載入的事情。當時的區域文件看起來像這樣(沒有隱藏資訊,因為一個簡單的 DNS 查找無論如何都會顯示所有內容:

$TTL    1800
@       IN  SOA ns1.domain.com. hostmaster.domain.com. (
           1393205447 ; last update: 2014-02-24 01:30:47 UTC
           3600 ; refresh
           900 ; retry
           1209600 ; expire
           1800 ; ttl
           )
            IN      NS      ns1.domain.com.
                    NS      ns2.domain.com.
                    NS      ns3.domain.com.
           MX 10   mail.domain.com.
ns1.domain.com. IN A    198.000.000.125
ns2.domain.com. IN A    141.0.000.89
ns3.domain.com. IN A    198.000.00.114
@   IN A    107.000.00.138
*   CNAME   @
mail.domain.com.    IN A    162.00.000.72
mail    CNAME   mail.domain.com.

因此,首先,我正在嘗試做一個可接受的“良好實踐/最佳實踐”,其次,如果是,我該如何設置,以便郵件請求轉到第二台伺服器的 IP,並從在那裡,我需要將 MX 記錄設置為:priority mail.domain.com. (在將 mail.domain.com 請求和 mx DNS 設置重定向到第二個伺服器 IP 方面,我做錯了什麼?

注意,我使用的是 digitalocean,所以我有一個 DNS 輸入面板,可以為我創建區域文件。

為不同網路上的主機創建 A 記錄時,無需指定 FQDN。

更正您的區域配置:

mail IN A 162.00.000.72
@ IN MX 10 mail.domain.com

這如何轉化為客戶的觀點是這樣的:

  • 當郵件伺服器檢查 MX 路由時,它會發現mail.domain.com它是主路由。
  • 當郵件伺服器對其進行查找時mail.domain.com,它將返回162.00.000.72

為什麼您的 A 記錄中不需要 FQDN:

mail.domain.com. IN A 162.00.000.72

這很好。


mail.3rdparty.com. IN A 162.00.000.72

這是無效的。**原因:**你沒有權威3rdparty.com


mail IN A 162.00.000.72

這是有效的。原因:任何不以 a 結尾的東西.都會$ORIGIN附加上它。

所以,mail實際上意味著mail.domain.com,如果你有$ORIGIN = domain.com

一些歷史:

實際上意味著所有域的.根。

以這條記錄為例:

mail.domain.com.

這就是它的意思:

  • mail:子域或“主機”
  • domain: 域
  • com:一個“頂級”域(TLD)
  • .: 根

這就是為什麼不將 a 添加.到您的記錄會導致意外記錄,例如mail.domain.com.domain.com.

但是在大多數現代 DNS 伺服器中,他們假設您的意思是末尾的一個點。

引用自:https://serverfault.com/questions/577762