如何将BIND DNS服务器迁移到新硬件?


9

我有一份工作将2x BIND DNS服务器迁移到新硬件。

显然,他们正在使用运行Ubuntu服务器8.04的3U史前服务器。
我将使用Ubuntu服务器9.04安装2个1U服务器。

如何传输DNS设置,DNS缓存?我需要传输哪些文件夹/配置文件?

如果我使用Webmin>备份配置> BIND DNS服务器,我会实现任何目的吗?还是应该避免使用Webmin?

Answers:


16

总是避免使用Webmin。如果它是定期配置的Ubuntu BIND服务器,则足以在新计算机上安装bind9软件包,将/ etc / bind的内容复制到新计算机,然后调整每台计算机上的设置以与新计算机对话,更改授权(或IP地址,如果适用),然后继续生活。为了实现无缝(零停机时间)迁移,请一次执行一台计算机。


+1我只是在迁移过程中,将服务器绑定到新服务器,只需复制配置并让tweeks可以解决问题。
马克戴维森

+1避免Webmin。
约翰·加迪尼尔

我可能会再进一步​​检查一下BIND的配置内容,以便它在新机器上干净无Webmin。
丹·卡利

8

首先复制您的/ etc / bind目录

sudo tar czvf bind.tgz /etc/bind
请注意,如果Bind在监狱中运行,则必须通过创建监狱,层次结构,设备来重新构建它。

如果没有,则将绑定归档远程复制到新服务器。

scp bind.tgz user@target:~/

连接到新服务器

ssh user@target

通过apt安装bind9

sudo apt-get install bind9

您还可以从isc网站(https://www.isc.org/downloadables/11)获取最新资源。

将档案解压缩到/ etc / bind目录中

sudo tar xzvf bind.tgz -C /etc/bind

在配置文件中进行所需的更改,可能在区域文件中进行更改...

最后,开始绑定

sudo /etc/init.d/bind9 start


我按照这些指示来信,但最终在其中放了一个etc文件夹/etc/bind9tar命令中有错误。(Ubuntu 14)
frakman19年

1

由于我正处于将服务器迁移到新硬件的过程中,因此我将对此进行介绍。

首先,请尽可能不要将您的主服务器(应该进行所有更改的服务器)暴露给互联网。即使这意味着要建立一个小的VM会话来托管一个隐藏的主服务器,它也使移动内容和确保其安全性变得更加容易。

例如,这是我的绑定布局的一部分(在/ etc / bind中):

-rw-r-----  1 root bind 2.6K 2009-08-07 10:41 named.conf
-rw-r-----  1 root bind 112K 2009-07-24 07:54 named.external.conf
-rw-r-----  1 root bind 112K 2009-07-24 07:53 named.internal.conf
-rw-r-----  1 root bind  792 2009-07-01 10:28 named.logging.conf
-rw-r-----  1 root bind  834 2009-07-01 10:28 named.options.conf
-rw-r-----  1 root bind  373 2009-07-01 10:28 rndc.conf
-rw-r-----  1 root bind  131 2009-07-01 10:28 rndc.key

named.conf包含我的基本设置,然后包含以下其他文件:

include "/etc/bind/named.logging.conf";
include "/etc/bind/named.options.conf";

include "/etc/bind/rndc.key";

构建新服务器,并将它们指向旧的主服务器:

zone "adnszone.com" {
        type slave;
        masters ( your.master.server.ip; etc.etc.etc.etc; }; 
        file "internal/adnszone.com";
};

让他们填充。

准备好新的主服务器(希望已隐藏)后,您可以非常轻松地进入并修改特定的conf文件,以指向新的主服务器和中提琴!


2
首先使它成为从属服务器来填充新的主控服务器是个坏主意-它会丢失原始行顺序和区域文件的格式,包括所有注释。使用rsync或scp或其他文件从旧服务器实际复制到新服务器的方法(即使ftp也可以)
cas

是的,但是无论如何仅适用于主服务器,注释永远不会传播到从服务器。因此,对于有趣的记录,我使用TXT记录并附加信息。记录的最前面:blah.domain.com一个1.2.3.4 info.blah.domain.com TXT“托莱多的主要blah服务器”
Greeblesnort

1

womble的答案很好。

同样,如果可能的话,尽量避免重新命名您的名称服务器(即,尝试使用与旧IP地址相同的新服务器结束)。

如果新服务器与旧服务器位于同一IP子网中,那么没问题-只需使用临时IP地址进行设置,然后在配置它们时将它们交换为真实IP。更改旧服务器上的IP,然后更改新服务器上的IP(您可能需要清除路由器或交换机上的arp缓存)。

如果新设置出现问题,则只需重新交换IP地址就可以快速轻松地还原....相反,重新委派后的还原远没有那么容易或那么快,因为您不能如果您要自行更改,则必须向DNS注册服务商提交请求(这可能需要5分钟,也可能需要一天甚至几周,具体取决于他们的了解程度)。

这听起来可能有点偏执,但是多年以来,我了解到,让自己拥有恢复任何更改的方法始终是一个好主意...很多时候,进行更改将揭示过去设置方式的隐藏/未记录的依赖关系。在您更改它们之前。谁做无记录的依赖关系或它有多错误都无所谓-您更改了配置,所以这是您的错。

如果新服务器位于不同的子网上,则别无选择,只能重新委托。


0

确保RR文件也位于/ etc / bind中(Fed / Cent / RH它们位于/ var / some / where /中),以实现最快的切换。

或者,一旦新系统启动,则将它们设置为旧系统的辅助系统,让它们转移RR,然后将新系统替换为主要系统。如果主数据库正在加密RR记录文件,这也将起作用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.