和 BungeeCord 配合使用

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

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

警告

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

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

注解

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

IP 转发

BungeeCord 有一种模式被称为 IP 转发,这使得 BungeeCord 可以把玩家的 UUID 和 IP 地址转发到任何一个服务器上去,即使该服务器以 Offline 模式运行。目前的 BungeeCord 版本支持 SpongeVanilla 的 IP 转发,不过 SpongeForge 的 IP 转发只支持原版客户端——使用 Mod 客户端不能通过不加修改的 BungeeCord 登录 Mod 服务器。SpongeForge 只完全支持修改过(Patched)的 BungeeCord,或者添加了社区提供的 BungeeCord 插件的版本。

向 BungeeCord 发送的一个 Pull Request 添加了 SpongeForge 的原生支持。我们也在等待它被添加进主代码仓库中:

不使用 BungeeCord 的 IP 转发功能

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

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

使用 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 转发功能的说明做就可以了。