8.10. Finding Computers with a Particular OS

Problem

You want to find computers that have a certain OS version, release, or service pack in a domain.

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 user to perform the search.

  8. Click OK.

  9. From the Menu, select Browse Search.

  10. For Base Dn, enter the base of where you want your search to begin.

  11. For Filter, enter a filter that contains the OS attribute you want to search on. For example, a query for all computers that are running Windows XP would be the following:

    (&(objectclass=computer)(objectcategory=computer)(operatingSystem=Windows XP 
    Professional))
  12. Select the appropriate Scope based on how deep you want to search.

  13. Click the Options button if you want to customize the list of attributes returned for each matching object.

  14. Click Run and the results will be displayed in the right pane.

Using a command-line interface

> dsquery * <DomainDN> -scope subtree -attr "*" -filter "(&(objectclass=[RETURN]
computer)(objectcategory=computer)(operatingSystem=Windows Server 2003))"

Using VBScript

' This code searches for computer objects that have Service Pack 1 installed.
' ------ SCRIPT CONFIGURATION ------
strBase    =  "<LDAP://" & "<DomainDN>" & ">;" ' ------ END CONFIGURATION --------- strFilter = "(&(objectclass=computer)(objectcategory=computer)" ...

Get Active Directory Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.