Category Archives: Microsoft Exchange

Resolved issues and EMC Navigation tips.

Exchange 2010 Decommision tip post 2013 migration

(Note I will try to start posting again and address the Ultrafin issues. I have been doing a lot of studying as of late. I got my VCP5-DCV and am working on an MCSA 2012 upgrade. I am also working on an Exchange 2013 DAG. I hope I can post some tips once I iron out all the bugs).

Here is a simple but somewhat silly tip when you think about it.

In trying to decomission an Exchange 2010 server, I found I still had what seem to be system (arbitration) mailboxes in one of the mail stores.

I was in Exchange powershell on the 2010 server and was trying to move them to a 2013 mail store. I got an error with this message:

Unsupported target database version. The New-MoveRequest cmdlet can only move mailboxes to databases mounted on servers running one of the following versions of Exchange: Exchange 2010, Exchange 2007 (SP2 and later), Exchange 2003 (SP2 and later).

The fix is actually really simple. Run the same command from Exchange powershell on the 2013 servers.

Here is how to move all your mailboxes in one line:
get-mailbox -database 2010_db_name -arbitration | new-moverequest -TargetDatabase 2013_db_name

This will show you how the move is going:


Exchange 2013 – Anonymous relay requires one more step

Here is something I have gotten bit by and would like to save others from the same problem.

I recently migrated from Exchange 2010 SP3 to Exchange 2013.

I went through settings on the old system including Receive Connectors. We always had one called Anonymous Relay for copiers that do scan to email. We also have some standalone systems that need to relay.

It turns out that just setting a receive connector in the Admin center in 2013 isn’t enough.

You also need to issue a command in the CLI. (In 2010, based on technet, the CLI method is an alternative.) In 2013, the CLI is a compliment to the other part. By checking the Anonymous box in the admin center, some permissions are added but not all of them.

Here is the command to use in the CLI and note, if you only have one server, you may not need to specify:

Get-ReceiveConnector “Servername\Receive Connector Name” | Add-ADPermission -User “NT AUTHORITY\ANONYMOUS LOGON” -ExtendedRights “Ms-Exch-SMTP-Accept-Any-Recipient”

Hope this saves someone a lot of grief and headaches.

How to export email addresses of distribution list members in powershell

This is a quick one-liner I had to figure out to respond to a request to have the actual email addresses of all members in a distribution list. To complicate it further, I always use nested groups.
I wasn’t having much luck doing it via exchange powershell but I did find a way to run it in powershell on one of our DC’s.
The first step is to load ActiveDirectory in your powershell session
Import-Module ActiveDirectory
this line will get members of group_name and recursively go through any other groups that are members. It will then output only the user email. You can always add more fields to select-object if needed.
get-adgroupmember group_name -recursive | get-aduser -properties mail | select-object mail

Exchange 2010 Slow Relay Fix

I wanted to share something we have been chasing here for some time.

This turns out to be an old fix. We just didn’t narrow down the cause.****

** **

One of the systems here was using exchange to relay emails and the users were noticing****

long delays for the whole batch. The developer came back and showed logs indicating a 30 second delay****

for one email.****

** **

This could also apply to fax systems that do emails as well.****

** **

The command below in Exchange Powershell showed me each receive-connector had a default MaxAcknowledgementDelay of 30 seconds.****

** **

Get-ReceiveConnector | format-list

(above could be cleaned up to limit what is in the list but that’s another post 🙂 )

** **

I ran the command below and the delay is gone.****

** **

Set-ReceiveConnector “Anonymous Relay” -MaxAcknowledgementDelay 0****

** **

Link I found the fix on. I have found old posts related to the same command so I think its native to 2010 and****

Was not introduced with service packs.****

** ******

** **

** **

Using powershell to put in mass mailbox move requests in Exchange 2010

After seeing I had multiple users in the wrong database, I looked for a quick way to change them through the exchange powershell.

In exchange you can export a list of your mailbox users to a csv file. After some careful trimming of the list in excel, I exported only the column containing the user Alias to a .csv file. The key here is to have the alias column heading in the file

The following worked well as a quick one liner: import-csv .wrongmailstore.csv | foreach { New-MoveRequest -identity $_.”alias” }