我有一个客户,他创建了 600 多个网站,这些网站的 DNS 记录指向的是实际 IP 地址,而不是名称服务器。他们希望从当前主机迁移,并且不想丢失 IP 地址。如果必须更改 IP 地址,则需要在所有 600 多个网站的 DNS 记录中更改它。
有没有办法在转移到另一台主机时保留 IP 地址?
是否有解决方法可以避免手动更改所有站点?
答案1
首先,您不能在迁移至其他托管服务提供商时携带 IP 地址。只有当您拥有足够大的地址块,且可以通过 BGP 进行通告时,IP 地址才可以在托管服务提供商之间迁移。
您采取的任何迁移方法都需要一个过渡期,在此期间您将在当前托管服务提供商处使用一个 IP,在新托管服务提供商处使用一个 IP。
如果您只托管网站而不为客户端托管 DNS,那么客户端必须更新其 DNS 记录,无论它们托管在何处。对于子域,如果客户使用记录,则可以避免这种情况。CNAME
查找CNAME
记录会产生微小的额外开销,但这种情况很少见。记录CNAME
可用于www.example.com
,但它不能用于example.com
自身,因为它必须是唯一的记录,并且example.com
可能还有NS
记录MX
。
因此在这种情况下,实际上没有办法与客户协调过渡。
如果您还为客户托管 DNS,那么他们可以将其NS
记录指向您自己的域内的名称。这样他们就不需要任何粘合剂,并且他们的域将没有除您为他们托管的 DNS 服务器之外的 IP 地址。与记录一样CNAME
,这会产生微小的额外开销。
但是,这种方法确实要求您托管他们的整个 DNS 区域,并且您必须将其托管在两个或更多不同的托管服务提供商处才能提供高可用性。
答案2
您假设将域名的“名称服务器”指向 IP 地址是正确的。虽然“可能”移植 IP,但听起来您不符合实现此目的的要求。
您需要分阶段执行此操作。第一步是让每个域的名称服务器指向一个 DNS 记录,该记录解析为它们当前使用的相同 IP 地址。这样做应该不会产生任何影响。然后,您将启动一个将提供相同响应的新 DNS 服务器,并将 DNS 记录从旧服务器更新为新服务器。您只需要勤奋并相信您拥有的数据,这就是您所能做的一切。
答案3
在 AIX 中,您可以使用 IP 别名来解决这个问题。假设您当前的 IP 地址是 10.5.1.98,而您的新 IP 地址是 90.4.12.67,那么您可以将 10.5.1.98 定义为 90.4.12.67 之上的别名。这样,任何引用 IP 地址 10.5.1.98 的服务器都会自动转发到 90.4.12.67。无论您使用的是哪种 UNIX 版本或 Linux 版本,您都必须使用 IP 别名在 Google 上搜索该版本,以查看是否可以实现它。我知道我是在几个月后才发布这个问题的。这样,任何寻找类似解决方案的人都会对如何处理它有一些想法。