Skip to content

Windows Server DHCP Scopes and Failover Operations

Use this workflow to inspect Windows DHCP scopes, plan a small change, and verify a failover relationship. Examples use documentation-only subnets. A DHCP scope controls address leases and options for a subnet; changing it can disconnect clients or hand out incorrect gateway and DNS settings.


01

Inventory the DHCP Server and IPv4 Scopes

Read First

Run the DHCP Server module from an elevated administrative session with the required network permissions. Confirm the server name and authorization before making changes. Remote commands can use -ComputerName.

Terminal window
Get-WindowsFeature DHCP
Get-DhcpServerInDC
Get-DhcpServerv4Scope -ComputerName 'dhcp01.lab.example' |
Format-Table ScopeId, Name, State, StartRange, EndRange, SubnetMask
❯ View Expected Console Output
ScopeId Name State StartRange EndRange SubnetMask
------- ---- ----- ---------- -------- ----------
192.0.2.0 Lab-Clients Active 192.0.2.50 192.0.2.200 255.255.255.0
Windows Server DHCP console showing address leases in the Lab-Clients IPv4 scope

DHCP MMC: Inspect active leases in the selected IPv4 scope.


02

Review the Pool, Exclusions, Reservations, and Options

Scope Design

Check whether planned addresses overlap with static infrastructure. Inspect exclusions, reservations, lease duration, and options such as router (003), DNS servers (006), and DNS domain name (015). Confirm the option values with the network and DNS owners.

Terminal window
$server = 'dhcp01.lab.example'
$scope = '192.0.2.0'
Get-DhcpServerv4ExclusionRange -ComputerName $server -ScopeId $scope
Get-DhcpServerv4Reservation -ComputerName $server -ScopeId $scope
Get-DhcpServerv4OptionValue -ComputerName $server -ScopeId $scope
Get-DhcpServerv4Lease -ComputerName $server -ScopeId $scope |
Select-Object -First 10 IPAddress, HostName, ClientId, AddressState
❯ View Expected Console Output
OptionId Name Value
-------- ---- -----
3 Router {192.0.2.1}
6 DNS Servers {192.0.2.10, 192.0.2.11}
15 DNS Domain {lab.example}

03

Plan a Change Around the Subnet

Change Plan

Document the network ID, mask, usable pool, exclusions, reservations, lease duration, gateway, DNS servers, relay path, and rollback. For a new scope, validate that no other DHCP server serves the same subnet and that routing/relay is ready. Do not copy the sample values directly into a live network.

Terminal window
# Read the exact scope being changed immediately before the window.
Get-DhcpServerv4Scope -ComputerName $server -ScopeId $scope | Format-List *
Get-DhcpServerv4OptionValue -ComputerName $server -ScopeId $scope
❯ View Expected Console Output
Compare scope settings with the approved change record and address plan.

04

Inspect Failover and Replicate Deliberately

High Availability

Windows DHCP failover shares IPv4 scope settings and lease state between two partner servers. Check the relationship before changing it. After editing a failover-enabled scope, replication is a separate operation; initiate it from the server whose settings should win because partner settings are overwritten.

Terminal window
Get-DhcpServerv4Failover -ComputerName $server
# After an approved scope change, replicate only that scope from the
# authoritative partner. Confirm the partner and scope ID first.
Invoke-DhcpServerv4FailoverReplication `
-ComputerName $server `
-ScopeId $scope `
-Force
Get-DhcpServerv4FailoverStatistics -ComputerName $server
❯ View Expected Console Output
Review relationship state and confirm the intended scope is synchronized.

Further reading: DHCP failover overview and Replicate DHCP failover settings.

Comments