Which of my servers is the Global Catalog?

  • Thread starter Thread starter Courtney Regan
  • Start date Start date
C

Courtney Regan

Yes, this q may indicate my stupidity level at this time of night, so bear
with me....


We have 5 Windows 2000 servers. 3 of them are Domain Controllers. Trying
to figure out which one is the Global Catalog server. Can the GC ONLY be on
a domain controller? Is there a setting I can look for, that would tell me
that the GC is on 'X' server?

Unfortunately, the sys admin at the company doesn't remember which one its
installed on. So is there a relatively easy way?

Thanks
 
Hi,

Only Domain Controllers can be Global Catalog servers. Here is a VBScript
program that determines if a specified DC is also a GC:
===============
Option Explicit
Dim strDC, objRootDSE, strDSServiceDN, objDSRoot, blnOptions

strDC = "MyServer"

Set objRootDSE = GetObject("LDAP://" & StrDC & "/RootDSE")
strDSServiceDN = objRootDSE.Get("dsServiceName")

Set objDSRoot = GetObject("LDAP://" & strDC & "/" & strDSServiceDN)
intOptions = objDSRoot.Get("options")

If (intOptions = 0) Then
Wscript.Echo "DC " & strDC & " is NOT a global catalog server"
Else
Wscript.Echo "DC " & strDC & " is a global catalog server"
End If
===============
You can also use a tool like ADSI Edit on the DC to check the "options"
attribute. Navigate to

cn=NTDS Settings,dc=MyServer,cn=Servers,cn=My
Site,cn=Sites,cn=Configuration,dc=MyDomain,dc=com

where "MyServer" is your DC, "My Site" is the name of your site, and
"dc=MyDomain,dc=com" is your domain. Right click this object, select
properties, and under optional properties view the "options" attribute. A
value of 0 means the DC is a not a GC, any other value (such as 1) means the
DC is a GC.
 
Another way to determine whether or not a server is a GC is through Active
Directory Sites and Services. Open the tool by clicking Start ->
Administrative Tools -> Active Directory Sites and Services. Expand "Sites"
and expand your local site name (probably called Default First Site). Expand
"Servers" and expand the server name. Right-click on "NTDS Settings" and
choose "Properties." If the checkbox next to "Global Catalog" is checked,
then it is a global catalog.
 
Actually none of those mechanisms listed (they are actually all using the same
info source, just different ways to see it) is completely accurrate. That will
show DCs that are "supposed" to be GCs. For instance, someone could have just
told a DC to become a GC and the options attribute would be set, that is how the
DC is told to become a GC.... So that value could be set and the DC is still not
a GC.

To truly verify, you should look at the RootDSE attribute isGlobalCatalogReady.
If it is false, the machine is not a global catalog, though it may be in the
process of becoming one.

A second, even easier method is to try and return any RootDSE attribute from the
GC port of the DC.

joe
 
I like to use LDP.exe

from a command prompt type LDP and press enter
Click on Connection
choose Connect
type in the server name
click ok
You should see something similar to this at the bottem
1> isSynchronized: TRUE;
1> isGlobalCatalogReady: TRUE;
1> domainFunctionality: 2 = (

The isGlobalCatalogReady:True means it is a GC. If it said false it would
not be a GC.

Joel Richards gave this advice already.
This just an easy way to see the attribute.
 
Even faster, download adfind and do

adfind -h dc_name -b -s base isglobalcatalogready



F:\DEV\cpp\ShrFlgs>adfind -h 2k3dc01 -b -s base isglobalcatalogready

AdFind V01.26.00cpp Joe Richards ([email protected]) February 2005

Using server: 2k3dc01.joe.com
Directory: Windows Server 2003

dn:
isGlobalCatalogReady: TRUE


1 Objects returned
 
nltest /dsgetdc:domain.net /gc

Joe Richards said:
Even faster, download adfind and do

adfind -h dc_name -b -s base isglobalcatalogready



F:\DEV\cpp\ShrFlgs>adfind -h 2k3dc01 -b -s base isglobalcatalogready

AdFind V01.26.00cpp Joe Richards ([email protected]) February 2005

Using server: 2k3dc01.joe.com
Directory: Windows Server 2003

dn:


1 Objects returned
 
Back
Top