Recipe 11.15 Listing the Servers

11.15.1 Problem

You want to list the server objects in the site topology.

11.15.2 Solution Using a graphical user interface
  1. Open LDP.

  2. From the menu, select Connection Connect.

  3. For Server, enter the name of a domain controller (or leave blank to do a serverless bind).

  4. For Port, enter 389.

  5. Click OK.

  6. From the menu, select Connection Bind.

  7. Enter credentials of a domain user.

  8. Click OK.

  9. From the menu, select Browse Search.

  10. For BaseDN, type the Sites container's DN (e.g., cn=sites,cn=configuration,dc=rallencorp,dc=com).

  11. For Scope, select Subtree.

  12. For Filter, enter (objectcategory=server).

  13. Click Run. Using a command-line interface
> dsquery server [-site <SiteName>] Using VBScript
' This code lists the server objects in the site topology.

set objRootDSE = GetObject("LDAP://RootDSE")
strBase    =  "<LDAP://cn=sites," & _
              objRootDSE.Get("ConfigurationNamingContext") & ">;"
strFilter  = "(objectcategory=server);" 
strAttrs   = "distinguishedName;"
strScope   = "subtree"

set objConn = CreateObject("ADODB.Connection")
objConn.Provider = "ADsDSOObject"
objConn.Open "Active Directory Provider"
set objRS = objConn.Execute(strBase & strFilter & strAttrs & strScope)
while Not objRS.EOF
    Wscript.Echo objRS.Fields(0).Value

11.15.3 Discussion

Each Active Directory domain controller is represented in the site topology by a server object that is associated with a specific site. Replication decisions are made based on links from this site to other sites that contain domain controllers.

Other types of services can also add server objects to the site topology. The way you can distinguish which ones are domain controllers is the presence of a NTDS Settings (nTDSDSA) object that is a child of the server object. Only domain controllers will have that object.

    Chapter 3. Domain Controllers, Global Catalogs, and FSMOs
    Chapter 6. Users
    Appendix A. Tool List