5.7.1. Unable to Relay (despite domain being in Recipient Policies) on Exchange 2003
Posted on 2005-04-07
I have a Windows 2003 Server running Exchange 2003 Standard Edition (machine "Beta" - all names have been searched and replaced with generic names) within a domain currently running Active Directory hosted on a Windows 2000 Server (machine "Alpha"). The server is *not* itself running Active Directory (it is a member server) as documents have advised against upgrading the schema of an Exchange server (it is an unsupported configuration). This server has been used for internal e-mail and shared calendars, etc, but we now wish it to e-mail that is from a standard Internet domain. The internal domain is effectively "domainname.local" (this is the sole domain under Active Directory) and the external domain is "externalname.com".
I have set up Exchange in the past (5.5) to handle external domain names mail being delivered to it. However, I am having trouble with setting up this functionality on 2003. Starting with the defaults provided on the property pages of "Default SMTP virtual server" I changed the following:
Under Delivery, I changed the fully-qualified domain name to mail.externalname.com. I have pointed a MX record to that A record, which in turn points at my firewall with port 25 forwarded to the exchange server. Using an external machine, "telnet mail.externalname.com 25" connects me to my server (I can see the session in "Current Sessions").
When I connect, I get:
220 BETA.DOMAINNAME.LOCAL Microsoft ESMTP MAIL Service, Version: 6.0.3790.211
ready at Thu, 7 Apr 2005 09:18:35 -0700
And when I run the following:
mail from: email@example.com
rcpt to: firstname.lastname@example.org
550 5.7.1 Unable to relay for email@example.com
This was the expected result, as only the Active Directory domain "domainname.local" should be available.
I then went to Recipient Policies->Default Policy (the only one we have) property pages.
On the E-Mail Address (Policy), I used New.. to add "@externaldomain.com" and then set it as primary and finally removed the existing "@domainname.local" from the list. I asked for the changes to be applied now on clicking "OK".
I expected to be able to do a "rcpt to: firstname.lastname@example.org" but was greeted with the same 550 5.7.1 message. So I restarted the SMTP protocol, Exchange and eventually the entire machine to no avail. I then read that you may have to do a "rebuild" on the Recipient Update Services items. I did so on both the (Enterprise Configuration) and (DOMAINNAME) entry lines. It said it may take hours, but we have only 20 users so I expected it to work fairly soon. The next day I came back to this task and I still get the relay message.
So, I apparently missed something essential to convince the Exchange server that it is responsible for the "externaldomain.com" addresses. I'm looking for the step I missed.