How to Raise Active Directory Domain and Forest Functional Level?

The functional level of the Active Directory domain and forest determines the available features that can be used in the domain, and the Windows Server version you can use on domain controllers.

For example, if you have Windows Server 2016 domain controllers, and the domain functional level is only Windows Server 2003, you won’t be able to use the Active Directory Recycle Bin (introduced in the AD version in Windows Server 2008 R2). In this article, we’ll show you how to raise your Active Directory domain and forest functional level from Windows Server 2012 R2 to Windows Server 2016.

How to Check the Domain and Forest Functional Levels?

You can check the current domain and forest functional level using the Active Directory Domains and Trusts mmc snap-in (domain.msc). Open your domain properties. Domain and forest functional levels are listed on the General tab. In our case, this is Windows Server 2012 R2.

raise domain functional level

You can display the current domain functional level (DFL) using PowerShell:

Get-ADDomain | fl Name, DomainMode

Windows2012R2Domain

Now let’s check the forest functional level (FFL):

Get-ADForest | fl Name, ForestMode

Windows2012R2Forest

raise forest functional level

How to Raise Active Directory Domain and Forest Functional Levels?

Before raising the domain and forest functional level, you need to upgrade the Windows Server version on all domain controllers to Windows Server 2016. You can use an in-place upgrade (not recommended), or install additional domain controllers with Windows Server 2016, and correctly remove legacy DC versions from your Active Directory environment.

Check and ensure what AD replication is working properly in your domain and forest. You can check the Active Directory replication health using the repadmin tool or with PowerShell:

Repadmin /replsummary

Repadmin /Showrepl

Get-ADReplicationFailure -Target theitbros.com -Scope Domain

Get-ADReplicationFailure -Target theitbros.com -Scope Forest

Hint. When you upgrade the domain functional level from Windows Server 2003 to a newer version, the password for the krbtgt account will be forcibly reset. This can affect the availability of Exchange services. Also, remember to migrate AD replication in the domain from FRS to Distributed File Service (DFS) replication.

To raise the functional level of a domain, you can run the mmc snap-in Active Directory Domains and Trusts. Right-click on the domain name, and select Raise Domain Functional Level.

raise forest functional level 2016

In the window that opens, select the functional level Windows Server 2016, and click the Raise button.

how to raise domain functional level

Before you can raise the forest functional level, all domains in the forest must be upgraded to the same or a higher domain functional level. To raise the functional level of a forest, you must be a member of the Enterprise Admins group. The Active Directory Domains and Trusts snap-in is also used to raise the functional level of the forest.

Right-click on the root of the snap-in, and select Raise Forest Functional Level.

In the next windows, select the required functional forest level, and click the Raise button.

Important! The domain and AD forest functional level upgrade cannot be reversed.

Now when you open the Raise Forest Functional Level window again, a message will appear:

This forest is operating at the highest possible functional level.

how to raise forest functional level

Raise Domain and Forest Functional Levels with PowerShell

You can also raise the domain functional level using PowerShell. The following command is used:

Set-ADDomainMode -identity theitbros.com -DomainMode Windows2016Domain

Wait for AD replication to complete and verify that all domain controllers report the domain functional level is now Windows2016Domain.

To raise the functional level of the forest, another command is used:

Set-ADForestMode -Identity theitbros.com -ForestMode Windows2016Forest

Even though Windows Server 2019 and 2022 are now available, no new domain functional levels have been added in these OS versions. Even if you upgrade all domain controllers to Windows Server 2022, you will still be using Windows Server 2016 as the most recent domain and forest functional levels.

Cannot Raise the Domain or Forest Functional Level

In this section, we will collect some of the errors that may occur when raising the Active Directory functional level.

ERROR_DS_DOMAIN_VERSION_TOO_LOW 8566 (0x2176)

When updating the domain functional level, the following error may appear:

You cannot raise the domain functional level because this domain includes Active Directory Domain Controllers that are not running the appropriate version of Windows Server.

raise domain and forest functional level

The error means that there are domain controllers in your domain with a previous version of Windows Server. You can get a full list of domain controllers versions in AD using the Get-ADDomainController PowerShell cmdlet:

Get-ADDomainController -Filter * | Select-Object Name, OperatingSystem

Find domain controllers with a previous version of Windows Server and upgrade them to at least Windows Server 2016 or remove (demote) their accounts from AD and clean up Active Directory metadata and AD Site configuration.

ERROR_DS_FOREST_VERSION_TOO_LOW 8565 (0x2175)

The following error is similar to the previous one, only related to the presence of previous versions of domain controllers in the AD forest:

The version of the operating system installed on this server no longer supports the current AD DS Forest functional level or AD LDS Configuration Set functional level. You must raise the AD DS Forest functional level or AD LDS Configuration Set functional level before this server can become an AD DS Domain Controller or an AD LDS Instance in this Forest or Configuration Set.

ERROR_DS_NO_BEHAVIOR_VERSION_IN_MIXEDDOMAIN 8569 (0x2179)

This error may appear if your domain is running in mixed mode:

The forest functional level cannot be raised to the requested value since one or more domains are still in mixed domain mode. All domains in the forest must be in native mode, for you to raise the forest functional level.

Mixed mode allows Windows NT and 2000 backup domain controllers to co-exist in a domain. To fix the problem, you need to switch the domain to Native mode. To do this, open the Active Directory Domains and Trusts console (domain.msc), expand your domain and open its Properties. Go to the General tab and click Change Mode.

I enjoy technology and developing websites. Since 2012 I'm running a few of my own websites, and share useful content on gadgets, PC administration and website promotion.

5 comments

  1. Set-ADForestMode -Identity theitbros.com -ForestMode Windows2016Forest
    nicht Set-ADForestMode -Identity theitbros.com -ForestMode Windows2016Domain oder?

  2. The command should look like the following
    Set-ADForestMode -Identity theitbros.com -ForestMode Windows2016Forest

  3. The correct cmdlet to raise the domain functional level is:

    Set-ADDomainMode -identity theitbros.com -DomainMode Windows2016Domain

  4. Thanks for your instruction.

    Also, you said that the “Exchange service will be affected” with krbtgt reset when do the upgrade from 2003 level, may I ask how can we prevent it?

  5. Hello,
    I have Server 2008r2 level and I want to move to Server 2012r2 Level.
    does my Exchange Server 2016 will be affected?.
    what are the risks ?
    Regards

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.