MsExchange Blog Spot Telnet25

April 16, 2012

How to set Client Access server array

Filed under: General — telnet25 @ 3:19 am

If you find out you have not set your Client access array and would like to set it up here are quick steps to get the work done. If you are not certain what the CAS array is here is Exchange team Demystifying the CAS Array Object  series part1 and part2


Also very nice detailed explanation about the RPC Client access server is here

Exploring Exchange 2010 RPC Client Access service

Exchange 2010 Middle Tier

In order to facilitate this move to the middle tier, two new services were created that run on the Client Access Server role: the RPC Client Access service and the Address Book service.

The RPC Client Access service handles all data connections for mailboxes and the Address Book Service handles all data connections for access to Active Directory. One notable exception is public folders. For public folder connections, clients connect to the RPC Client Access service on the Mailbox role, and not the Information Store.

How Does it work ?

  • Outlook client checks its configured settings and finds out  where to connect to get the user mail from ( This case it is  CAS ARRAY =
  • The DNS Server the client is talking too,  has A record matches the RPC Client Access Server
  • Each Database has attribute called RPCclientAccessServer which is equal to CAS ARRAY name. ( this is where the magic happens……)

so in this case as fallows.


Outlook clients start talking to CAS servers and CAS Servers will talk to MBX Servers behalf of outlook ( MAPI ) clients. Now if you pay attention you can see the beauty of this design and its benefits.

Example one: You do not have any HLB in your environment what are your supported options after configuring CAS ARRAY ?

Option 1, you have created CAR ARRAY called outlook.yourCompany.local and assigned this to unique IP Address some thing like this

Outlook.YourCompany.Local =

Now you have two CAS Servers


Now here is how I can configure CAS ARRAY and have all RPC Connections to go to CAS1 Server.

Outlook.YourCompany.Local =

Option 2,

Outlook.YourCompany.Local =  ( A Record in DNS)
Outlook.YourCompany.Local =  ( A Record in DNS)

As you can see half of the RPC connections go to CAS1 other Half will go to CAS2.

Of course there are problems with these configurations such as if CAS1 goes down, what happens to outlook client connected to CAS1 ? until these clients go back to their configured DNS and query Outlook.YourCompany.Local they wont get connected.

Option 3,  would be getting HLB ( Hardware load Balancer) and make more intelligent application base load balancing on the CAS Servers.

To create the Client Access server array……

New-ClientAccessArray -fqdn <FQDN_of_array> -site <SiteName>

To tag the existing databases

Set-MailboxDatabase <MailboxDatabaseName> –RpcClientAccessServer <Casarray>

To set for multiple databases:

Get-MailboxDatabase | Set-MailboxDatabase –RpcClientAccessServer


Oz Casey, Dedeal ( MVP north America)
MCSE 2003, M+, S+, MCDST
Security+, Project +, Server + (Blog) (Blog)


Leave a Comment »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a Reply

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

You are commenting using your 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

Blog at

%d bloggers like this: