我正在尝试思考如何在灾难恢复的情况下更改我托管的网站的 A 记录。
我已使 Apache 和 mySQL 复制正常运行,并通过更改 hosts 文件在本地进行了测试。现在剩下的问题是:DNS 怎么样?
以下是 SOA:
campus.school.edu. IN SOA dns.campus.school.edu. root.campus.school.edu.
campus.school.edu. IN NS dns.campus.school.edu.
campus.school.edu. IN NS dns2.campus.school.edu.
campus.school.edu. IN NS anotherschool.edu.
重要的是,dns.campus.school.edu
是主人。相关的 A 记录是:
website IN A 10.10.100.100
现在假设我的校园瘫痪了。Web 服务器和两个 DNS 服务器都瘫痪了。
如果我的主机宕机了,我该如何更改 website.campus.school.edu 的 A 记录?(在发生灾难时要求 anotherschool.edu 成为主机是非常不切实际的……)
我可否:
要求 school.edu 的 DNS 人员将 website.campus.school.edu 记录委托给另一台服务器(比如说
dns.amazoncloud.com
),同时仍将 campus.school.edu 委托给我?school.edu 中的 DNS 是否应覆盖 website.campus.school.edu 的 A 记录?
还有一件事:由于政治/时间/PM 原因,提前为 campus.school.edu 设置隐藏主机dns.amazoncloud.com
目前也不切实际。因此,我正在尝试拼凑一个解决方案来解决该特定主机的灾难恢复问题,同时尽可能少地改变更大的现状:)
答案1
鉴于 anotherschool.edu 在灾难期间不会采取任何行动,我会将 website.campus.school.edu 委托给 dns.amazoncloud.com(或任何其他 DNS 提供商)。更改
website IN A 10.10.100.100
到
website IN NS A.B.C.D
IN NS E.F.G.H
IN NS I.J.K.L
其中 A...、E... 和 I... 是新 DNS 提供商的 IP 地址。
将 DNS 提供商的服务器设置为该域的权威服务器website.campus.school.edu
,并为其提供 10.10.100.100 的 A 记录
anotherschool.edu 作为从属网站,也将更新此信息。
我不知道为什么 wolfgangsz 说你必须委托整个子域。
答案2
由于website.campus.school.edu
区域中有 A 记录campus.school.edu
,并且整个区域不可用,因此您必须让运行 school.edu DNS 的人指向校园子域的不同 DNS 服务器,然后该服务器需要为您的备份解决方案提供 DNS。因此,从本质上讲,上面第 1 点中的想法是正确的,只是他们必须委派整个子域,而不仅仅是一个 A 记录。
但是,如果您想要的只是该网站的重定向,那么只需将该 A 记录添加到 school.edu 域即可实现,尽管这可能需要手动完成。
如果您希望将其作为任何类型的“热”备用,则需要在某个地方为 campus.school.edu 设置一个隐藏的主服务器。只要该隐藏的主服务器未被 campus.edu 中的任何实时记录指向,就不会发生任何事情(因为没有人查询它)。school.edu 域中的实际更改可以编写脚本(如果 school.edu 的 DNS 人员愿意帮助您)。