Your DHCP pool is empty – here's what to do
When users start getting 'No IP address' errors and you see 'Address Pool Exhaustion' in the DHCP logs, the fix is usually simpler than you think. I've seen this on a hundred networks running Windows Server 2012 R2 through 2022. The culprit is almost always a lease time that's too long for your environment. But sometimes you just have too many devices.
Step 1: The 30-second fix – check lease time
This fixes 80% of cases. Open DHCP console, right-click your scope, pick Properties. Look at 'Lease duration for DHCP clients'. If it's set to 8 days, change it to 4 hours for wired clients. For Wi-Fi? Drop it to 30 minutes.
Why? Every phone, laptop, and IoT device that connects and disconnects keeps its lease. With 8 days, you'll fill a /24 subnet with just 254 devices that show up once a week. With 4 hours, those same devices release addresses when they leave. You'll free up dozens of IPs instantly.
Scope: 192.168.1.0/24
Old lease: 8 days → 80 devices hold addresses for a week
New lease: 4 hours → same devices release IPs overnight
After changing, restart the DHCP service: net stop dhcpserver && net start dhcpserver on the server. Then run ipconfig /renew on a test client to confirm.
Step 2: The 5-minute fix – expand the scope
If lease time didn't help, your subnet is genuinely too small. Here's the deal: you can't change the subnet mask without breaking existing clients. But you can add a second scope and use a DHCP superscope.
First, find an unused subnet. Say your current scope is 192.168.1.0/24. Use a /23 subnet like 192.168.0.0/23 – that gives you 510 addresses. Create a second scope in that larger range, but don't activate it yet.
- Open DHCP console, right-click IPv4, choose 'New Scope'.
- Set range to 192.168.0.1 – 192.168.1.254 with subnet mask 255.255.254.0.
- Name it 'Expanded Pool – do not delete'.
- Right-click IPv4 again, pick 'New Superscope'. Add both scopes.
- Activate the superscope.
Now clients get IPs from the larger pool. Check your DHCP server's event log for 'IP range is full' errors – they should stop.
One gotcha: if your router uses the old subnet mask, you'll need to update it too. Otherwise, traffic won't route properly.
Step 3: The 15+ minute fix – clean up and reconfigure
If both above fail, your network has a bigger problem. You've got too many devices for your subnet structure, or you've got rogue DHCP servers handing out addresses from the same pool.
Start with a DHCP audit. Run this PowerShell one-liner on your DHCP server to see who's using addresses:
Get-DhcpServerv4Scope -ComputerName dhcp-server | Get-DhcpServerv4Lease | Select-Object IPAddress, ClientId, HostName, LeaseExpiryTime | Export-Csv dhcp_leases.csv
Check that CSV for duplicate MAC addresses, old leases that haven't expired, or devices that shouldn't be there. I've found printers with reservation that died years ago but still hold addresses. Purge them manually.
Next, look for rogue DHCP servers. On a client, run ipconfig /all – the DHCP server listed should match your server. If it doesn't, someone plugged a consumer router into the network. Find and disable it.
Lastly, consider VLANs. Split your network into smaller broadcast domains. Give each VLAN its own /24 subnet. This is the long-term fix that prevents the problem from coming back. You'll need your network team to configure inter-VLAN routing. But it's worth it – you'll never hit this limit again.
Real-world scenario: A 200-employee company with 400 IP cameras. DHCP scope was /24 (254 addresses). Cameras used static IPs, but the DHCP pool filled with phone leases. Lease time fix freed 150 IPs immediately. Scope expansion gave breathing room until VLANs were planned.
Quick checklist before you call for help
| Check | What to do |
|---|---|
| Lease time | Change from days to hours (4 hours wired, 30 min wireless) |
| Scope size | Add second scope with superscope if /24 is too small |
| Rogue DHCP | Run ipconfig /all on a client and verify the server |
| Stale leases | Check CSV export for old or duplicate entries |
Stick with this order. Don't jump straight to expanding the scope – it's more work and doesn't address the real cause. Lease time is the fastest win. Expand only when you've confirmed you genuinely need more addresses. And if you're still stuck after these steps, your problem might be a hardware failure on the DHCP server itself. Check the system event log for disk errors or service crashes.