为什么要在一个IP上运行多个Minecraft服务器?

看到客户为他们运行的每台 Minecraft 服务器请求 IP 是一种日益增长的趋势。这主要是因为希望在默认端口(25565)上运行每个服务器,以免玩家对如何访问服务器感到困惑。虽然这对于新玩家来说是可用性和缺乏复杂性的主要优势,但它确实增加了运营成本。

为什么要在一个IP上运行多个Minecraft服务器?-南华中天

  • IP 空间——世界上剩下的 IP 块非常少,因此一旦供应枯竭和需求增加,您可以预期单个 IP 的成本将增加 2 到 5 倍。
  • DDoS 保护– 保护通常以每个 IP 为基础出售,因为这是大多数公司评估其系统“风险”和“使用”的方式。所以基本上,受保护的 IP 越多,服务器的目标就越大。保护具有多个服务器的单个 IP 将为您节省大量成本。(尽管 ReliableSite 提供针对 10 Gbps 以下攻击的免费 DDoS 保护,但这适用于更高级别的保护)。

好消息是 Minecraft(自 1.3.1 版起)现在支持 SRV 记录,消除了玩家的端口问题。您可以在 1 个 IP 上设置多个 Minecraft 服务器,在不同的端口上运行,并设置 SRV 记录以自动将玩家引导到正确的端口。

示例:
mc1.reliablesite.net > 1.2.3.4 端口 25565
mc2.reliablesite.net > 1.2.3.4 端口 25566
mc3.reliablesite.net > 1.2.3.4 端口 25567

设置 Minecraft SRV 记录

Minecraft 的 SRV 记录具有以下格式:

_minecraft._tcp.name TTL 类 SRV 优先权重端口目标
  • name:此记录对其有效的域名。
  • TTL:标准 DNS 生存时间字段。
  • class:标准 DNS 类字段(始终为 IN)。
  • priority:目标主机的优先级,值越低表示越优先。
  • weight:具有相同优先级的记录的相对权重。
  • port : Minecraft 服务器所在的 TCP/UDP 端口。
  • target:提供服务的机器的主机名。

如果您的 DNS 提供商要求 service,请输入 _minecraft  ,如果它要求 proto 或协议,请输入 _tcp。

为什么要在一个IP上运行多个Minecraft服务器?-南华中天

例如,如果您的服务器托管在 11.12.13.14 端口 25565 上,则区域文件中文本形式的 SRV 记录将如下所示:

_minecraft._tcp.mc 3600 IN SRV 0 5 25565 mc1.reliablesite.net
mc1 在 A 11.12.13.14

这指向一个名为 mc1.reliablesite.net的服务器,它 重定向到运行在 11.12.13.14端口 25565 上的Minecraft 服务器 。优先级设置为 0,权重设置为 5。

与 MX 记录类似,SRV 记录中的目标必须指向带有地址记录的主机名。指向具有 CNAME 记录的主机名不是有效的配置。

一旦完成,您将能够仅在 1 个 IP 上运行多个服务器,而不会给任何玩家带来负担。