Adds an IPv4 failover relationship on the DHCP server service.
Networking / Security · Risk: High · Documentation Verified
Last verified: 2026-10-26
Microsoft DhcpServer reference: Adds an IPv4 failover relationship on the DHCP server service. The syntax and selected example below are adapted from the pinned Windows Server 2025 reference. Module availability, target configuration and delegated permissions determine whether it can run in your environment. Documentation and parameter text: Microsoft, CC BY 4.0; formatting adapted by Cmdlet World. No execution testing is claimed.
Use an account with the target resource permissions documented for Add-DhcpServerv4Failover. Modifying administrative cmdlets may require elevation or delegated administration. This catalog does not assert that ordinary users can execute the command.
Supported environments
Windows / DhcpServer · Windows Server 2025 documentation; feature/module prerequisites apply
Parameters
-AsJob
Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete. The cmdlet immediately returns an object that represents the job and then displays the command prompt. You can continue to work in the session while the job completes. To manage the job, use the *-Job cmdlets. To get the job results, use the Receive-Job cmdlet. For more information about Windows PowerShell® background jobs, see about_Jobs.
-AutoStateTransition
Specifies the enabled state for automatic state transition from the COMMUNICATION INTERRUPTED state to the PARTNER DOWN state based on expiration of the timer, using the *StateSwitchInterval* parameter, while in the COMMUNICATION INTERRUPTED state. The acceptable values for this parameter are: True or False. The default value is False. If the *StateSwitchInterval* parameter is specified, this parameter is automatically set to True.
-CimSession
Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.
-ComputerName
Specifies the DNS name, or IPv4 or IPv6 address, of the target computer that runs the DHCP server service.
-Confirm
Prompts you for confirmation before running the cmdlet.
-Force
Specifies that, if the *SharedSecret* parameter is specified, the user confirmation is required because the *SharedSecret* parameter value may be transferred in plain text transport for remote management. Specifying this parameter turns off the user confirmation.
-LoadBalancePercent
Specifies the percentage of DHCP client requests which should be served by the local DHCP server service or the DHCP server service that runs on the computer specified in the *ComputerName* parameter. The remaining requests would be served by the partner DHCP server service. The default value is 50%.
-MaxClientLeadTime
Specifies the maximum client lead time for the failover relationship. The default value is 1 hour.
-Name (required)
Specifies the name of the failover relationship to create.
-PartnerServer (required)
Specifies the IPv4 address, or host name, of the partner DHCP server service with which the failover relationship is created.
-PassThru
Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.
-ReservePercent
Specifies the percentage of free IPv4 addresses in the IPv4 address pool of the scope which should be reserved on the standby DHCP server service. In the case of a failover, the IPv4 address from this reserved pool on the standby DHCP server service will be leased to new DHCP clients. The default value is 5.
-ScopeId (required)
Specifies the scope identifiers, in IPv4 address format, which are to be added to the failover relationship.
-ServerRole
Specifies the role of the local DHCP server service in the hot standby mode. The acceptable values for this parameter are: Active or Standby. The default value is Active for the local DHCP server service, such as the partner DHCP server service that is specified will be a standby DHCP server service.
-SharedSecret
Specifies the shared secret to be used for message digest authentication. If not specified, the message digest authentication is turned off.
-StateSwitchInterval
Specifies the time interval for which the DHCP server service operates in the COMMUNICATION INTERRUPTED state before transitioning to the PARTNER DOWN state.
-ThrottleLimit
Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Prerequisites
Windows with the DhcpServer module and the Windows feature or management tools that provide it. Confirm target connectivity and version compatibility using the linked Microsoft reference.
Security considerations
This cmdlet changes system state. Review every target and parameter in the official reference, test outside production, and prepare an appropriate backup or rollback. Do not execute the example automatically.
Examples
Example 1: Create an active-active failover relationship
This example creates a load balance, or active-active, failover relationship between the DHCP server services that runs on the computers named dhcpserver.contoso.com and dhcpserver2.contoso.com with the scopes 10.10.10.0 and 10.20.20.0 present on the DHCP server service that runs on the computer named dhcpserver.contoso.com added to the failover relationship. These scopes will be created on the partner DHCP server service that runs on the computer named dhcpserver2.contoso.com as part of the failover relationship creation. Message authentication is enabled for the server-to-server message exchange with the specified shared secret. Source: Microsoft, CC BY 4.0; transcript prompt/output removed. This example was not executed.