DNS传播时间变通方法?

时间:2015-01-22 19:21:57

标签: apache dns ubuntu-14.04 ttl propagation

我们正准备将我们的网站从一个托管迁移到AWS,这意味着我们需要更改域的IP并且需要时间来传播。 DNS检查程序报告该域名的TTL 3600并不坏。但是,有可能需要更长的时间,或者在那个小时内,人们会因为缓存而访问旧服务器。 我们已经意识到域名注册商级别的任何变更都需要时间,而且可能不是一个好的解决方案。更改TTL也需要时间(即使注册商甚至不允许)。更改NS也需要时间,人们可能仍然会访问旧服务器。更改域名注册商还需要很长时间才能完成。

问题是如何在DNS传播时间内将访问旧服务器的人重定向到新服务器/ IP? 有没有办法通过在旧服务器级别使用某种本地服务器DNS或Apache重定向到新IP /服务器来实现此目的?

2 个答案:

答案 0 :(得分:0)

让我们说你有:

www.example.com CNAME web.oldisp.com

你正在努力:

www.example.com CNAME node123.aws.com

如果您设置了第二条(新)记录,请说:

www-aws.example.com CNAME node123.aws.com

然后将所有到达web.oldisp.com(发往www.example.com)的流量重定向到www-aws.example.com,然后将请求发送到正确的位置。唯一的问题是node123.aws.com上的服务器是否会响应发往www-aws.example.com的请求,以及响应是否包含对www.example.com的引用。您可以使用hosts文件中的条目对此进行测试。

在切换后的一天左右这样离开,那么你只需要担心任何可能已经为www-aws.example.com添加书签的人 - 然后你添加一个重定向规则来将任何此类流量重定向到www .example.com的

答案 1 :(得分:0)

就我个人所做的事情而言,我不必做所有重命名并添加不同的DNS记录,这样就可以保留两个站点。新旧。

将新服务器设置为准备好接收流量的点。 在晚上这样做,我更新OLD server上的数据库配置文件,使用IP地址指向新的数据库服务器。 (如果需要,可以在几分钟内建立一个新的维护页面。)但通常是这样。不要忘记从旧服务器IP授予新的DB访问权限。 然后新的数据库服务器实际上处理所有当前流量。如果他们打到旧网站。

几天前降低TTL后,在DNS中的A记录中切换我的IP。 传播发生在10分钟之内。点击任一站点都不重要,因为所做的任何事情都是使用新的数据库服务器,并且一旦所有DNS服务器赶上,它将无缝地转到新服务器。 24小时的时间应该足以保持两者。