Exchange admins are a bit confused when it comes to DAC mode. Though most of the them know that it has to be used in most scenarios when deploying Exchange 2010 SP1, they are not sure as to what the function of DAC mode is.
DAC stands for Datacentre Activation Coordination and it works using a new protocol named Datacentre Activation Coordination Protocol (DACP). With Exchange 2010 SP1, all kind of DAG deployments can use DAC mode, even one that has just two DAG members. DAC mode was designed to avoid the “split brain syndrome” that will occur in one particular scenario of datacentre switchover. Let me explain the scenario with the help of an example. (The images used are from TechNet video presented by Scott Schnoll). I have two datacentres with two DAG members in each datacentre. The primary datacentre has the file share witness (hub server) and everything works as normal.
My primary datacentre goes down, let’s say due to a power outage. Both my DAG members and the hub server hosting FSW goes offline. Along with that, my WAN connection goes down as well. This will cause my entire DAG to fail, as there are only 2 DAG members online out of the five in the cluster (4 mailbox servers and one HUB server hosting FSW).
In this scenario, I try to restore the DAG in the secondary datacentre by using an alternate witness server (hub server in 2nd datacentre). Both mailbox servers in the 2nd datacentre comes online as there are now 3 members online (out of 5). Everything works as expected and I am happy.
Let’s say that the power in my primary datacentre gets restored and both my mailbox servers and primary witness server comes online. The servers will come online before the network devices (which is how it is usually). Now, my WAN connection is still down and Exchange servers in both datacentres are up and running. My secondary datacentre has already been activated to serve the clients manually. But, since there are three servers online (out of the 5) in the primary datacentre as well (2 mailbox and 1 hub), the mailbox servers will try to activate databases as well (or will it?). This will lead to both DCs hosting same databases, which cannot and should not happen. DAC mode was developed to make sure that this doesn’t happen.
Now, how does DAC mode make sure that the servers in my primary datacentre doesn’t mount databases when the power is restored? When DAC mode is enabled, it changes the way Active Manager works. When a DAG member gets restarted or when the Exchange Replication service is restarted (when DAC mode is enabled), it sets the DACP bit (in MSExchangeRepl.exe) to zero (which means that it can’t mount any database). Active Manager can only mount a database in only two conditions.
- If it can communicate with all other DAG members, in both datacentres (which won’t be possible in our case as the WAN link is down).
- If it can communicate with atleast one DAG member which has DACP bit set to one (which is a DAG member that is serving clients). In our case, these are the servers in the secondary DC. But, as the WAN connection is down, this won’t be possible.
Hence, our mailbox servers in the primary datacentre won’t mount databases, as the DACP bit will be set to zero, while the servers in the secondary datacentre will continue to work.
This is the only scenario for which DAC mode was designed – to make sure that DAG members won’t mount databases when power gets restored in the primary datacentre, while secondary datacentre is “active” and WAN connection is down.
Once the WAN connection is restored, DAG members in primary datacentre can communicate with all other DAG members and see that the databases are already mounted in the secondary DC & they won’t mount any database, which is the normal behaviour.
Hope this clear the confusion around DAC mode.





Kranthi March 1, 2012 at 2:16 pm
Good Work. Found it really informative.
Thanks
Rajith Enchiparambil March 5, 2012 at 1:34 pm
Thanks
uh60flyinlow March 30, 2012 at 12:14 pm
Outstanding Sir. I understand it, but I’ve been searching for a way to explain it to the “smarter” people who sit a few IT seats higher. This should bring it down to their level. Thanks a million.
Rajith Enchiparambil March 30, 2012 at 3:06 pm
Glad to help.
Akash Phoenix May 12, 2012 at 7:50 pm
A great article!!! Very clear description. Wherever the pics are from but they fit perfect to this article!!! Will surely add this link in my blog.
Rajith Enchiparambil May 16, 2012 at 8:37 am
Thanks Akash.
Vik June 9, 2012 at 9:53 pm
Great job! Very nicely explained.
Rajith Enchiparambil June 26, 2012 at 2:05 pm
Thanks Vik.
Anant July 23, 2012 at 5:18 pm
Thanks a lot
Rajith Enchiparambil July 26, 2012 at 9:04 am
My pleasure Anant.
kochumon Nair October 7, 2012 at 5:08 pm
good explanation, thanks for posting this.
Rajith Enchiparambil October 7, 2012 at 9:23 pm
Thanks Kochumon.
Hernan October 8, 2012 at 2:54 am
Impressively simple yet technical explaination. Congratulations, thank you!
Rajith Enchiparambil October 9, 2012 at 12:43 pm
Thanks Hernan.
Ravinder Gill October 25, 2012 at 7:19 am
Great Rajith, far better article then on Microsoft site…very easy and itself explanable article. Thanks a lot.
Rajith Enchiparambil October 30, 2012 at 9:38 pm
Thanks Ravinder.
Annie October 25, 2012 at 1:45 pm
One confusion, at one place you said : “Active Manager can only mount a database in only two conditions.”
1.If it can communicate with all other DAG members, in both datacentres (which won’t be possible in our case as the WAN link is down).
2.If it can communicate with atleast one DAG member which has DACP bit set to one (which is a DAG member that is serving clients). In our case, these are the servers in the secondary DC. But, as the WAN connection is down, this won’t be possible.
and at last you said :
Once the WAN connection is restored, DAG members in primary datacentre can communicate with all other DAG members and see that the databases are already mounted in the secondary DC & they won’t mount any database.
Please understand me.
Rajith Enchiparambil October 30, 2012 at 9:40 pm
Where are you getting confused Annie?
Ezakial December 19, 2012 at 10:20 am
Awesome!! Good explanation.
Rajith Enchiparambil February 1, 2013 at 8:39 am
Thanks Ezakial.