There a quite a few ways of finding the Fuctional levels of Active Directory. Dsquery is a good option as it usually is distributed with windows. This will give you the Domain Functional Level:

dsquery * DC=DOMAIN, DC=LOCAL -scope base -attr msDS-Behavior-Version ntMixedDomain

Replace DOMAIN and LOCAL with your directory details. You can check the result with the following table: 0, 0 Windows 2000 Native domain Level 0, 1 Windows 2000 Mixed domain Level 2, 0 Windows 2003 Domain Level 3, 0 Windows 2008 Domain Level 4, 0 Windows 2008 R2 Domain Level To find the Active Directory Schema Version:

dsquery * CN=Schema,CN=Configuration,DC=DOMAIN, DC=LOCAL -scope base -attr objectversion

Remember to replace DOMAIN and LOCAL with your AD details. Lookup the results with: 13 Windows 2000 30 Windows 2003 31 Windows 2003 R2 44 Windows 2008 47 Windows 2008 R2 Probably the easiest option tool to use to find this information is Adfind:

adfind -sc modes

This will will look something like this: AdFind VJoe Richards ([email protected]) February 2011 Using server: DOMAIN.LOCAL:389 Directory: Windows Server 2003 dn: < domainControllerFunctionality: 2 [Windows Server 2003 Mode] < domainFunctionality: 2 [Windows Server 2003 Domain Mode] < forestFunctionality: 0 [Windows 2000 Forest Mode] 1 Objects returned You can also use Adfind to show the schema version:

adfind -sc schver