Registrations are now open. Join us today!
There is still a lot of work to do on the wiki yet! More information about editing can be found here.
Already have an account?

Microsoft KB Archive/247262

From BetaArchive Wiki
Knowledge Base

How DSAccess Detects DCs, Global Catalog Servers, and Configuration DCs in a Domain

PSS ID Number: 247262

Article Last Modified on 7/3/2003

The information in this article applies to:

  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange 2000 Server

This article was previously published under Q247262


This article explains the process by which the DSAccess component detects and lists the domain controllers, global catalog servers, and configuration domain controllers that are available to it in a domain.


The first domain controller in a domain always doubles as a global catalog server, by default. You must manually assign the global catalog functionality to other domain controllers that you add to the domain if you need additional global catalog servers. DSAccess makes a distinction between domain controllers that are global catalog servers, and those that are not. DSAccess codes this distinction in terms of "purity"; a server that functions only as a domain controller is classified as a "pure" domain controller. DSAccess is the only Exchange component to use this classification, which enables DSAccess to categorize the domain controllers, global catalog servers, and configuration domain controllers that are available to it.

The purity distinction is not true for a global catalog server because for a server to be a global catalog server, it has to be a domain controller.

You can see the purity distinction that DSAccess makes in the startup detection process, which you can track by using trace files. In a topology with a single domain controller (for example, ServerA) in the domain, the domain controller doubles as a global catalog server.

NOTE: The first domain controller in a forest is automatically a global catalog server, but the first domain controller in a domain is not automatically a global catalog server. It also assigns the same computer to be the configuration domain controller. Therefore, in such a situation, you can expect to see the following:

DC detected:
GC detected:
Config DC detected:

If, however, a new domain controller (for example, ServerB) is introduced in this domain, the detection process indicates that DSAccess initialization will not list the first domain controller as a possible option. Continuing the preceding example, we see the following:

DC detected:
GC detected:
Config DC detected:

Take special note of the fact that even though ServerA is a domain controller, it is not listed by DSAccess as one of the possible choices for an available domain controller. The same is also true for configuration domain controller detection.

The logic for the detection process is that if no explicit domain controllers are available, any available global catalog servers are used in their domain controller role. Therefore, with just a single server doubling as a domain controller and global catalog server, you see that server being used as both a domain controller and as a global catalog server. If you add a second domain controller (which is not a global catalog server), the topology has a "pure" domain controller, and DSAccess ignores the other server in its listing of domain controllers. The configuration domain controller is chosen from the list of domain controllers.

Additional query words: XCON

Keywords: kbinfo KB247262
Technology: kbExchange2000Search kbExchange2000Serv kbExchange2000ServSearch kbExchangeSearch kbExchangeServ2003Ent kbExchangeServ2003Search kbExchangeServ2003St