一、概述
近来为客户部署VSphere的虚拟化数据中心, 所有部署、 迁移操作实施完成后, 客户又提出一个新的小要求: 原生产环境中有一台DNS服务器, 上面部署有一些应用, 但年久失修处于淘汰状态, 但是其上面有个DNS服务, 还是要使用的, 希望只将DNS服务迁移到虚拟化平台上
二、环境描述
原DNS服务器:
主机名: Win08-01
IP地址: 10.200.201.11
新DNS服务器(临时主机名和IP地址) , 因为迁移成功后, 需要将主机名和IP地址改为原DNS相同, 原DNS停机。
主机名: Win08-02
IP地址: 10.200.201.12
下图是我们准备的一些测试记录:
此图显示的是正向查找区域数据, 里面包括有A记录、 MX记录、 CNAME记录、 空域名解析等。
此图显示的是反向查找区域数据。此外还包括一个条件转发器。
三、DNS迁移的原理其实很简单
DNS服务器的工作机制并不复杂, DNS服务器的工作完全依靠后台几个文件, 一个是Boot文件, 负责存储DNS服务器的启动信息; 一个是Cache.dns,负责存储根服务器的域名和IP地址; 还有一个最重要的文件就是区域数据文件, 负责存储区域内的所有DNS记录。 这些文件都在\Windows\System32\DNS目录下, 当然关于这几个文件的具体信息, 我们就不再细聊了。 我们只要把这几个文件拿到, 就完全可以实现DNS的迁移了。
另外一点就是, 我们打开DNS的后台文件目录可能看不到BOOT文件, 因为默认情况下DNS是从注册表启动的。 如果是从注册表启动的, 我们需要导出注册表, 然后再导入到注册表中。
因为DNS的引导信息可以有三种保存的途径, 一是可以保存在Boot文件, 二是可以保存在注册表, 三是可以保存在Active Directory。 微软可能是怕用户误删除了Boot文件, 因此默认情况下把引导信息用另外两种方式保存。
在此, 我们直接将DNS的启动改为从文件启动, 就可以就可以看到BOOT文件了。
接下来, 就是在将服务器上安装DNS服务, 具体过程不再明说。
四、迁移过程
1、 修改DNS服务器的服务启动类型, 修改为以文件启动:
2、 停止新DNS服务器上的DNS服务, 如下图所示:
3、 将原DNS服务器上的DNS文件夹里的文件全部复制到新DNS服务器里, 如下图所示:不应复制 Samples 文件夹, 因为不需要其中的内容。 出现提示时, 全部是复制和替换。
4、 再启动新服务器上的DNS服务。
新计算机名和IP地址进行修改, 和老服务器一样。 整个过程结束, 再测试一下即可。 整个迁移过程可以总结为: 旧服务器上修改服务启动类型; 新服务器上修改服务启动类型, 停止服务, 复制文件, 再次启动服务。 如果看到下图就恭喜您, 完成了:
下面就是测试人员的工作了, 可以简单使用nslookup测试, 其他的就交换业务部门了。 在测试过程中, 需要注意, 如果在DNS服务器上测试其他网段的A记录无法解析时, 应该是DNS服务器网关测试的问题, 注意排查。