近期在做03域控到08 R2 RODC(只读域控)的升级,其中有些域控上同时还兼任DHCP服务器。在测试过程中将03的DHCP数据库备份直接还原到Windows 2008上的DHCP后,DHCP作用域下的地址租用列表文件夹显示为红叉,不能看到里面的租用列表信息。如果迁移源DHCP和目标DHCP版本不一致,都可能出现该问题或其他错误,原因是不同版本的DHCP 类是不一样的,具体可以参考微软KB:http://support.microsoft.com/kb/885687/en-us。正确的DHCP迁移升级方法还是得使用数据库导入导出方式。
过程如下:
1、保险起见,首先备份源DHCP服务器,即通过DHCP的MMC控制台进行备份;
2、导出源DHCP数据库:在源DHCP Server即windows 2003上打开CMD窗中输入并执行:
netsh dhcp server dump > c:\exportdump.txt
3、在Windows Server 2008 R2安装DHCP服务器,采用默认设置安装即可,不需要进行任务其他配置
4、导出目标DHCP数据,在目标Windows 2008 R2 的DHCP Server上打开CMD窗中输入并执行:
netsh dhcp server dump > c:\importdump.txt
5、在源DHCP服务器上修改和添加与Windows 2008 R2 DHCP匹配的类,将如下复制到文本并更改后缀为bat执行:
# ------------------ start of resulting script -----------------
# http://support.microsoft.com/kb/885687/en-us
# Script to delete and add classes with NETSH
# ===== Delete old classes ======该部分内容来自于exportdump.txt ,直接复制其中的5段,每段前面添加Netsh,将add替换成delete即可
Netsh Dhcp Server 10.4.1.5 Delete Class "默认路由和远程访问类别" "远程访问客户端的用户类别" 525241532e4d6963726f736f6674 0 b
Netsh Dhcp Server 10.4.1.5 Delete Class "默认 BOOTP 的类别" "BOOTP 客户端的用户类别" 424f4f54502e4d6963726f736f6674 0 b
Netsh Dhcp Server 10.4.1.5 Delete Class "Microsoft Windows 2000 选项" "Windows 2000 客户端的 Microsoft 供应商特定选项" 4d53465420352e30 1 b
Netsh Dhcp Server 10.4.1.5 Delete Class "Microsoft Windows 98 选项" "Windows 98 客户端的 Microsoft 供应商特定选项" 4d534654203938 1 b
Netsh Dhcp Server 10.4.1.5 Delete Class "Microsoft 选项" "适用于 Windows 98 和 Windows 2000 客户端的 Microsoft 供应商特定选项" 4d534654 1 b
# ===== End delete old classes =====
# ===== Add new classes =====该部分内容来自于importdump.txt,直接选择里面的6段复制粘贴后前面添加netsh即可,注意IP或者计算机名也需要更高为源DHCP的
Netsh Dhcp Server 10.4.1.5 Add Class "默认路由和远程访问类别" "远程访问客户端的用户类别" 525241532e4d6963726f736f6674 0 b
Netsh Dhcp Server 10.4.1.5 Add Class "默认 BOOTP 的类别" "BOOTP 客户端的用户类别" 424f4f54502e4d6963726f736f6674 0 b
Netsh Dhcp Server 10.4.1.5 Add Class "Microsoft Windows 2000 选项" "Windows 2000 客户端的 Microsoft 供应商特定选项" 4d53465420352e30 1 b
Netsh Dhcp Server 10.4.1.5 Add Class "Microsoft Windows 98 选项" "Windows 98 客户端的 Microsoft 供应商特定选项" 4d534654203938 1 b
Netsh Dhcp Server 10.4.1.5 Add Class "Microsoft 选项" "适用于 Windows 98 和 Windows 2000 客户端的 Microsoft 供应商特定选项" 4d534654 1 b
Netsh Dhcp Server 10.4.1.5 Add Class "默认的网络访问保护级别" "受限访问客户端的默认特殊用户类" 4d5346542051756172616e74696e65 0 b
#===== End Add new classes =====
# ------------------ end of resulting script -----------------
6、检查源windows 2003 DHCP数据库是否修改成功:在源DHCP Server即windows 2003上打开CMD窗中输入并执行:
netsh dhcp server dump > c:\exportdumpCheck.txt
打开c:\exportdumpCheck.txt 查看。
7、导出源windows 2003的DHCP数据库,在cmd窗口中输入:
Netsh dhcp server export c:\dchp.txt all
8、导入DHCP数据库到windows 2008 R2数据库中,将dchp.txt 复制到目的DHCP服务器的C盘根目录下,使用管理员打开CMD命令窗口,输入:
netsh dhcp server import c:\dhcp.txt
9、如果出现故障,请使用第1步中备份就地还原,或者手工在目的DHCP服务器上手工创建和配置DHCP作用域等属性。