DHCP 客户端可能无法获取 DHCP 分配的 IP 地址
09/27/2020
本文内容
本文可帮助修复 DHCP 客户端无法获取 DHCP 分配的 IP 地址的问题。
适用于: Windows Server 2012R2
原始 KB 编号: 167014
症状
当 DHCP 客户端从一个子网移动到另一个子网时,它可能无法获得新子网上的有效 IP 地址。
解决方案
若要解决此问题,请执行下列方法之一:
请勿使用重叠的 IP 寻址方案。
将客户端移动到新段后,运行以下命令:
Ipconfig /Release
Ipconfig /Renew
更多信息
当先前具有 DHCP 分配的地址的 DHCP 客户端再次启动时,客户端将进入 INIT-REBOOT 状态。 客户端将尝试通过发送 DHCPRequest 数据包,用以前分配的 IP 地址填充 DHCP 选项字段"DHCP 请求的地址"来验证它是否仍可以使用同一地址。
如果 DHCP 服务器保持无提示,则客户端假定以前的地址仍然有效,并保留该地址。 如果 DHCP 服务器发送 NACK 数据包以响应 DHCPRequest,则客户端将进入发现周期;它还请求 DHCPDiscover 数据包中以前分配的地址。
当 DHCP 服务器收到具有先前指定的地址的 DHCPRequest 时,它首先会通过检查"收存"字段来检查该地址是否来自本地段。 如果来自本地段,DHCP 服务器会将请求的地址与属于接收请求的本地接口的 IP 地址和子网掩码进行比较。
如果地址看起来位于同一子网中,则 DHCP 服务器将保持无提示,即使地址不在地址池范围内。 DHCP 服务器假定该地址是由同一段中的另一个 DHCP 服务器分配的(如果不是来自其自己的池)。 如果地址未通过子网掩码/IP 地址检查,DHCP 服务器将检查该地址是否来自超级范围(如果已定义)。 如果没有,服务器会使用 NACK 数据包响应 DHCPRequest。
如果发送 DHCPRequest 的客户端请求的地址似乎位于同一子网中,但实际上已分配不同的子网掩码,则 DHCP 服务器将保持无提示,并且客户端将无法获取新子网的有效 IP 地址。
例如,假定 DHCP 客户端获取子网掩码为 255.255.255.0 的地址 172.17.3.x,并且该客户端将移动到一个新段,其中 DHCP 服务器的地址为 172.17.1.x,子网掩码为 255.255.0.0。 在 DHCP 服务器上完成子网掩码/IP 地址比较后,DHCP 服务器将保持无提示,假定分配了该地址的段上还有另一台 DHCP 服务器。 如果子网掩码已反转,客户端将获取有效地址。