Sharing an SMTP address space with two systems (and the Default Recipient Policy)
I had an adventure just recently that I felt deserved to be shared. Actually, it started out as George Cue's adventure, and I just hopped onboard after George had taken an Uzi to his co-workers. (Kidding!) George is one of my buds, a bright systems engineer, and one of my co-workers. If he and Clayton (another bud, bright SE, and co-worker) can't fix a problem, I know it is serious.
Anyway, in this new Exchange organization, they must share their SMTP address space with a Unix Sendmail system. The SMTP address (for example) is @somorita.com.
The users that are on Sendmail have mail-enabled contacts such as firstname.lastname@example.org in the Active Directory.
On the SMTP Address in the Recipient Policy had the This Exchange Organization Is Responsible for All Mail Delivery To This Address checkbox cleared. If this checkbox is not cleared, all SMTP addresses for that SMTP domain are considered local and Exchange won't even attempt to deliver the message elsewhere.
Anywho, when anyone picked an mail-enabled contact from the Global Address List whose mailbox existed on the SendMail system (but had the same SMTP address), the sender would get an NDR report like this:
A configuration error in the e-mail system caused the message to bounce between two servers or to be forwarded between two recipients. Contact your administrator. somorita.com #5.4.6.
When we checked the message tracking logs, the messages were hitting the advanced queuing engine and the categorizer (PHATCAT), but the SMTP protocol was never sending mail to the Sendmail system (we also checked the SMTP protocol logs).
When an SMTP Connector was created that specifically was used to forward mail to that Sendmail system (by putting the somorita.com name in to the Address Space listing on the Address Space tab), ALL mail for ALL local mailboxes was being delivered (and NDR'ed) to the Sendmail system. The message the users were then getting was:
The e-mail account does not exist at the organization this message was sent to. Check the e-mail address, or contact the recipient directly to find out the correct address.
The solution was to create an additional Recipient Policy for all users, set the Default Recipient policies primary SMTP address to something other than @somorita.com. And, of course, clear the This Exchange Organization Is Responsible for All Mail Delivery To This Address checkbox on the new policy's SMTP address space.
Sharing an SMTP address space is a pain. It probably would have been easier to create an alias in Unix for those mailboxes and change the contact objects in Exchange to send mail to something like email@example.com or something.
Even though we fixed it, I was not sure that this was the case or not. Thanks to Dustin "Ranger" Johnson for looking at this as well as Andrey Fyodorov and Michael B. Smith for reviewing my quandry. Michael also confirmed that there is a KB article that refers to this. See KB 321721: Sharing SMTP address spaces in Exchange 2000 Server and Exchange Server 2003 for more information.
The gist of it is:
"Exchange must always be authoritative for the prarimy SMTP address (the one in bold) on the default recipient policy. Otherwise, local mail flow may not occur."