Velocity 代理核心配置子服教程
使用 Velocity 代理核心时,你需要同时配置代理服务器(Velocity)和后端的子服务器(通常是 Paper、Spigot 等)。以下是配置 Velocity 代理和子服务器的基本步骤:
1. 配置 Velocity 代理服务器
首先,打开 Velocity 的配置文件 velocity.toml
,该文件通常位于 Velocity 服务器的根目录中。
velocity.toml
示例配置:
[servers]
# 在此配置您的服务器。每个键代表服务器的名称,值代表要连接的服务器的IP地址。
lobby = "127.0.0.1:25565"
survival = "127.0.0.1:25566"
creative = "127.0.0.1:25567"
# 当玩家登录或从服务器被踢出时,我们应该按什么顺序尝试服务器。
try = ["lobby", "survival"]
# 在此配置您的强制主机。
[forced-hosts]
"lobby.example.com" = ["lobby"]
// 你也可以这样 "lobby.example.com" = ["lobby", "survival"]
[advanced]
# Minecraft数据包的大小达到多大时才进行压缩。将此值设置为零将压缩所有数据包,设置为-1将完全禁用压缩。
compression-threshold = 256
# 应进行多少压缩(从0到9)。默认值为-1,使用默认的6级压缩。
compression-level = -1
# 客户端在上次连接后多快(以毫秒为单位)允许连接?默认情况下为三秒。将此值设置为0可禁用此功能。
login-ratelimit = 3000
# 在此处指定连接超时的自定义超时时间。默认值为五秒。
connection-timeout = 5000
# 在此处指定连接的读取超时时间。默认值为30秒。
read-timeout = 30000
# 启用与HAProxy的PROXY协议兼容性。如果您不知道这是用来做什么的,请不要启用它。
haproxy-protocol = false
# 在代理上启用TCP快速打开支持。需要代理在Linux上运行。
tcp-fast-open = false
# 启用Velocity上的BungeeCord插件消息通道支持。
bungee-plugin-message-channel = true
# 显示来自客户端的ping请求。
show-ping-requests = false
# 默认情况下,Velocity将尝试优雅地处理用户意外断开连接而没有明确断开消息的情况,尝试将用户回退,除了读取超时的情况。BungeeCord将断开用户连接。您可以禁用此设置以使用BungeeCord行为。
failover-on-unexpected-server-disconnect = true
# 向1.13+客户端宣布代理命令。
announce-proxy-commands = true
# 启用命令的日志记录
log-command-executions = false
# 启用连接到代理、切换服务器和断开代理时记录玩家连接。
log-player-connections = true
# 允许通过Transfer数据包(Minecraft 1.20.5)从其他主机转移的玩家连接。
accepts-transfers = false
[query]
# 是否启用响应GameSpy 4查询响应。
enabled = false
# 如果启用查询,查询协议应监听哪个端口?
port = 25577
# 这是报告给查询服务的地图名称。
map = "Velocity"
# 是否默认在查询响应中显示插件
show-plugins = false
2. 配置子服务器
在每个后端子服务器上,你需要配置以下几项:
server.properties
:
- 确保
server-port
设置为正确的端口,与 Velocity 配置中的端口一致。
spigot.yml
:
- 确保
bungeecord
设置为true
。
bukkit.yml
:
- 确保
connection-throttle
设置为-1
。
paper.yml
:
- 确保
use-native-transport
设置为true
(可以提高性能)。
config.yml
(BungeeCord IP Forwarding):
- 在 Spigot 或 Paper 服务器中,你需要确保安装了协议支持插件,如 ProtocolLib。
- 打开
spigot.yml
,设置bungeecord
为true
。 - 打开
server.properties
,确保server-ip
留空。
示例 spigot.yml
:
settings:
bungeecord: true
3. 启用 IP 转发(在 Velocity 和子服务器中)
- 在
velocity.toml
中设置player-info-forwarding-mode
为MODERN
。 - 生成一个
forwarding.secret
文件并将密钥放入其中。确保每个子服务器也使用相同的密钥。
示例 forwarding.secret
文件:
your-very-secret-forwarding-key
4. 重启服务器
在修改完配置文件后,重启所有的子服务器和 Velocity 代理服务器以使配置生效。
5. 测试连接
确保代理服务器和子服务器都在运行,并尝试通过代理服务器 IP 连接到你的服务器。
错误排查
- 如果遇到问题,查看 Velocity 和子服务器的日志文件,找出详细错误信息。
- 确保子服务器的防火墙设置允许代理服务器的 IP 访问相应的端口。
阅读剩余
版权声明:
作者:Miu
链接:https://owii.cn/?p=120
文章版权归作者所有,未经允许请勿转载。
THE END