AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 51375
Accepted
Jindrich
Jindrich
Asked: 2009-08-08 01:50:41 +0800 CST2009-08-08 01:50:41 +0800 CST 2009-08-08 01:50:41 +0800 CST

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

  • 772

我找到了一份将2 个 BIND DNS服务器迁移到新硬件的工作。

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

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

如果我使用Webmin > 备份配置 > BIND DNS 服务器,我会取得任何成就,还是应该避免使用 Webmin?

linux ubuntu bind
  • 5 5 个回答
  • 26989 Views

5 个回答

  • Voted
  1. Best Answer
    womble
    2009-08-08T01:53:30+08:002009-08-08T01:53:30+08:00

    我总是避免使用 Webmin。如果是常规配置的 Ubuntu BIND 服务器,在新机器上安装 bind9 包,将 /etc/bind 的内容复制到新机器上,然后调整每台机器上的设置以与新机器通信就足够了,更改委派(或 IP 地址,如果合适)并继续生活。对于无缝(零停机)迁移,一次执行一台机器。

    • 16
  2. Ali Mezgani
    2009-08-08T03:21:02+08:002009-08-08T03:21:02+08:00

    首先复制您的 /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

    • 8
  3. Greeblesnort
    2009-08-08T07:51:38+08:002009-08-08T07:51:38+08:00

    由于我正处于将我们的服务器迁移到新硬件的过程中,因此我将为此投入使用。

    首先,如果可能的话,不要将您的主服务器(应该发生所有更改的服务器)暴露在互联网上。即使这意味着构建一个小型 VM 会话来托管一个隐藏的 master,它也可以让移动内容和保持其安全变得更加容易。

    例如,这是我的绑定布局的一部分(在 /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 文件以指向新的主服务器和中提琴!

    • 1
  4. cas
    2009-08-08T16:28:20+08:002009-08-08T16:28:20+08:00

    womble的回答很好。

    此外,如果可能的话,尽量避免重新授权您的名称服务器(即尝试让新服务器与旧服务器具有相同的 IP 地址)。

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

    如果新设置出现问题,您只需再次交换 IP 地址即可快速轻松地恢复....相比之下,重新授权后恢复远没有那么容易或快速,因为您不能更改您自己,您必须向您的 DNS 注册商提交请求(这可能需要 5 分钟,也可能需要一天,甚至数周,具体取决于他们的了解程度)。

    这听起来可能过于偏执,但多年来我已经了解到,给自己留出一种方法来恢复任何更改总是一个好主意……很多时候,进行更改会揭示隐藏/未记录的对过去设置方式的依赖关系在你改变它们之前。谁制造了未记录的依赖关系或它有多错误都没关系 - 你更改了配置,所以这是你的错。

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

    • 1
  5. Jimsmithkka
    2009-08-08T05:13:53+08:002009-08-08T05:13:53+08:00

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

    或者,一旦新系统启动,使它们成为旧系统的辅助系统,让它们将 RR 转移过来,然后将新系统交换到主系统。如果主节点正在加密 RR 记录文件,这也适用。

    • 0

相关问题

  • 更改 PHP 的默认配置设置?

  • 保护新的 Ubuntu 服务器 [关闭]

  • (软)Ubuntu 7.10 上的 RAID 6,我应该迁移到 8.10 吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve