Solución:
El siguiente Powershell no requiere acceso de administrador o de administrador de dominio, lo he probado como un usuario limitado en una estación de trabajo unida a un dominio con Powershell v2 / v3. No requiere herramientas de terceros ni módulos Powershell.
$dse = ([ADSI] "LDAP://RootDSE")
# Domain Controller Functional Level
$dse.domainControllerFunctionality
# Domain Functional Level
$dse.domainFunctionality
# Forest Functional Level
$dse.forestFunctionality
Los valores devueltos representarán un nivel funcional distinto:
Value Forest Domain Domain Controller
0 2000 2000 Mixed/Native 2000
1 2003 Interim 2003 Interim N/A
2 2003 2003 2003
3 2008 2008 2008
4 2008 R2 2008 R2 2008 R2
5 2012 2012 2012
6 2012 R2 2012 R2 2012 R2
7 2016 2016 2016
Referencias:
- [MS-ADTS] msDS-Behavior-Version: Nivel funcional del bosque
- [MS-ADTS] msDS-Behavior-Version: Dominio NC Nivel funcional
- [MS-ADTS] msDS-Behavior-Version: DC Functional Level
Solo una solución complementaria a la respuesta aceptada, ya que terminé aquí más o menos con la misma necesidad. La diferencia es que uno obtiene el nombre del nivel decodificado:
Import-Module ActiveDirectory
$ForestRoot="top.domain"
(get-adforest -identity $ForestRoot).ForestMode
(get-adforest -identity $ForestRoot).Domains |
ForEach-Object {Get-ADDomain -Identity $_ |
ft DNSRoot,DomainMode -AutoSize}
¿Solo quieres comprobarlo o cambiarlo? Cambiarlo requeriría ciertos derechos administrativos en el dominio / bosque.
La forma más fácil que se me ocurre sin dsquery o PS Get-ADDomain (que requeriría importar el módulo AD) es usar el comando ADFIND de Joeware.
http://www.joeware.net/freetools/tools/adfind/
adfind -rootdse domaincontrollerfunctionality domainfunctionality forestfunctionality
Salida de ejemplo de mi dominio:
AdFind V01.47.00cpp Joe Richards ([email protected]) Octubre 2012
Usando el servidor: DOMAIN-DC1.hahaha.local: 389
Directorio: Windows Server 2008 R2
dn:
dominioFuncionalidad: 4 [Windows Server 2008 R2 Domain Mode]
bosqueFuncionalidad: 4 [Windows Server 2008 R2 Forest Mode]
domainControllerFunctionality: 4 [Windows Server 2008 R2 Mode]
1 Objetos devueltos