13 thoughts on “Migrating 2 Forests for the same Organization to Office 365

  1. Great Article, thanks.
    One question:
    Did the users have to re-download all their mail after you migrated them?

    thank you

  2. Hi Ibrahim, Great article, I was wondering if the trust relationship had existed would the same approach be followed or is there a simpler solution? And also, did you consider deploying ADFS into the abc.local domain and DirSync into XYZ domain or was that not feasible?


  3. James,

    if a trust relationship had existed, we could in theory disconnect the mailboxes the abc.local domain and connect them to user accounts in the xyz.corp forest. ADFS would still need to be configured in the XYZ.corp domain since this particular scenario required the decommissioning of abc.local and dirsync would be configured in xyz.corp but the exchange hybrid servers would still be needed in the abc.local domain since that’s where exchange resides.

  4. Thank you for this great article.
    I followed all the steps but when I get to Step5 The mailbox move fails with
    Error: InvalidRecipientTypeException: Unsupported recipient type ‎’Mailbox‎’ provided. Only ‎’Mailuser‎’ is supported for this migration type.

    Do you have any ideas of what could be causing this?

  5. Dimitri,

    Unfortunately I would not know what is causing your issue but I suggest you go over all the steps identified above to make sure you didn’t miss anything. Most importantly, make sure you are performing a remote mailbox move request not a local move request.

  6. Thanks Ibrahim,
    I was able to get it working. My test user must have gotten corrupted somewhere in the testing process. I ended up deleting my test user from both domains. After DirSync ran the user was removed from 365 as well. Then I created another test user in both domains, followed your instructions exactly and it worked. One item I am still not clear on is how to properly export the 3 needed attributes from the source domain and properly format the CSV to import the multi-value proxyaddresses attribute into the target domain. When I got it to work I used a get-mailbox command and populated the CSV manually. I also ran your import script but that populated the proxyaddresses attribute as one long string with 5 smtp addresses. I assume that is because I didn’t properly format the field in the csv used for importing. I had to manually edit the proxyaddresses attribute in the target domain. If I run the get-qaduser command with the proper switches and then pipe to | export-csv it gives me a bunch of hex strings instead of the multi-valued attribute for proxyaddresses.
    Could you please point me in the right direction on how to export those values to a csv and then import into target domain? Thanks

  7. Dimitri, I am going to clean up my script and i’ll upload it here for you to use to export and import the information.

    As for free/busy, unfortunately it will not work during the coexistence.

  8. Hi Ibrahim,

    I have two questions

    1) Did you migrate over time?
    2) If you migrated steadily, a few user at a time did all the users, contacts and distribution list need to be added to the Account Forest and sync’d before you started migration?
    3)Once you configure the sync, and you have licensed the users does the attributes trigger Office 365 to know that the user will need to be migrated before provisioning the online mailbox.

  9. Liam,

    Yes we migrated over time but as weeks turned into months we started noticing some minor issues with coexistence like free\busy lookups between O365 and on-premise users so we sped up the migration and did all users. Luckily this organization did not have any contacts in AD and all users and groups were already duplicated in both exchange forests but yes you’d need to have them in both forests.

    Once the sync was done, the users were not licensed until they were migrated. Having them sync’ed simply made them available in the cloud GAL so that any migrated users can see the same GAL in the cloud as they did on-premise.

    Hope that helps…

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s