I need to bulk create email forwarding on Exchange 2003

Posted on 2013-06-27
Last Modified: 2013-07-23
I am migrating from an Exchange 2003 server to a new domain and need to enable about 4000 users to forward their emails to a new email address. I am able create the contacts \I just need to create the forwards from a csv file. Any help would do.
Question by:charles_cuerrier
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
  • 3
LVL 12

Expert Comment

ID: 39283708

You could try using ADModify to establish this. Please refer the following article which shows how to modify Exchange attributes using ADModify.
LVL 14

Expert Comment

ID: 39283746
What you should do is configure Exchange 2010 and 2003 for co-existence and then use native Exchange 2010 tools to help you with the migration.

The general process I would follow would be to

1: Export the GAL from legacy domain using CSVDE
2: Cleanup the export and change the UPN's, Email address etc.
3: Import the CSV into the Exchange 2010 organisation as contacts. These contacts have a primary SMTP email address of the mailbox in the source domain.
4: Run the PrepareMoveRequest.ps1 exchange script to stamp the source account GUID to the target account (don't use ADMT)
5: Migrate mailbox, the process will convert the source account into a contact and convert the target account into a mailbox.

It's all here
LVL 14

Expert Comment

ID: 39283817
Some additional notes from the last time I did this.


Either use ADMT or Bulk create new User accounts, you can use the CSV to do this in the instructions below.


In SOURCE a create an CSV export file of all the users
csvde -l displayName, samAccountName, mailNickname, mail - -r "objectclass=user" -f c:\2003_Mailboxes.csv

Open in new window


Edit the CSV file created above; delete all built in accounts and domain accounts with mailboxes that are not to be migrated, rename the headers in the CSV file to match the input values used by the Import-CSV Exchange Management Shell cmdlet.

Change DisplayName to Name
Change samAccountName to Identity
Change mailNickname to Alias
Change mail to EmailAddress

Now is a good opportunity to edit the CSV file and remove invalid characters from the Alias field and bulk set all the accounts to use @TargetNameSpace to enable cross forest routing.


In Target, import the CSV to mail enable the previously migrated user accounts
Import-CSV C:\2003_Mailboxes.csv | ForEach-Object -process {Enable-MailUser -ExternalEmailAddress $_.EmailAddress -Alias $_.Alias -Identity $_.Identity}

Open in new window


Prepare Target users for mailbox move using the Prepare-Moverequest.ps1 script provided by Microsoft

$LocalCredentials = Get-Credential (Admin account in the Target Domain)
$RemoteCredentials = Get-Credential (Admin Account in the Source Domain)

Import-CSV C:\2003_Mailboxes.csv | ForEach-Object –process {Prepare-MoveRequest.ps1 -Identity $_.Identity -RemoteForestDomainController source-dc.source.local -RemoteForestCredential $RemoteCredentials -LocalForestDomainController DC.SOURCE.LOCAL -LocalForestCredential $LocalCredentials -UseLocalObject}

Open in new window


Move Mailboxes
$RemoteCredentials = Get-Credential

New-MoveRequest -Identity 'username' -RemoteLegacy -TargetDatabase "Mailbox Database 1" -RemoteGlobalCatalog DC.SOURCE.LOCAL -RemoteCredential $RemoteCredentials -TargetDeliveryDomain target.local'

Open in new window


To verify the progress of a submitted move request, use the following
Get-MoveRequestStatistics -MoveRequestQueue "mailbox database name"

Open in new window


To move multiple mailboxes in a single request, and using the CSV file created previously.
[$RemoteCredentials = Get-Credential
Import-CSV C:\2003_Mailboxes.csv | ForEach-Object –process {New-MoveRequest -Identity $_.Identity -RemoteLegacy -TargetDatabase " Mailbox Database 1 " -RemoteGlobalCatalog 'source-dc.source.local' -RemoteCredential $RemoteCredentials -TargetDeliveryDomain 'target.local'

Open in new window


Once the mailbox has been moved, the users Outlook profile will require modification in order to re-connect them to the target exchange organisation.
Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.


Author Comment

ID: 39294540
Since we need to keep the old Exchange 2003 running after the migration ADModify seems to be the best bet. My question for this would be how to put a wildcard setting to take the forwarding address from a CSV or have it set up as firstinitial + lastname
LVL 12

Expert Comment

ID: 39295776
You need to enable the option 'Set Alternate Recipient To' and type in the Distinguished Name of the contact object. You can use variable %'givenName'% for first name and %'sn'% for lastname. So if contact is having a display name 'SecondName, FirstName [TestDomain]', you can refer it as %'sn'%, %'givenName'% [TestDomain]

Please refer following screenshot for example.


Accepted Solution

charles_cuerrier earned 0 total points
ID: 39296797
Your solution seems to be the best and I can do it for an individual by manually entering givenName sn but when I use the %'sn'%, %'givenName'% it says that the DN entered is not valid. There is no such object on the server.
My DN is first name last name, John Doe. What would you suggest?
LVL 12

Expert Comment

ID: 39299033
For FirstName LastName format, the syntax would be %'givenName'% %'sn'%

The Distinguished name refered is of the contact object, so you have to give the correct OU path where the contact object is created. Suppose there is a contact object with extenal domain mail address for user John Doe in AllContacts OU in root, then the DN would be

CN=%'givenName'% %'sn'%,OU=AllContacts,DC=NewDomain,DC=com

If we are selecting all 4000 users, corresponding all 4000 contact objects should be there is the same OU and they should all have object name in the same format %'givenName'% %'sn'%
LVL 14

Expert Comment

ID: 39299131
This method shouldn't be nessesary. When performing a cross forest mailbox move in exchange 2010 the move request will actually convert the mailbox back to a contact and set the correct smtp as part of the process.

Author Closing Comment

ID: 39347357
That didn't answer the question but it did show that there is no answer.

Featured Post

Is Your AD Toolbox Looking More Like a Toybox?

Managing Active Directory can get complicated.  Often, the native tools for managing AD are just not up to the task.  The largest Active Directory installations in the world have relied on one tool to manage their day-to-day administration tasks: Hyena. Start your trial today.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article will help to fix the below error for MS Exchange server 2010 I. Out Of office not working II. Certificate error "name on the security certificate is invalid or does not match the name of the site" III. Make Internal URLs and External…
There are times when we need to generate a report on the inbox rules, where users have set up forwarding externally in their mailbox. In this article, I will be sharing a script I wrote to generate the report in CSV format.
In this video we show how to create a mailbox database in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Servers >> Data…
The basic steps you have just learned will be implemented in this video. The basic steps are shown to configure an Exchange DAG in a live working Exchange Server Environment and manage the same (Exchange Server 2010 Software is used in a Windows Ser…
Suggested Courses

623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question