Step-by-Step: DHCP High Availability with Windows Server 2012 R2

Hello Folks,

If you use the DHCP Role to provide IP addresses to your clients but don’t have a solid monitoring solution (System Center Operations Manager) you probably find out your DHCP server is down when all your customer start calling the help desk. And considering how business is more than ever about being connected and having access to the services and the data you need to get the job done. Any downtime is not a good thing.

Server 2012 logo

In this Step-By-Step, we’ll take a look at setting up DHCP failover using Windows Server 2012 R2 which can be downloaded here. As always you can use the info in this post to setup your lab. (It was originally written for 2012 but the same steps work for 2012 R2)

In previous Windows versions like Windows Server 2008 R2 and Windows Server 2003, you have two options to make DHCP highly available:

  • DHCP in a Windows failover cluster. This option places the DHCP server in a cluster with an additional server configured with the DHCP service that assumes the load if the primary DHCP server fails. The clustering deployment option uses a single shared storage. This makes the storage a single point of failure, and requires additional investment in redundancy for storage. In addition, clustering involves relatively complex setup and maintenance.
  • Split scope DHCP. Split scope DHCP uses two independent DHCP servers that share responsibility for a scope. Typically 70% of the addresses in the scope are assigned to the primary server and the remaining 30% are assigned to the backup server. If clients cannot reach the primary server then they can get an IP configuration from the secondary server. Split scope deployment does not provide IP address continuity and is unusable in scenarios where the scope is already running at high utilization of address space, which is very common with Internet Protocol version 4 (IPv4).

Those were good, but not great solutions. In Windows Server 2012 DHCP Failover enables administrators to deploy a highly resilient DHCP service to support your business without the challenges of the 2 options discussed above. It provide DHCP service availability at all times on the enterprise network. If a DHCP server is no longer reachable, the DHCP client is able to extend the lease on its current IP address by contacting another DHCP server on the enterprise network.

DHCP failover architecture

There are also 2 way of making the DHCP role highly available. You can set it up your failover partners in hot standby mode or in load sharing mode.

Hot standby mode

In hot standby mode, an active server is responsible for providing IP addresses and configuration information to all clients in a scope or subnet and the secondary server assumes the responsibility if the primary server becomes unavailable. (Your Primary can also be the secondary for another scope and/or subnet which make this arrangement very well suited for environment where a central office or data center server acts as a standby backup server to a server at a remote site (ex: hub and spoke deployment).

Load sharing mode

In a load sharing mode, which is the default mode and the one we will setup in our lab, the two servers simultaneously serve IP addresses and options to clients on a given subnet. The client requests are load balanced and shared between the two servers.

I started with my lab where I have 4 servers and 3 client machines

  1. DC1 (Domain Controller, DNS, File & Storage Services)
  2. Lab-srv-1 (Cluster Node 1)
  3. Lab-srv-2 (Cluster Node 2)
  4. Lab-srv-3 (DHCP, System Center)
  5. X201 (Windows 7 client)
  6. Proman-RT (Windows 8.1 RT client)
  7. Lab-pc-1 (Windows 8.1 client)

(For this Step-By-Step I will assume you already have a DHCP server already providing addresses to your clients.)

We will install the DHCP role on DC1 and make it highly available.

  1. In Server Manager, under Manage, click Add Roles and Features.
  2. In the Add Roles and Features Wizard, click Next twice and then ensure that you are installing the role on DC1, and then after clicking Next again, on the Select server roles page select the DHCP Server checkbox.
  3. When you are prompted to add required features, click Add Features.
  4. Click Next three times, and then click Install.
  5. Wait for the installation process to complete, under the Notification area click Complete DHCP configuration.
  6. In the DHCP Post-Install Configuration wizard, click Next in the Description page, Commit in the Authorization page and then Close to complete the installation.

To configure DHCP on (Our scope is already created on Lab-srv-3)

  1. On the Server Manager menu bar, click Tools and then click DHCP.
  2. Right Click DHCP and select Add Server
  3. Type the name of the other DHCP server already on your network in our case Lab-srv-3
  4. In the DHCP console tree on the server that already has the configured scope Lab-srv-3, navigate to IPv4. Right-click IPv4 and then click Configure Failover.
  5. In the Configure Failover wizard, review the available subnets and check the select all box and click Next.
  6. In the specify the Failover partner screen click the Add Server button, and type the name of the partner in the “This Server” field. In our case DC1 and click ok and Next
  7. In the Create a new failover relationship, validate the info already populated. Leave all settings as default including the Mode drop box that is setup as ‘load Balance” andenter a Shared Secret password or code. In our case enter P@ssw0rd, click Next
  8. Click Finish to complete the configuration
  9. Review the confirmation screen and click Close.

That’s it you are done. Now if either lab-srv-3 or DC1 fails the clients on my network will continue to receive their IP configuration information from a DHCP server.

For more information on this subject you can refer to the TechNet page.

And as always I encourage you to get the preview of Windows Server 2012 R2 here and try it for yourself.



Pierre Roman, MCITP, ITIL | Technology Evangelist
Twitter | Facebook | LinkedIn