Forward to Internet recipients without internal mail-enabled contacts no longer works on Exchange 2007 – Part 2

I was recently asked by a HMC customer to see if this solution [https://blogs.msdn.com/dgoldman/archive/2008/04/09/how-to-forward-to-internet-recipients-without-creating-an-internal-mail-enabled-contact.aspx] would work for Exchange 2007 as it did work on Exchange 2003. The answer to this is *no*, this will not work. Being that the Exchange 2007 transport is a rewrite from 2003 we do not process the forwardingAddress of a user object, and this is by design.

 

I decided to set up a repro for this using the following steps:

1. Installed 3 Exchange 2007 servers. (1 Client Access Server, 1 Mailbox Server and 1 Hub Server.
2. In the Exchange System Manager I clicked on the Organization Configuration | Remote Domains Tab | Format of original message sent as attachment to journal report tab | click "Allow automatic forward"
3. Created a new mailbox called mailForward.
4. Using ADSI Edit connect to Schema, then navigate to Schema attribute ms-Exch-Forwarding-Address properties and set isMemberOfPartialAttributeSet to True 5. Now using ADSiEdit and navigate to the user account in the domain naming context and set forwardingAddress attribute on mailbox user’s properties. I changed the external recipient address to which you want the mail forwarded (for example dgoldman@hotmail.com)

Did my test on RTM and it was a no go. I then installed the latest services packs and hot fixes to confirm there were no changes between RTM and the latest Rollup.

Sending the message to the user will produce the following results if you look at the dump out the queues using Get-MessageTrackingLog

… I cut the rest out for readability

RECEIVE  STORE... mailForward@tpworld.l... {mailForward@domain.com... test
DELIVER  STORE... mailForward@tpworld.l... {mailForward@domain.com... test

As you can see the information store received and delivered the message which is correct, however you do not see an email being set to <dgoldman@hotmail.com.>

Checking the queues with the Exchange Management Console shows the following:

[PS] C:\Documents and Settings\exadmin>Get-Queue | fl

Identity         : E2K7-HUB\Submission
DeliveryType     : Undefined
NextHopDomain    : Submission
NextHopConnector : 00000000-0000-0000-0000-000000000000
Status           : Ready
MessageCount     : 0
LastError        :
LastRetryTime    :
NextRetryTime    :
IsValid          : True
ObjectState      : Unchanged

If the message was bifurcated you would expect to see an Unreachable queue for the message that was destined for hotmail.

I created a separate message to a false user: badmail@hotmail.com and sent this from the mailbox and you then see the following:

Identity         : E2K7-HUB\Submission
DeliveryType     : Undefined
NextHopDomain    : Submission
NextHopConnector : 00000000-0000-0000-0000-000000000000
Status           : Ready
MessageCount     : 0
LastError        :
LastRetryTime    :
NextRetryTime    :
IsValid          : True
ObjectState      : Unchanged

Identity         : E2K7-HUB\Unreachable
DeliveryType     : Unreachable
NextHopDomain    : Unreachable Domain
NextHopConnector : 00000000-0000-0000-0000-000000000000
Status           : Ready
MessageCount     : 1
LastError        :
LastRetryTime    :
NextRetryTime    :
IsValid          : True
ObjectState      : Unchanged

As a follow up I checked with the transport team and they in fact agree that this will no longer work and is by design.

Dave