Thought I’d put this out there since it took me a little bit of time to diagnose and resolve.

Migrating from Exchange 2003 to 2010. Installed 2010 and put the Client Access role on a different machine than all the other roles. OWA worked, ActiveSync worked, but you couldn’t connect using Outlook within the office without wonderfully descriptive errors relating to basic Outlook/Exchange connectivity, the same ones you would get if your server was offline, Address Book Service was stopped, etc,…

Outlook connects to Exchange using RPC so I checked the RPC Client Access log (C:\program files\Exchange Server\V14\Logging\RPC Client Access by default) and found it full of errors like this:

6/19/2011 7:08:20 AM, currently Mounted”,”RopHandler: Logon: [RopExecutionException] Misconfiguration: Mailbox DB LONG-HEX-ID hosted on /o=First Organization/ou=Exchange Administrative Group (MY ADMIN GROUP ID)/cn=Configuration/cn=Servers/cn=MY-SERVER-NAME is pointing to RpcClientAccess on this server, /o=First Organization/ou=Exchange Administrative Group (ADMIN GROUP ID AGAIN)/cn=Configuration/cn=Servers/cn=SAME-SERVER, which doesn’t have a ClientAccess role installed. Error code = NoServerSupport”

And there’s your problem. It was looking for client access where client access did not exist. I verified by popping open the Exchange shell and running a few commands.

Get-MailboxDatabase FL

This showed me all the info about my database, including the Identity, which I needed for the next step, and confirmed that RpcClientAccess was in fact set to the wrong server. The fix was easy.

Set-MailboxDatabase -identity “Mailbox Database ID” -RPCClientAccessServer CORRECT-INTERNAL-DNS-NAME

Worked immediately after changing this. I’m not quite sure why this was necessary. My hunch was that I initially installed the Client Access role on the single machine, then uninstalled it, then installed it on a different machine. There might be a way to change this from the console, too, but this was easy enough.

Hope it helps you out sometime.