为什么我的域名仍然指向错误的服务器?

为什么我的域名仍然指向错误的服务器?

我有一个域名,不久前(约 1 小时)我更新了名称服务器以指向我的新服务器:

WHOIS 报告告诉我它已更新:
http://www.dnsstuff.com/tools/whois/?ip=ablazex.com&cache=off

为什么当我尝试访问该网站甚至 ping 它时,它仍然解析到旧服务器?

答案1

除非您在旧 DNS 服务器上设置了非标准的“生存时间”,否则您必须等待相当长的时间(通常为 1-7 天)才能让远程用户的缓存 DNS 记录过期。通常可以通过将 TTL 设置为非常短的时间(例如 5 分钟)来防止这种情况发生;但是,出于显而易见的原因,TTL 更改应该在服务器更改前至少一周进行,并且不能追溯更改。至少您会知道下次该怎么做。

建议:

  1. 如果您提供的是完全静态的内容,那么您应该考虑让两台服务器都运行几天。

  2. 如果有问题的服务器是 Web 服务器,您可能能够配置旧网站,以便在转换期间将访问者重定向到新网站。配置一个全新的“A”记录作为指向新网站 IP 地址的子域(例如“new.example.com”)。然后,在旧服务器上,设置 HTTP 刷新标头(或等效元标记),将所有客户端重定向到新网站。


[编辑] 该答案基于以下假设:

  1. 我们推测可能的原因是 A 记录已被各种客户端计算机、ISP 名称服务器等缓存。我们不知道与 @NullUserException 的域关联的过时 A 记录的 TTL。根据我的个人经验,网络托管公司似乎倾向于将 48 小时作为默认 TTL,但这里的其他人报告说看到了其他默认值。我们还发现极不可能有人曾经更改过默认值。

  2. 我们假设 @NullUserException 想要每个人(而不仅仅是他自己)能够在新位置访问该网站;因此,不提供仅影响本地计算机的潜在解决方法(例如,刷新本地 DNS 缓存或编辑本地 hosts 文件)。

  3. “DNS 记录”是指一般的 DNS 记录,而不是任何特定类型的 DNS 记录。

答案2

当您说尝试访问网站或 ping 网站时,它会转到旧服务器时,您能更具体一点吗?您是想访问 www.domain_name.com 吗?如果是,www 的 A 记录或 CNAME 记录指向什么?从链的顶部开始:运行 nslookup(或 dig)并查询域的名称服务器。获取这些结果并查询这些名称服务器以获取网站的 A 记录或 CNAME 记录。结果告诉您什么?

答案3

您的问题可能会在 48 小时内得到解决,但与此同时,如果您需要您的 PC 将 ablazex.com 转换为另一个 IP,而不是您的 DNS 提供的 IP,您可以在主机文件中添加该 IP。在 Windows 中,它位于 c:/Windows/System32/Drivers/Etc/Hosts,您可以使用记事本编辑它并添加以下行:

xxx.xxx.xxx.xxx ablazex.com

其中 xxx.xxx.xxx.xxx 是您希望 ablazex.com 指向的 IP。有时唯一的问题是您的 PC 的 DNS 缓存。假设您使用的是 Windows,您可以在命令提示符中输入:

ipconfig /flushdns

这将清除您电脑的 DNS 缓存,并可能解决您的问题,请确保在编辑主机文件或清除 DNS 缓存后重新启动浏览器。

答案4

同样的事情也发生在我身上,但因为我知道在进行服务器传输之前应该减少 TTL,所以我按照以下步骤操作,并解决了我的问题。

  1. 转到您网站的旧服务器 DNS 记录。
  2. 编辑先前存在的 A 记录或创建指向新服务器 IP 的新 A 记录。如果新站点是域,则为 A;DomainName.com;新服务器 IP;如果是其子域,则为 A;SubDomain.Domain.com;新服务器 IP
  3. 同样将旧服务器的 DNS 记录上的 ns 记录指向新 IP。
  4. 在新服务器上也创建相同的 NS 记录(指向新服务器 IP)。

这解决了我的问题。

替代解决方案:如果您可以亲自指导用户,您也可以让他们在 cmd 上执行“ipconfig /flushdns”并重新启动用户计算机上的所有浏览器。

希望这能有所帮助!谢谢

相关内容