So far in this series on migrating to Exchange Server 2016 we’ve looked at reviewing system requirements, client access namespaces, and SSL certificates. In this article we’ll look at some additional information that should be collected and reviewed when planning an Exchange 2016 migration. We’ll cover:

  • The email routing topology
  • Mailbox storage quotas
  • Applications and device integration
  • The offline address book (OAB)

Email Routing Topology

Introducing new Exchange servers to an existing environment is going to impact the email routing topology, so it’s a good idea to first understand what that mail flow topology looks like already. Mail flow for some organizations is quite simple; the MX records in DNS point to the firewall at the network boundary, which forwards connections on port TCP 25 to an internal email server. The internal email server could be a third party email security appliance, or it could be the Exchange server itself. Outbound mail flow follows a similar route, with the Exchange server sending directly to the recipient’s server on the internet.


More complex mail flow scenarios can involve cloud hosted email security services, Edge Transport servers in a perimeter network, and multiple internal Exchange servers spanning different Active Directory sites.


For the Not Real University environment, the key elements of the mail flow topology are:

  • MX records resolve to the public IP address of the firewall.
  • TCP port 25 is forwarded (NATs) to the Edge Transport server that is running in the perimeter network.
  • The Edge Transport server routes inbound and outbound email for the internal Exchange 2010 and 2013 servers.
  • The Exchange 2010 and 2013 servers are capable of routing email between themselves with no special configuration.


Mailbox Storage Quotas

When new mailbox databases are created, as they will be on the Exchange 2016 server that will be deployed, the default mailbox storage quotas enforced by the database are:

  • Issue a warning at 1.9GB
  • Prohibit send at 2GB mailbox size
  • Prohibit send and receive at 2.3GB

Any mailboxes that are larger than those default quotas will fail to migrate to the new database. Therefore, it’s important to review the mailbox quotas on the current databases so that the same limits can be configured on the new databases, as well as check for mailboxes that are over the current quota thresholds.

You can retrieve a report of the storage quotas configured on mailbox databases using the Get-ExchangeDatabaseQuotas.ps1 script, available on GitHub.

To locate mailboxes that are exempt from storage quotas, use the following command:

[PS]C:\> Get-Mailbox | Where {$_.UseDatabaseQuotaDefaults -eq $False} | ft name,prohibit*,issue*

Applications and Device Integration

For many organizations the Exchange server provides an SMTP service for other devices and applications on the network that send email messages or alerts. And most Exchange servers will be integrated with at least two or three third party software products, for example:

  • Antivirus/Antispam
  • Backup products
  • Virtualization
  • Fax/SMS gateways
  • Telephony/Voice integration
  • Scan-to-email devices
  • Email signatures/disclaimers
  • Email archiving
  • Mobile device management

For the Not Real University organization a review of mail-integrated applications and devices has been conducted to produce an inventory of items that need to be tested and migrated to Exchange Server 2016 before the legacy server can be decommissioned.

Offline Address Book

Before installing your first Exchange 2016 server during a migration project you must first review your offline address book configuration. Any mailbox users who do not have an existing OAB assigned to their mailbox directly, or to the mailbox database that they are located on, will download the entire OAB from the new default OAB that Exchange 2016 setup creates. In organizations with a large OAB or distributed network environment, this is obviously not ideal as it will cause a lot of network traffic.

The solution is to review your existing OAB configuration to make sure that each mailbox database has an OAB configured. You can check the OAB configured on mailbox databases with a single PowerShell command.

[PS] C:\>Get-MailboxDatabase -IncludePreExchange2013 | select name,offlineaddressbook | sort name

Name                                                        OfflineAddressBook
----                                                        ------------------

For databases with no offline address book, you can assign one using Set-MailboxDatabase. First, retrieve the names of the OABs in the organization.

[PS] C:\>Get-OfflineAddressBook

Name                                    Versions                                AddressLists
----                                    --------                                ------------
Default Offline Address Book            {Version3, Version4}                    {Default Global Address List}
Default Offline Address Book (Ex2013)   {Version4}                              {Default Global Address List}

Then apply the OAB for each database, for example:

[PS] C:\>Set-MailboxDatabase DB2013 -OfflineAddressBook "Default Offline Address Book (Ex2013)"


In this article we looked at reviewing the email routing topology, maibox storage quotas, applications and device integration, and the offline address book configuration for the existing Exchange organization. In the next part of this series we’ll install the first Exchange 2016 server into the environment.

[adrotate banner=”51″]

About the Author

Paul Cunningham

Paul is a former Microsoft MVP for Office Apps and Services. He works as a consultant, writer, and trainer specializing in Office 365 and Exchange Server. Paul no longer writes for


  1. Craig

    Paul, I added an Exchange 2016 to my domain, but when a user access a mailbox, there is no GAL. How do I fix?? Thanks.

  2. Javier Martínez

    Hello Paul,

    Thank you for your guide. Will be nice to clarify what happens when the mailboxes have AddressBook Policies applied. Does they need to be assigned an OAB anyway? Migration respect the ABP?

    best regards!!

    1. Avatar photo
      Paul Cunningham

      I assume the ABPs will be respected, but that is something you should test as I’ve never done a migration where ABPs were being used.

  3. Samy

    Hello Paul,
    I have similar question that Phuong asked above.
    We are just one step from completing the migration from Exchange 2010 to 2016 CU6.
    Our Exchange 2010 mailboxes were using Default OAB. Do we need to make any change to OAB on 2016.
    I will appreciate your kind help

    Get-MailboxDatabase -IncludePreExchange2013 | Select Name,Offline*

    Name OfflineAddressBook
    —- ——————
    Mailbox Database 2010 \Default Offline Address Book


    Name Versions AddressLists
    —- ——– ————
    Default Offline Address Book {Version4} {\All Users, \All Distribution Lists…
    Default Offline Address Book (Ex2013) {Version4} {\Default Global Address List, \All …

  4. Phuong, Nguyen Van

    Thanks Paul.
    I have just migrated exchange 2010 to exchange 2016 cu3. I need to move OAB from exchange 2010 to Exchange 2016 before i’m planning decommission exchange 2010. What do i need procedures?

Leave a Reply