和 BungeeCord 配合使用

BungeeCord 是 md_5 和 SpigotMC 团队联手打造的服务器代理软件,允许服主把 Minecraft 服务器连接在一起而玩家不用断线连接就能在服务器间切换。一种 BungeeCord 的典型用途就是多种不同游戏模式的服务器。

有关 BungeeCord 是什么、如何设置它、它是如何运作的详细信息,见 BungeeCord 官方网站 。此页将集中在针对 Sponge 的具体处理步骤。

警告

要将服务器连接到 BungeeCord,你必须以离线模式运行服务器。在离线模式下,如果没有适当的预防措施,任何人都可以用他们想用的名字登录到这个服务器,比如管理员们的名字。所以请确保你的服务器已经使用防火墙保护了起来。如果你使用 Linux,你可以看看 SpigotMC 提供的防火墙指南以配置你的 IPTables。当然,有些发行版使用 UncomplicatedFirewall “ufw” 等其他的防火墙。

如果你不太习惯使用 Linux,或者你不太确定如何防止其他人未经授权访问你的服务器,你可以寻求有着更多服务器管理经验的其他人的帮助,以保证你的服务器的安全。

注解

如果你使用 SSH ,请确保开放 22 端口,否则你很可能会把你自己锁在服务器外面!

IP 转发

BungeeCord 的 IP 转发模式可以令它将玩家的 UUID 和 IP 地址转发给任何连接的服务器,但服务器需要运行在离线模式下。

警告

安装有 Mod 的 SpongeForge 服务器,如果要求客户端也安装 Mod,那么只能通过使用类似 Waterfall 这样的 BungessCord 的 fork 版本,或是安装诸如 SpongePls 这样的 BungeeCord 插件,才能让 BungeeCord 在 Sponge 服务器上工作。尽管上文提到的软件都出自可信赖的社区成员之手,但 SpongePowered 不对这些产品提供正式支持。

对于 SpongeVanilla 服务器,或是原版客户端连接无 Mod 的 SpongeForge 服务器来说,BungeeCord 的 IP 转发功能是完全没问题的,装了就能用。目前,我们仍然在等待两个试图让 BungeeCord 支持 SpongeForge 的 Pull Request(BungeeCord#1557BungeeCord#1678)合并入 BungeeCord,但至今仍未有更新。就目前来说,可使用上文中提到的其他解决方案,这些解决方案都包含了相应的修复。

使用 BungeeCord 的 IP 转发功能

如果你想要使用 IP 转发功能:

  • 在 BungeeCord 的 config.yml 中把 ip_forward 设置为 true
  • In Sponge’s config (config/sponge/global.conf), set modules.bungeecord to true and bungeecord.ip-forwarding to true
  • 如果你有其他的服务端软件,请查阅和它们有关的文档。

所有 连接到 BungeeCord 网络的服务器都需要这么设置,然后你就照着不使用 BungeeCord 的 IP 转发功能的说明做就可以了。

不使用 BungeeCord 的 IP 转发功能

虽然我们建议你无论何时都使用 IP 转发,但是如果你不想用的话,只需要简单地把 server.properties 中的 online-mode 设置为 false 然后在 Bungee 的 config.yml 中把服务器信息添加进去。Bungee 便会把所有连接转发到你的服务器。

Sponge 的所有实现都可以使用,包括 Mod 版本。