第2季 · WS2022 · DHCP

DHCP 部署与地址管理(WS2022新版)

【第2季第3篇】Windows Server 2022 DHCP:Failover 高可用、Policy 条件分配与审计日志

系列:爱依航 · Windows Server 2022 运维系列

本篇主题:DHCP 服务器部署与高可用配置(WS2022 新版)

环境:DHCP 服务器 192.168.10.11 + 192.168.10.21(备份)


开篇:DHCP 挂了意味着什么

不是"有些电脑没网"。

是"所有电脑同时没网"——因为所有设备都靠 DHCP 自动获取 IP,断了 DHCP,192.168.10.x 网段瞬间变成 169.254.x.x 的孤岛。

所以 DHCP 必须做高可用,而不是等到故障发生才后悔。

WS 2022 的 DHCP Failover 机制比 WS 2019 更稳定,支持更灵活的负载均衡策略。


Part 1 · WS 2022 DHCP 基础部署


# 安装 DHCP 服务器角色
Install-WindowsFeature -Name DHCP -IncludeManagementTools

# 授权 DHCP(域环境下必须)
Add-DhcpServerInDC -DnsName "dhcp.iehang.cn" -IPAddress 192.168.10.11

# 创建作用域
Add-DhcpServerv4Scope -Name "iehang.cn 办公网段" `
  -StartRange 192.168.10.100 `
  -EndRange 192.168.10.200 `
  -SubnetMask 255.255.255.0 `
  -LeaseDuration 8.00:00:00 `
  -State Active

# 配置 DHCP 选项
Set-DhcpServerv4OptionValue -ScopeId 192.168.10.0 `
  -OptionId 3 -Value 192.168.10.1   # 路由器
Set-DhcpServerv4OptionValue -ScopeId 192.168.10.0 `
  -OptionId 6 -Value 192.168.10.10  # DNS 服务器
Set-DhcpServerv4OptionValue -ScopeId 192.168.10.0 `
  -OptionId 15 -Value "iehang.cn"   # DNS 后缀

# 激活作用域
Set-DhcpServerv4Scope -ScopeId 192.168.10.0 -State Active

Part 2 · DHCP Failover 高可用配置(WS 2022 重点)

两种模式对比

模式 适用场景 IP 分配方式
------ --------- ------------
热备用(Hot Standby) 一主一备,主故障后接管 主用 100%,备用 0%
负载均衡(Load Balance) 双活并行,性能扩展 各自 50%(可调)

推荐使用负载均衡模式,两台 DHCP 同时服务,故障时无需切换,客户端无感知。

配置 DHCP Failover(负载均衡模式)

前提:两台 DHCP 服务器均已安装 DHCP 角色,且主 DHCP 已配置作用域。


# 在主 DHCP 服务器上执行(192.168.10.11)
Add-DhcpServerv4Failover `
  -Name "iehang-cn-failover" `
  -PartnerServer "192.168.10.21" `
  -ScopeId 192.168.10.0 `
  -ServerRole Active `
  -LoadBalancingMode Enabled `
  -MaxClientLeadTime 1.00:00:00 `
  -State Switchover:$false `
  -AutoStateTransition Enabled `
  -SharedSecret (ConvertTo-SecureString "DhcpFailoverSecret2024!" -AsPlainText -Force) `
  -Force

# 参数说明:
# LoadBalancingMode:启用负载均衡
# MaxClientLeadTime:备用服务器接管前等待时间(1小时)
# AutoStateTransition:主服务器断连后自动切换

验证 Failover 状态


# 查看 Failover 关系状态
Get-DhcpServerv4Failover -Name "iehang-cn-failover"

# 查看每台服务器的租约统计
Get-DhcpServerv4ScopeStatistics -ComputerName 192.168.10.11 -ScopeId 192.168.10.0
Get-DhcpServerv4ScopeStatistics -ComputerName 192.168.10.21 -ScopeId 192.168.10.0

Part 3 · DHCP Policy 条件分配(WS 2022 增强)

