Recently I was migrating a customer from Exchange 2013 in Forest A to Exchange 2016 in Forest B. They wanted to keep the same shared namespace across both exchange environments.

Autodiscover and MX records was pointing to the source Exchange 2013. We used mail.originaldomain.com as a domain for mail routing to Exchange 2016 as follows:

User A has been migrated to Exchange 2016. User B is still on Exchange 2013. When userA was migrated then the External E-mailAddress was set as usera@mail.originaldomain.com. UserB looks up usera@originaldomain.com and finds a mail contact with an external email address of usera@mail.originaldomain.com and is routed to exchange 2016 by DNS for mail.originaldomain.com. If userA in Exchange 2016 tries to lookup userB then Autodiscover DNS is pointing to Exchange 2013 for @originaldomain.com. If userA emails UserB then due to the domain in Exchange 2016 being set as an internal relay domain to delivers to exchange 2013 via a send connector created.

Forest A:

User:

UserB: SMTP:userb@originaldomain.com

Mail Contact: SMTP:usera@originaldomain.com , externalemailaddress smtp:usera@mail.originaldomain.com

UserA:

Forest B:

User

UserA:
SMTP:usera@originaldomain.com
smtp: usera@mail.originaldomain.com

Mail Enabled User:

UserB: SMTP:userb@originaldomain.com

For mail flow and free/busy information to work the following steps must be performed. This is assuming that the users have been migrated by ADMT or another means.

  • In the source domain setup DNS for mail.originaldomain.com to point to Exchange 2016 server(s).
  • In the target environment (forest B) export the autodiscoverconfig from forest A.

o   Export-AutodiscoverConfig -TargetForestDomainController “dc.foresta.local” -TargetForestCredential (Get-Credential) -MultipleExchangeDeployments $true

  • Setup ADPermissions on within each forest.

o   Get-MailboxServer | Add-ADPermission -Accessrights Extendedright -Extendedrights “ms-Exch-EPI-Token-Serialization” -User “<Remote Forest Domain>\Exchange servers”

  • Add AvailabilityAddressSpace – Forestname is smtp domain being used.

o   In Forest A:

  • Add-AvailabilityAddressSpace -Forestname mail.originaldomain.com -AccessMethod PerUserFB -UseServiceAccount:$true

o   In Forest B:

  • Add-AvailabilityAddressSpace -Forestname originaldomain.com -AccessMethod PerUserFB -UseServiceAccount:$true
  • Enable-MailUser in the target forest (forest B in this case). Without the user mail enabled the Free/Busy will fail.

Prepare-moverequest for the user in the exchange management shell of target forest (forest B). MRSProxy needs to be enabled to migrate mailboxes.

About the author