A DHCP reservation gives a client a fixed IPv4 address while DHCP still supplies its other network settings. You’ll create a reservation on a Windows Server 2025 scope, then check the server entry and the address the client receives.
The example uses documentation-only addresses and a sample client identifier. Replace them with your network’s values before you start.
What Is a DHCP Reservation?
A Dynamic Host Configuration Protocol (DHCP) reservation links an IPv4 address in a scope to a client identifier, usually the adapter’s MAC address. It’s useful for a printer, Raspberry Pi, or NAS that needs a stable address plus DHCP-supplied gateway and DNS settings.
An exclusion keeps an address out of ordinary dynamic assignment. It doesn’t link the address to a client. A manually configured static address lives on the device; the device doesn’t request that address from DHCP. Neither proves that a reservation exists.
Prerequisites
- Windows Server 2025 with the DHCP Server role installed and an active IPv4 scope. This guide assumes both are in place. See Microsoft’s DHCP installation and configuration guide if you still need them.
- An account that can manage DHCP on that server, plus an elevated PowerShell session or the DHCP console.
- A DHCP server authorized in Active Directory, if it serves an Active Directory domain.
- The scope that serves the client, an address in that scope’s configured distribution range, and the identifier of the interface requesting the lease.
- Access to the client’s network settings and a way to renew its lease. Renew locally or through an out-of-band connection: releasing a lease can cut off a remote session.
The example uses a Windows Server 2025 DHCP server named DHCP01.example.test. Its scope is 192.0.2.0, the planned address is 192.0.2.100, and the client identifier is 02-00-5E-10-00-01. These values are illustrative.
Step-by-Step Guide: Create and Verify a Windows Server 2025 DHCP Reservation
Step 1: Confirm the DHCP server and intended scope
On the server, open Server Manager > Tools > DHCP. Expand the server, then IPv4, and select the scope that serves the client. Note its network address and address range. Find Address Leases and Reservations under that scope.
Do not use 192.0.2.0/24 or the sample identifiers on a production network; replace every example value. In an elevated PowerShell session on the DHCP server, list the scopes:
Get-DhcpServerv4Scope | Format-Table ScopeId, StartRange, EndRange, State
Example output:
ScopeId StartRange EndRange State
——- ———- ——– —–
192.0.2.0 192.0.2.50 192.0.2.200 Active
If the server belongs to an Active Directory domain, check its authorization:
Get-DhcpServerInDC | Format-Table DnsName, IPAddress
The list should include the server you’re managing. If it doesn’t, fix the authorization before you rely on it to serve clients. A standalone DHCP server outside Active Directory doesn’t use this check.
Step 2: Identify the client and check for conflicts
On the Windows client, open Command Prompt and run:
ipconfig /all
Find the adapter connected to the target network. Record its Physical Address, DHCP Enabled, IPv4 Address, and DHCP Server. Use the adapter that requests the lease; Ethernet and Wi-Fi have different identifiers. Randomized Wi-Fi hardware addresses can change the identifier later.
Example fields:
Physical Address. . . . . . . . . : 02-00-5E-10-00-01
DHCP Enabled. . . . . . . . . . . : Yes
IPv4 Address. . . . . . . . . . . : 192.0.2.74
DHCP Server . . . . . . . . . . . : 192.0.2.10
In the DHCP console, select Address Leases under the intended scope. If the client has a lease, compare its identifier with the adapter’s. Check whether the planned address appears under Address Leases or Reservations. Check your address inventory for devices with manually set addresses too. An absent lease doesn’t prove an address is free.
You can inspect leases in PowerShell:
Get-DhcpServerv4Lease -ScopeId 192.0.2.0 |
Format-Table IPAddress, ClientId, HostName, AddressState
Expect a list of current lease records for that scope. If 192.0.2.100 belongs to another client, investigate and choose another address. Microsoft’s DHCP scopes documentation covers ranges and exclusions.
Step 3: Create one reservation with PowerShell
Use this method or the console method in Step 4 for the same client. Create the reservation once.
In the elevated PowerShell session, replace the four example values with the server, scope, free address, and client identifier you checked. -ScopeId takes the scope’s network address. -IPAddress sets the reserved address. -ClientId sets the identifier DHCP must match. -Name labels the entry.
$dhcpServer = 'DHCP01.example.test'
$scopeId = '192.0.2.0'
$reservedIp = '192.0.2.100'
$clientId = '02-00-5E-10-00-01'
Add-DhcpServerv4Reservation `
-ComputerName $dhcpServer `
-ScopeId $scopeId `
-IPAddress $reservedIp `
-ClientId $clientId `
-Name 'Lab Printer'
A successful Add-DhcpServerv4Reservation call normally returns no output. Check the saved entry in Step 5. Command silence tells you nothing about the client’s current address. Microsoft’s Add-DhcpServerv4Reservation reference lists its parameters.
Step 4: Use the equivalent DHCP console workflow
For the graphical method, open Server Manager > Tools > DHCP. Expand the server > IPv4 > the intended scope. Right-click Reservations and select New Reservation. Enter a Reservation name, the planned IP address, and the client’s MAC address. Add a description if useful, then click Add and Close.
If the correct client already has the address you want to keep, use its lease. Open Address Leases, right-click that client’s lease, and select Add to Reservation. Check the lease and scope first. This option reserves the lease’s current address; it won’t select a different one.
Step 5: Verify that the server saved the reservation
If you used PowerShell in Step 3, keep the same session and run:
Get-DhcpServerv4Reservation `
-ComputerName $dhcpServer `
-IPAddress $reservedIp |
Format-List IPAddress, ClientId, Name, ScopeId
The IP-address lookup uses -IPAddress without -ScopeId; those parameters belong to different parameter sets. If you used the console, set the variables first or replace them in the command. Example output:
IPAddress : 192.0.2.100
ClientId : 02-00-5E-10-00-01
Name : Lab Printer
ScopeId : 192.0.2.0
You can also select Reservations under the scope in the DHCP console. Confirm it shows the same address and identifier.
This check proves the server configuration was saved. The client still needs to request and receive the address. Microsoft lists the lookup options in Get-DhcpServerv4Reservation.
Step 6: Verify the address on the client
On the client, confirm IPv4 is set to Obtain an IP address automatically. In Windows, open Settings > Network & internet > Ethernet or Wi-Fi, then open the connected network’s properties. Check IP assignment. If it says Manual, change it to Automatic (DHCP).
To request a fresh lease from a local Command Prompt, replace Ethernet if the connected adapter has another name:
ipconfig /release "Ethernet"
ipconfig /renew "Ethernet"
ipconfig /all
Warning: Releasing the lease drops that adapter’s connection until renewal succeeds. Work at the client or use an out-of-band connection if your remote access depends on it.
In that adapter’s output, check three fields: DHCP Enabled should be Yes, IPv4 Address should be the reserved address, and DHCP Server should be the expected server. Compare Physical Address with the reservation’s client identifier too.
Physical Address. . . . . . . . . : 02-00-5E-10-00-01
DHCP Enabled. . . . . . . . . . . : Yes
IPv4 Address. . . . . . . . . . . : 192.0.2.100
DHCP Server . . . . . . . . . . . : 192.0.2.10
The server entry and the client’s lease can differ. The client may keep its old address until it requests a new lease. Another DHCP server may also answer. Check both records before calling the job done.
For an identifier-based lookup, use Get-DhcpServerv4Reservation -ComputerName $dhcpServer -ScopeId $scopeId -ClientId $clientId. Omitting -ClientId lists all reservations in that scope.
If the scope uses DHCP failover, verify the reservation on both partners before testing. Follow Microsoft’s failover replication procedure from the server holding the intended configuration: replication overwrites the partner’s corresponding settings. Check which partner issued the client’s lease.
Configuration
| Setting | What to check | Example |
|---|---|---|
| Scope ID | Network address of the scope serving this client | 192.0.2.0 |
| Reserved address | Available address in that scope’s configured distribution range | 192.0.2.100 |
| Client identifier | Identifier of the interface requesting DHCP | 02-00-5E-10-00-01 |
| Client addressing | Set to obtain an IPv4 address automatically | Automatic (DHCP) |
| Issuing server | The client must show the server holding the reservation | 192.0.2.10 |
Keep the device name, address, scope, and identifier in your network inventory. A replacement printer adapter will have a different identifier. So will a laptop’s Wi-Fi and Ethernet adapters.
Before changing or removing a reservation, find the exact entry by scope, IP address, and client identifier. Use the Reservations node or Get-DhcpServerv4Reservation. Check the client’s current lease separately, then make the change during a suitable maintenance window. Editing the saved entry won’t instantly change an active lease.
Tips and Troubleshooting
“The address is outside the scope range”
The planned address is outside the scope’s configured distribution range, even if it’s in the same subnet. Check Scope Properties and the Address Pool, then choose an available address in the configured range. Plan any change to the range separately.
The reservation exists, but the client still has its old address
Check DHCP Enabled and the client’s current lease. Renew the lease when it’s safe to interrupt the connection. The client can hold an earlier lease after you save a reservation. If the address stays unchanged, compare DHCP Server with the server holding the reservation.
The client receives an address from the wrong scope
Check the client’s network or VLAN, any DHCP relay, and the issuing server in ipconfig /all. In the DHCP console, confirm the reservation sits under the scope serving that network. A matching identifier in another scope won’t give the client the planned address.
The identifier does not match
Compare the reservation’s ClientId with the current adapter and its record under Address Leases. Check for another Ethernet or Wi-Fi adapter, or a randomized Wi-Fi hardware address. Identify the reservation before editing or removing it. Leave other devices’ entries alone.
The client ignores DHCP entirely
If DHCP Enabled says No, the client has a manually set address. Change it to Automatic (DHCP), renew the lease, and check the address and issuing server again. A reservation can only apply when the client requests an address through DHCP. Microsoft’s DHCP client troubleshooting guide covers further checks.
Wrapping Up
| Step | Action | Applies To |
|---|---|---|
| Plan | Match the scope, free address, and actual client identifier | Server and client |
| Save | Add one reservation in PowerShell or the DHCP console | Server |
| Prove | Check the saved entry and the client’s issued address | Server and client |
Reservations give devices predictable addresses while DHCP manages their other network settings. Check both records every time: the server shows the saved reservation, and the client shows the address it received.