如果服务器宕机则重定向域名

如果服务器宕机则重定向域名

我目前正在寻找一种方法,以便在我的服务器宕机时重定向用户。有什么方法可以做到吗?

例如:如果有人想连接到我的 Teamspeak 服务器但其处于离线状态,它应该自动将用户重定向到备份 Teamspeak 服务器。

知道如何实现这样的事情吗?

答案1

我能想到的唯一方法是设置一个中间服务器来检查 Teamspeak 服务器的可用性。

因此,实际的 URL(例如 teamspeak.domain.com)将指向中间服务器上的 PHP 页面,该页面将检查实际服务器的状态并相应地重定向用户。

答案2

您可以尝试设置循环 DNS 设置。有很多不同的方法可以实现这一点,但维基百科页面将为您提供一个起点。

循环 DNS - 维基百科

答案3

我以前曾寻找过 Teamspeak 的解决方案。如果我没记错的话,ts3dns可能对你有用。我不记得它是否提供了添加 2 条记录(主记录、备份记录)的功能,但你可以让第三台服务器检查服务器的可用性,并将 DNS 记录设置为正确的服务器。

实际上,您需要一个 TTL 非常低的 DNS 服务器。这可能是 ts3dns、no-ip 之类的服务,甚至是您自己的自定义 DNS 服务器,它也会检查可用性并做出相应的响应。

请记住,由于 Teamspeak 不支持负载平衡,因此您无法使用循环 DNS 设置,因为人们最终会连接到不同的服务器。出于同样的原因,一旦连接解决,您的服务器检查器就不应该将记录改回主服务器。如果您想这样做,您还应该连接到辅助 TS 服务器并重新启动它,以便所有客户端重新连接到主服务器。

不幸的是,由于我需要更简单的方法(不需要第三台服务器或外部 DNS 服务),我最终为我的部落设置了 2 个子域(ts1.domain.com、ts2.domain.com),并让每个人都知道,如果主服务器出现故障,他们应该使用第二个服务器。他们还使用连接多台服务器的功能,以便他们知道主服务器何时恢复在线。

相关内容