I have a client who's in-house Exchange server went down this weekend and they did not have any type of service or appliance that would capture and queue the e-mail until it was brought back online (sans the sending servers auto-retry policies). While I was working on the Exchange server, I setup a second MX record and pointed it to a one of my servers where I installed hMailServer and configured it to mirror the e-mail accounts on their Exchange server. Here are what the MX records look like:
MX Record 1: Priority-0 Destination-mail.domain.com
MX Record 2: Priority-15 Destiantion-mail2.domain.com
Eventually I got the Exchange server online and all e-mail again began flowing properly to it; or so I thought. I decided to leave my temporary backup e-mail solution in place until I could speak with my client more about the need for a queuing service / appliance or fail-over e-mail server.
This morning I was running a check to make certain my client's Exchange server was still running as expected, which it is. I then decided to check the backup e-mail server and noticed some e-mail had come in even after I fixed the Exchange server. I did quick a comparison of a few accounts and sure enough they are receiving e-mails on both the Exchange server and hMailServer. To be clear, they are not duplicate e-mails being received on both servers. Rather, several e-mails will go to the Exchange server and then several will go the hMailServer...and so on. As a result, I have removed the second MX record to force all e-mail to go to the Exchange server.
My question: Why would e-mail still route via the second MX record if the server pointed to from the first MX record is up and receiving e-mail? I thought MX Priority 0 was much higher than MX Priority 15? Can some please help explain why this is happening?