【IT168 特别策划】6000名IT精英齐聚一堂,与来自微软产品核心研发团队及各个领域数百位优异专家面对面交流,Tech.Ed 2009盛典召开在即!IT168带您一起体验丰富多彩的活动和内容安排,更加深入、专注的互动讨论!
本系列文章阐述 Active Directory 域服务 (AD DS) 服务器或域名系统 (DNS) 服务器角色从运行 Windows Server 2003、Windows Server 2008 或 Windows Server 2008 R2 的基于 x86 或基于 x64 的服务器迁移到新的 Windows Server 2008 R2 服务器的实践方法。
需要注意的是,迁移现有安装的哪些元素完全取决于服务器管理员。除服务器角色以外,这些元素通常还包括其配置、数据、系统身份和操作系统设置。本文不假定服务器角色之间可能存在的依存关系。相反,本文假定在不更改拓扑、站点设置、站点链接设置或子网设置的情况下,将一台计算机上的 AD DS 服务器和 DNS 服务器迁移到网络中的另一台计算机上。
下图为AD DS/DNS服务器角色迁移的大致过程。
本文介绍DNS服务器角色如何从运行 Windows Server 2003、Windows Server 2008 或 Windows Server 2008 R2 的基于 x86 或基于 x64 的服务器独立迁移到新的 Windows Server 2008 R2 。
1、迁移独立 DNS 服务器时,请务必按照以下顺序迁移主服务器和辅助服务器:
a、标识承载区域主副本的服务器(称为"主服务器")和承载区域辅助副本的所有服务器(称为"辅助服务器")。
b、迁移所有辅助服务器。
c、迁移主服务器。
2、从辅助服务器开始,然后移动到主服务器,根据工作表中的信息捕获源服务器中的 DNS 设置:
a、准备一个可访问网络的中性文件存储位置来帮助迁移。此位置必须可从源服务器访问(作为临时保存导出的源服务器文件的空间),并且还必须可从目标服务器访问(作为从中检索和导入这些文件的空间)。选择一个可访问的位置,该位置需具有足够的空间来容纳从源服务器导出的所有与 AD DS 和 DNS 服务器相关的信息。例如,该存储位置可类似于以下位置:\\fileserver\users\username\。此位置可以是目标服务器自身上的一个文件夹,也可以位于网络中的其他计算机上。
b、通过运行以下命令在源服务器上停止 DNS 服务器服务:
net stop "DNS Server"
c、运行 reg 命令导出下列注册表项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters
reg export HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\DNS\Parameters %Windir%\System32\DNS\Dns-Service.REG
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DNS Server
reg export "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DNS Server" %Windir%\System32\DNS\Dns-Software.REG
d、在源服务器上,将 %windir%\System32\DNS(Samples 文件夹除外)下的所有文件和子文件夹复制到某个网络位置或者 DNS_migrate_system32DNS 文件夹下的通用串行总线 (USB) 项下。以下是一个复制命令示例:
xcopy %windir%\system32\dns\ <DNS_migrate_system32DNS> /s
注意,不应复制 Samples 文件夹,因为不需要其中的内容。如果仍然尝试复制该文件夹,则可以安全地忽略由此导致的错误。
e、必要时,可以通过从以下路径中的注册表读取来复制每个自定义数据库目录下的所有文件:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters\DatabaseDirectory
f、使用以下命令启动 DNS 服务器服务:
net start "DNS Server"
因为此时源服务器和目标服务器具有不同的 IP 地址,所以源服务器仍然可以继续为客户端及其他 DNS 服务器提供服务。
3、此时,在目标服务器上,导入源 DNS 服务器的 DNS 设置:
a、使用以下命令停止目标服务器上的 DNS 服务器服务:
net stop "DNS Server"
b、将 Dns-Service.REG 和 Dns-Software.REG 文件复制到目标服务器,然后运行这两个文件。
c、将 DNS_migrate_system32DNS 下的所有文件复制到 %windir%\System32\DNS。
d、使用以下命令启动 DNS 服务器服务:
net start "DNS Server"
4、仅当迁移的服务器是辅助服务器时才执行此步骤。在主服务器上,标识区域传送设置:
a、如果将主服务器配置为"允许将区域传送到任何服务器",则继续执行步骤 5。
b、如果将主服务器配置为"名称服务器"选项卡中列出的"仅允许将区域传送到服务器",
则使用以下命令创建目标服务器的新名称服务器 (NS) 资源记录:
dnscmd /recordadd <FQDN of the zone> @ NS <FQDN of the destination server>
dnscmd /recordadd <FQDN of the zone> <FQDN of the server>. A <Temp IP address of destination server>
c、如果将主服务器配置为"仅允许将区域传送到下列服务器",
则将目标辅助服务器的 IP 地址添加到列表中。
在目标服务器上打开命令提示符,若要启动从主服务器到目标辅助服务器的区域传送,请键入以下命令:
dnscmd /zonerefresh <zone name>
通过检查目标服务器上区域中的资源记录并验证这些记录是否与主服务器上显示的记录相匹配,来验证区域传送是否成功完成。
5、此时,在迁移过程中,将源服务器的 IP 地址迁移到目标服务器:
将源服务器更改为其他静态 IP 地址。
将目标服务器 IP 地址更改为用于源服务器的原始 IP 地址。
需要注意的是,如果源服务器正在运行多个角色,则重命名源服务器或更改其 IP 地址可能会导致正在源服务器上运行的其他角色失败。
6、此时,在迁移过程中,必须重命名源服务器并将其以前的标识迁移到目标服务器。完成以下步骤以迁移源服务器名称:
a、使用以下命令将源服务器重命名为其他名称:
netdom renamecomputer %computername% /NewName:<new computer name>
b、重新启动源服务器以完成名称更改。
c、在目标服务器上运行步骤 a 中的命令,将目标服务器重命名为原始源服务器名称。
d、重新启动目标服务器以完成名称更改。
7、仅当迁移辅助服务器时才执行此步骤。在主服务器上,重新访问区域传送设置。
a、如果将主服务器配置为"允许将区域传送到任何服务器",则继续执行步骤 8。
b、如果将主服务器配置为"名称服务器"选项卡中列出的"仅允许将区域传送到服务器",
运行以下命令,删除在步骤 4(b) 中创建的名称服务器 (NS) 资源记录和主机 (A) 资源记录:
dnscmd /recorddelete <FQDN of the zone> @ NS <FQDN of the destination server>
dnscmd /recorddelete <FQDN of the zone> <FQDN of the server>. A <Temp IP address of destination server>注意,这些命令中的参数与在步骤 4(b) 中输入的参数相同。
c、如果将主服务器配置为"仅允许将区域传送到下列服务器",
则从列表中删除目标辅助服务器的 IP 地址。
这是在步骤 4.c.i 中添加的 IP 地址,该 IP 地址最初属于目标服务器,但是在 IP 迁移后现在属于源服务器。
在目标服务器上打开命令提示符,若要启动从主服务器到目标辅助服务器的区域传送,请键入以下命令,然后按 Enter:
dnscmd /zonerefresh <zone name>
通过检查目标服务器上区域中的资源记录并验证这些资源记录是否与主服务器上的资源记录相匹配,来验证区域传送是否成功完成。
8、此时,在迁移过程中,在目标服务器上执行验证步骤以确保其目前作为新 DNS 服务器运行。
迁移现在已完成。现在,目标服务器应该为网络提供以前由源服务器提供的所有服务。此时,目标服务器正作为 DNS 服务器运行。