Purpose
You perform an AD Sync on an Active Directory Organizational Unit (OU) containing computer objects; and the OU is not listed in the domain.com PDQ Inventory Tree item.
NOTE: By default, PDQ Inventory does not list AD OUs that do not contain computer objects.
Resolution
PDQ Inventory only considers and enumerates objects as existing within an OU if they have the dNSHostName attribute set. For example, if a computer or set of computers have been pre-staged in the OU, those objects will not have the dNSHostName attribute.
You can manually check whether a computer has this attribute set by opening Active Directory Users and Computers (ADUC) and performing the following:
- Selecting the OU in question that contains computer objects.
- Right-click one on the computer objects and select Properties.
- Click on the Attribute Editor tab.
- Scroll down to the dNSHostName attribute. If the dNSHostName value is <not set> then the attribute does not exist.
You can also check this using PowerShell; here is an example:
Get-ADComputer -searchbase "OU=Accounting,OU=Finance,OU=HQ,DC=domain,DC=tld" -SearchScope 2 -filter 'ObjectClass -eq "Computer"' | Select -Expand DNSHostName
Notes
- Change the number and name of the OUs in the example to mirror your AD path. In the example above, "Accounting" is a sub-OU of "Finance", which is a sub-OU of "HQ".
- Change the DC to mirror your domain structure. For example, ad.bloop.example.com would be DC=ad,DC=bloop,DC=example,DC=com.
If no computers are listed when the PowerShell command is run, then no machine in that OU has the dNSHostName attribute set.
Add the pre-staged machines to the domain and the issue should be resolved upon the next AD Sync.
See Also
How To Synchronize Active Directory With PDQ Inventory
PDQ Inventory Active Directory Synchronization
dNSHostname Attribute
Set-ADComputer Cmdlet