Microsoft Exchange 發送到錯誤的郵件伺服器地址
我的客戶在向少數客戶發送電子郵件時遇到間歇性問題。它實際上只發生在過去五天,到目前為止只發生了六條不同的消息,但它們在正常傳遞和失敗傳遞之間都有相同的區別。
在下面的螢幕截圖中,有效傳遞和失敗傳遞之間的區別在於它嘗試傳遞的伺服器 IP/主機名。我選擇了這個收件人,因為他們的域是通用的。在其他每週發送數十條消息的嘗試中,它看起來非常相似。
出於某種原因,Exchange Server 獲取收件人帳戶域的 IP,而不是使用 MX 記錄中的地址。(即。mindspring.com 而不是 mx3.mindspring.com)
我的客戶正在執行帶有 Exchange 2010 的 Small Business Server 2011 Standard。他們每天發送約 200 條消息的其餘部分都很好。
到目前為止我的研究:
TL;DR:我們使用的兩個 ISP 之一阻止來自其網路外部的 DNS 請求。DNS 請求偶爾來自其他 ISP 的網路…
解決方法:在防火牆上為 ISP DNS 伺服器實施靜態路由以使用特定介面,或使用其他服務(如 OpenDNS 或 Google DNS)。
故事:好吧,我們發現了問題所在。交換伺服器大部分都按我們預期的那樣執行。我們有一個雙 WAN 連接,如果主伺服器出現故障,防火牆會故障轉移到該連接。因此,在域控制器上,我們為要查詢的兩個 ISP 添加了 DNS 伺服器(以及作為第三選項的 OpenDNS)。我們將不得不對這個特定的過程做更多的研究,但我們發現 Exchange 並沒有一直查詢第一台伺服器(我們的主要 WAN 連接)。
它似乎一直在所有選項之間循環。在我們的輔助 ISP 更改其 DNS 伺服器上的設置以拒絕來自其網路外部 IP 的連接之前,這一直沒有問題。數據包擷取揭示了這一響應,最終使我們得出了結論。當 Exchange 收到拒絕的響應時,它回退到僅查詢 A 記錄並嘗試使用該記錄建立連接。
好吧,如果我嘗試遠端登錄 mindspring.com:25,我無法連接,所以我懷疑 ServerHostname 是一個紅鯡魚。顯然您正在連接到郵件伺服器,但它要求您進行身份驗證才能使用埠 25。您收到的 550 錯誤是因為您連接的伺服器上打開了 SMTP 身份驗證,或者因為它們是試圖強制 TLS。
如果您轉到該伺服器上的命令行並鍵入:
nslookup set type=mx mindspring.com
你拿什麼回來?一切都檢查了嗎?如果你這樣做,你會得到相同的答案嗎
nslookup server 8.8.8.8 set type=mx mindspring.com
還是你為mindspring工作而這都是內部的?