解決 CloudFlare DNS 相關的郵件傳遞問題
我最近開始使用 CloudFlare 並且遇到了一些問題。
我們的域是 netlanguages.com,雖然我們有很多子域監聽,但我們目前只通過 CloudFlare CDN 試用少數伺服器(例如,為 CDN 啟用 www.netlanguages.com,netlanguages.com 是不是)。實際的 CDN 服務似乎是可靠的,但我們遇到的問題是 DNS,特別是郵件傳遞。
背景是我們的網站上有聯繫表格,它使用 PHP mail() 將詳細資訊發送到最終使用者的電子郵件地址,消息的“發件人”地址是 website@netlanguages.com,這是一個有效地址在我們的郵件伺服器上。大多數郵件都正確到達,但有一些特定的人沒有收到它們。網路伺服器使用 qmail 傳遞消息,qmail 日誌文件向我們展示了接收郵件伺服器在拒絕郵件傳遞嘗試時返回的一些錯誤。兩個例子:
連接到 94.100.176.20 但發件人被拒絕。/遠端主機說:421 DNS 問題(interdominios.netlanguages.com)。稍後再試 連接到 213.186.33.29 但發件人被拒絕。/遠端主機說:451 DNS 臨時故障 (#4.3.0)
據我所知,接收 SMTP 伺服器正在對“發件人”電子郵件地址 (netlanguages.com) 的主機或 SMTP 對話的 EHLO 命令中給出的伺服器名稱(在上面的第一個範例 interdominios.netlanguages.com),兩者都應解析為非 CloudFlare IP 地址。
我讀過 CloudFlare DNS 服務非常可靠和快速,但上述兩個問題似乎都指向遠端伺服器無法進行 DNS 查找的問題。
我還應該指出,我們在 2 月 6 日將 DNS 更改為 CloudFlare,從那時起就開始遇到這些郵件傳遞問題。2 月 22 日,我們將 DNS 從 CloudFlare 移走,以查看問題是否與 CloudFlare 有關,幾個小時後傳遞開始工作。然後在 2 月 26 日,我再次將 DNS 移回 CloudFlare,傳遞問題再次出現。這些問題肯定似乎與 DNS 有關,但我不知道這是配置問題還是其他問題。
最後,應該說我們的兩條DNS MX記錄指向非CDN A記錄IP地址,interdominios.netlanguages.com(web和qmail伺服器)也指向非CDN A記錄IP地址。
有誰知道這裡可能出現什麼問題?您可以對此有所了解的任何資訊將不勝感激。
非常感謝,
安迪
首先,非常感謝您在問題中使用您的實際主機名和資訊,這很有幫助!
451 DNS 臨時故障意味著收件人郵件伺服器在該時間點無法解析主機名。我查看了你的 DNS 記錄,我看不出它們有什麼奇怪的地方會導致這種情況,所以我會說問題出在 CloudFlare DNS 伺服器上。可能是存在一些防火牆或速率限製或其他一些問題,這意味著它們要麼沒有響應,要麼響應速度不夠快,以至於郵件伺服器無法獲取他們想要的資訊以接受電子郵件。
您可以聯繫收件人站點的郵政主管(理論上,地址“postmaster@theirdomain.com”應該既可以工作又可以被人閱讀,但我們都知道理論與實踐之間的區別!)並詢問他們是否可以看到檢查失敗的原因。如果 CloudFlare 支持人員看到其他客戶遇到同樣的問題,我也會向他們諮詢。