(近期我负责将一个单位的网络,从原来的Windows Server 2003升级到Windows Server 2008 R2,期间比较顺利,但也有一些问题,这不,DHCP就出现问题了)

某单位,采用Windows Server 2003的Active Directory管理网络,网络中有两台Windows Server 2003服务器做域控制器,另有两台Windows Server 2003做DHCP服务器,为网络统一分配IP地址。近期准备将网络中的服务器全部升级到Windows Server 2008,已经将其中的一台域控制器与一台DHCP升级到了Windows Server 2008,网络正常。但今天检查原来的一台Windows Server 2003的DHCP服务器时,发现这台DHCP服务器显示“未授权”(如图1所示),不能为网络中的工作站分配IP地址等参数。

clip_image002

图1 DHCP服务器未授权

在Active Directory中的“DHCP”服务器中,查看这台服务器的授权状态是正常的,看来问题不是出在DHCP授权。

然后经过多次检查,没有找到DHCP服务器的问题。最后,在Windows Server 2003的DHCP服务器的计算机的“事件查看器”中,在“系统”中查看到“DHCPServer”错误,显示这台服务器遇到网络中的另一台DHCP服务器,IP地址为172.30.5.15,而这台服务器是新升级到Windows Server 2008操作系统的DHCP服务器,如图2所示。

clip_image004

图2 DHCPServer错误日志

至此真相大白。因为原来的两台Windows Server 2003的DHCP服务器,没有加入到域,是网络中的普通服务器,而在升级到Windows Server 2008的时候,其中的一台DHCP升级到Windows Server 2008后,加入到域。

而在Windows Server 2008的网络中,如果部署 Active Directory,作为 DHCP 服务器运行的所有计算机必须成为域控制器或域成员服务器,才能被授权和为客户端提供 DHCP 服务。对于没有加入到域的计算机中的DHCP服务器,也可以用作 DHCP 服务器,但它不能在任何已授权 DHCP 服务器的子网上。当独立 DHCP 服务器检测到同一子网上的授权服务器时,它将自动停止将 IP 地址租给 DHCP 客户端。

知道问题的原因之后,解决就比较简单了。因为准备要将整个网络升级到Windows Server 2008,而现在只升级到了一半。所以,可以用“另一台”Windows Server 2003域控制器,暂时做DHCP服务器。为了简化配置,可以导出现有的DHCP服务器的配置、在Windows 2003域控制器的DHCP服务器中,导入配置,然后修改交换机的配置即可。主要步骤如下:

(1)在Windows Server 2003的DHCP服务器中(IP为172.30.5.9),备份DHCP配置,如图3所示。

clip_image006

图3 备份DHCP配置

(2)在Windows Server 2003的域控制器(IP为172.30.5.3)上安装DHCP服务,“还原”导入上步中的DHCP配置,如图4所示。

clip_image008

图4 还原配置

还原之后对该DHCP服务器进行“授权”操作,如图5所示。

clip_image010

图5 授权

(3)修改核心交换机的配置,用172.30.5.3代替原172.30.5.9的DHCP服务器,如图6所示。

clip_image012

图6 修改交换机的配置

至此,问题得以解决。