WS 2022 支持更细粒度的 DHCP Policy,可以根据 MAC 地址前缀、Vendor Class、User Class 等条件分配不同配置。

场景:办公电脑和 IP 摄像头走不同地址池


# 场景:IP 摄像头 MAC 地址前缀为 00-1A-8B-*,分配固定段

# 步骤一:为摄像头创建保留策略(使用 Policy 方式更灵活)
Add-DhcpServerv4Policy -Name "IP-Cameras" `
  -Condition OR `
  -MacAddress "EQ,001A8B*" `
  -Description "IP 摄像头 DHCP 策略"

# 步骤二:创建摄像头专用的地址池
Add-DhcpServerv4Scope -Name "IP摄像头网段" `
  -StartRange 192.168.10.210 `
  -EndRange 192.168.10.230 `
  -SubnetMask 255.255.255.0 `
  -State Active

# 步骤三:将策略关联到作用域
Add-DhcpServerv4PolicyIpRange -Name "IP-Cameras" `
  -ScopeId 192.168.10.0 `
  -StartRange 192.168.10.210 `
  -EndRange 192.168.10.230

按Vendor Class分配不同网关


# 查看当前 DHCP 策略
Get-DhcpServerv4Policy -ScopeId 192.168.10.0

# 查看策略详情
Get-DhcpServerv4Policy -Name "IP-Cameras" -ScopeId 192.168.10.0 | Select *

Part 4 · DHCP 审计日志与日常巡检

WS 2022 增强了 DHCP 审计功能,日志默认路径:C:\Windows\System32\dhcp


# 查看 DHCP 审计日志(安全事件)
Get-WinEvent -FilterHashtable @{LogName="DhcpServerEvents/Admin";StartTime=(Get-Date).AddDays(-7)} `
  -MaxEvents 50 | Select TimeCreated,ID,Message

# 常用事件 ID:
# 10 = IP 租约已发放
# 11 = IP 租约已续约
# 12 = IP 租约已释放
# 13 = IP 租约已删除
# 16 = IP 租约冲突
# 70 = DHCPv6 租约事件

# 定期导出租约报告
Get-DhcpServerv4Lease -ScopeId 192.168.10.0 | `
  Select IPAddress,HostName,ClientId,LeaseExpiry,State | `
  Export-Csv -Path C:\Reports\DhcpLeases_$(Get-Date -Format "yyyyMMdd").csv -NoTypeInformation

# 检查地址池使用率
$stats = Get-DhcpServerv4ScopeStatistics -ScopeId 192.168.10.0
Write-Host "地址池使用率:" ([math]::Round($stats.PercentageInUse, 1)) "%"
Write-Host "已使用:" $stats.InUse "/" $stats.Total

Part 5 · 常见故障

故障一:Failover 状态为 Interrupted


# 检查两台 DHCP 服务器网络连通性
Test-NetConnection -ComputerName 192.168.10.21 -Port 647

# 检查 Failover 详细状态
Get-DhcpServerv4Failover -Name "iehang-cn-failover" -Detailed

# 重置 Failover 关系(谨慎操作)
Remove-DhcpServerv4Failover -Name "iehang-cn-failover" -Force
# 然后重新配置(见 Part 2)

故障二:DHCP Policy 不生效


# 查看策略优先级(数字越小优先级越高)
Get-DhcpServerv4Policy -ScopeId 192.168.10.0 | Sort ProcessingOrder | Select Name,ProcessingOrder,Condition

# 检查 MAC 地址前缀是否正确匹配
Get-DhcpServerv4Lease -ScopeId 192.168.10.0 | Where-Object {$_.ClientId -like "00-1A-8B*"}

故障三:客户端获取到错误租约

通常是 Policy 规则冲突,检查多个 Policy 是否有重叠条件,适当合并或禁用低优先级规则。


下期预告

WS 2022 的 WDS 改进不多,但结合 WS 2022 的新存储和网络功能,PEX 部署速度有提升。

下一期:Windows Server 2022 WDS 无人值守安装实战。