Pterohost docs

Velocity proxy Minecraft: альтернатива BungeeCord для сети серверов в 2026

Полное руководство по Velocity: установка, velocity.toml, modern forwarding, миграция с BungeeCord, плагины и команды для сети Minecraft.

Кратко: Velocity - современный прокси-сервер от PaperMC, который заменяет устаревший BungeeCord. Потребляет на 30-40% меньше CPU, поддерживает modern forwarding (защита от IP-spoofing), асинхронен, корректно работает с Paper 1.21+ и быстро получает обновления.

Если у вас несколько Minecraft-серверов (lobby, survival, mini-games, creative) и нужно объединить их в сеть с единым входом, в 2026 году ответ только один - Velocity. BungeeCord по-прежнему работает, но устарел технически: однопоточный, без защиты IP-forwarding из коробки, обновляется с задержкой. В этой статье разберём, что такое Velocity, как его установить, настроить velocity.toml, перейти на modern forwarding и мигрировать с BungeeCord без потери игроков.

Pterohost - игровой хостинг с DDoS-защитой L4+L7, NVMe SSD и 24/7 поддержкой. Промокод 4START даёт -20% на первый заказ. Заказать Minecraft хостинг

Что такое Velocity и зачем он нужен

Velocity - это прокси-сервер для Minecraft, разработанный командой PaperMC (теми же людьми, что делают Paper). Прокси сидит между клиентом и набором бэкенд-серверов, обрабатывая подключения на одном порту (по умолчанию 25565) и пересылая игроков на нужный сервер. Игрок видит один адрес play.example.com, а под капотом за ним - lobby, anarchy, mini-games и creative-сервер.

Зачем нужен прокси:

  • Единая точка входа. Один домен, один порт, один логин-экран.
  • Перемещение между серверами. Команды /server lobby, /server survival без переподключения.
  • Распределение нагрузки. Каждая мини-игра - отдельный JVM с собственным TPS и RAM.
  • Whitelist и анти-бот на одном уровне. Прокси фильтрует подключения до того, как они дойдут до Paper.
  • Гибкая аутентификация. Можно завязать online-mode только на прокси, а бэкенд держать в offline.

Альтернативы Velocity: BungeeCord (устаревший), Waterfall (форк BungeeCord от PaperMC, тоже почти не развивается), Gate (Go-реализация), но 95% production-сетей в 2026 - на Velocity.

Velocity vs BungeeCord vs Waterfall: сравнение

ПараметрBungeeCordWaterfallVelocity
Авторmd_5 / SpigotMCPaperMCPaperMC
ЯзыкJavaJavaJava
АсинхронностьЧастичноЧастичноПолная (Netty + reactor)
CPU на 500 игроков100% (base)80%60%
Modern forwardingНетЧерез плагинВстроено
Поддержка 1.21+С задержкойС задержкойСразу
КонфигYAMLYAMLTOML
Плагиныbungee APIbungee APIvelocity API (новый)
Активность 2026МинимальнаяНизкаяВысокая

Вывод: новые сети - только Velocity. Существующие на BungeeCord - мигрировать в течение 2026.

Установка Velocity: пошаговый гайд

Шаг 1. Скачать JAR

Зайдите на papermc.io/downloads/velocity и скачайте последнюю stable-версию (на май 2026 - velocity-3.4.x.jar). Загрузите файл на сервер в отдельную папку, например /home/minecraft/velocity/.

Шаг 2. Стартовый скрипт

Создайте start.sh:

#!/bin/bash
java -Xms512M -Xmx1G \
  -XX:+UseG1GC \
  -XX:G1HeapRegionSize=4M \
  -XX:+UnlockExperimentalVMOptions \
  -XX:+ParallelRefProcEnabled \
  -XX:+AlwaysPreTouch \
  -XX:MaxInlineLevel=15 \
  -jar velocity-3.4.0.jar

Velocity не требует много RAM - 512 MB-1 GB достаточно даже для 1000 игроков, потому что мир не загружается, идёт только маршрутизация пакетов.

Шаг 3. Первый запуск

Запустите bash start.sh. Velocity создаст velocity.toml, forwarding.secret и папку plugins/. После генерации остановите сервер (Ctrl+C или команда shutdown).

Шаг 4. forwarding.secret

В корне Velocity появился файл forwarding.secret со случайной строкой. Это ключ, которым подписываются данные при пересылке игрока на бэкенд. Не публикуйте его, не коммитьте в git. Скопируйте содержимое - оно понадобится на бэкенд-серверах.

Конфигурация velocity.toml

Основной конфиг - velocity.toml. Разберём ключевые секции:

# Версия конфига - не менять
config-version = "2.7"

# Привязка к интерфейсу:порту
bind = "0.0.0.0:25565"

# MOTD - что видно в списке серверов клиента
motd = "<gradient:gold:red>Pterohost Network</gradient>\n<gray>Survival, Creative, MiniGames</gray>"

# Максимум игроков (только отображение)
show-max-players = 500

# Online-mode - проверка лицензии Mojang/Microsoft
online-mode = true

# Forced-hosts: домен -> сервер
[forced-hosts]
"play.example.com" = ["lobby"]
"survival.example.com" = ["survival"]
"creative.example.com" = ["creative"]

# Серверы бэкенда
[servers]
lobby = "127.0.0.1:25566"
survival = "127.0.0.1:25567"
creative = "127.0.0.1:25568"
minigames = "127.0.0.1:25569"

# Порядок попыток подключения при заходе
try = ["lobby"]

# Forwarding-режим
[advanced]
player-info-forwarding-mode = "modern"
haproxy-protocol = false
tcp-fast-open = false
bungee-plugin-message-channel = true
show-ping-requests = true
failover-on-unexpected-server-disconnect = true
announce-proxy-commands = true
log-command-executions = false

Ключевые параметры:

  • bind - порт, который слушает прокси. Открыт в интернет.
  • online-mode = true - игроки проходят проверку лицензии на уровне прокси.
  • [servers] - все бэкенд-сервера с локальными адресами и портами. Эти порты НЕ открываются наружу (закройте через iptables/ufw).
  • try - порядок серверов при первом заходе. Обычно lobby первый.
  • player-info-forwarding-mode = “modern” - режим передачи данных игрока на бэкенд.

Modern forwarding: защита от подмены ника

В offline-режиме бэкенд-сервера злоумышленник может подключиться напрямую к Paper-серверу (если порт открыт) и зайти под любым ником. Modern forwarding решает это: прокси передаёт UUID, IP и скин в подписанном пакете с секретом из forwarding.secret. Если секрет неверен - бэкенд отвергает подключение.

Три режима forwarding в Velocity:

РежимИспользованиеБезопасность
noneТолько для тестовНет
legacyСовместимость со старым BungeeCord-кодомНизкая (IP-spoofing возможен)
bungeeguardBungeeCord + плагин BungeeGuardСредняя
modernVelocity + Paper 1.13+Высокая

Только modern, если бэкенд - Paper 1.13+. Это рекомендация PaperMC.

Настройка Paper-сервера под Velocity

На каждом бэкенд-сервере (Paper, Pufferfish, Purpur):

1. server.properties

online-mode=false
server-port=25566
# 0.0.0.0 только если прокси на другом IP, иначе 127.0.0.1
server-ip=127.0.0.1

online-mode=false обязательно: лицензию проверяет прокси.

2. config/paper-global.yml

proxies:
  velocity:
    enabled: true
    online-mode: true
    secret: 'вставьте сюда содержимое forwarding.secret'

online-mode: true под proxies.velocity - не путать с server.properties: это означает, что Velocity проверил лицензию.

3. spigot.yml (если есть)

settings:
  bungeecord: false

Bungeecord-mode выключить - используется velocity-режим.

4. Файрвол

Бэкенд-порты (25566-25569) должны быть закрыты из интернета:

sudo ufw allow from 127.0.0.1 to any port 25566:25569
sudo ufw deny 25566:25569

Иначе игроки смогут зайти на бэкенд напрямую в offline-режиме.

Плагины Velocity

Velocity использует собственный API, плагины BungeeCord не работают. Топовые плагины для сети:

  • LuckPerms-Velocity - права и группы синхронно по сети.
  • ViaVersion + ViaBackwards + ViaRewind - поддержка клиентов 1.7-1.21 одновременно.
  • MaintenanceMode - режим обслуживания с whitelist для админов.
  • SkinsRestorer - скины в offline-mode (на бэкенде).
  • VPacketEvents - API для разработки.
  • Geyser-Velocity - подключение Bedrock-клиентов (см. Geyser).
  • Plan - аналитика игроков.
  • PremiumVanish - скрытие админов от обычных игроков.
  • VelocityChat / SignedVelocity - чат с обходом 1.19+ chat reporting.

Установка: jar в папку plugins/, перезапуск, конфиги создаются автоматически.

Команды Velocity

Базовые команды для игроков и админов:

КомандаОписание
/serverСписок доступных серверов
/server <name>Переключиться на сервер
/glistСписок игроков на всей сети
/find <player>Найти, на каком сервере игрок
/send <player> <server>Переместить игрока
/velocity reloadПерезагрузить velocity.toml
/velocity pluginsСписок плагинов
/velocity versionВерсия
/velocity dumpСоздать дамп для дебага

Команды требуют пермишен velocity.command.* (по умолчанию у консоли).

Миграция с BungeeCord на Velocity

Если у вас работающая BungeeCord-сеть:

1. Бэкап

tar -czf bungeecord-backup-2026-05-26.tar.gz BungeeCord/

2. Установка Velocity рядом

Поставьте Velocity на временный порт (25575) параллельно с BungeeCord (25565). Не выключайте боевую сеть.

3. Импорт config.yml BungeeCord

Velocity при первом запуске находит config.yml BungeeCord в той же папке и предлагает импорт. Принимаете - velocity.toml заполнится серверами.

4. Замена плагинов

Подберите Velocity-аналоги:

BungeeCordVelocity
LuckPerms-BungeeCordLuckPerms-Velocity
ViaVersionViaVersion + Velocity-build
MaintenanceMaintenanceMode-Velocity
BungeeGuard(не нужен, modern forwarding)
AdvancedTeleport(бэкенд-плагин)

5. Переключение forwarding

На каждом бэкенде выключите BungeeCord-режим и включите Velocity-режим (paper-global.yml), пропишите секрет.

6. Смена порта

Когда Velocity готов - остановите BungeeCord, поменяйте bind Velocity на 25565, обновите DNS если нужно. Время простоя - 1-2 минуты.

7. Проверка

Зайдите на сервер, проверьте /server, перемещение, чат, права. Если всё работает - удалите BungeeCord.

Pterohost - игровой хостинг с DDoS-защитой L4+L7, NVMe SSD и 24/7 поддержкой. Промокод 4START даёт -20% на первый заказ. Заказать Minecraft хостинг

Производительность и тюнинг

Velocity по умолчанию хорошо настроен, но для сети 500+ игроков:

  • Heap. 1 GB достаточно для большинства сетей. Сверх 2 GB смысла нет - Velocity не хранит миры.
  • GC. G1GC из коробки, можно ZGC на JDK 17+ для меньших пауз.
  • Net threads. В velocity.toml есть [advanced] netty-threads - по умолчанию 0 (auto, 2x CPU cores). Для серверов с 8+ ядер можно оставить auto.
  • Compression. compression-threshold = 256 оптимум. Слишком низкий = CPU, слишком высокий = трафик.
  • Connection-throttle. connection-throttle = 4000 (мс) - защита от спам-подключений.

Проверить нагрузку:

# В консоли Velocity
/velocity dump

# Системно
htop  # CPU отдельных потоков Velocity

DDoS-защита для Velocity

Velocity - первая линия обороны. Стандартные меры:

  • Connection-throttle в velocity.toml.
  • Anti-bot плагины: EpicGuard-Velocity, NeoProtect, AntiVPN.
  • Firewall: rate-limit на L4 (iptables hashlimit).
  • Хостинг с встроенной защитой L4+L7 - см. DDoS-защита.
  • Бэкенд-серверы прячем за NAT/локальной сетью, не открываем наружу.

Открытый бэкенд-порт - типичный кейс BungeeCord port ban, который актуален и для Velocity.

Частые ошибки и решения

“If you wish to use IP forwarding, please enable it in your BungeeCord config” - на бэкенде включён bungeecord-mode, а прокси - Velocity. Выключите bungeecord в spigot.yml, включите velocity в paper-global.yml.

“Unable to authenticate with backend server” - неверный forwarding.secret. Скопируйте секрет один-в-один в paper-global.yml.

“Could not connect to a default or fallback server” - бэкенд не запущен или неверный порт в [servers] velocity.toml.

Игроки видят свой ник как “Player123” - forwarding не работает, бэкенд не получает UUID. Проверьте режим forwarding и секрет.

TPS падает на прокси - Velocity не считает TPS как Paper, тут важны network-thread CPU и пакет-rate. Используйте /velocity dump для диагностики.

Что выбрать в 2026: ядро под Velocity

Для бэкенд-серверов под Velocity лучшие ядра (см. подробный обзор ядер 2026):

  • Paper - стабильность, плагины, modern forwarding из коробки.
  • Pufferfish / Purpur - форки Paper с оптимизациями.
  • Folia - регионализированный thread-пул, хорошо для lobby с тысячами игроков на одном сервере.

Spigot и Bukkit под Velocity тоже работают через legacy forwarding, но смысла в 2026 уже нет.

Чек-лист запуска Velocity-сети

  1. Скачать velocity-3.4+.jar.
  2. Стартовый скрипт с 1 GB heap.
  3. Первый запуск - сгенерировался velocity.toml, forwarding.secret.
  4. Прописать [servers] и try.
  5. На каждом бэкенде: online-mode=false, velocity-support=true, секрет в paper-global.yml.
  6. Файрвол: бэкенд-порты только с 127.0.0.1.
  7. Поставить LuckPerms-Velocity, ViaVersion, MaintenanceMode.
  8. Тест: /server, /find, /glist.
  9. DNS на IP прокси, порт 25565.
  10. DDoS-защита на уровне хостинга.

Velocity в 2026 - стандарт для сетевых Minecraft-проектов. BungeeCord можно оставить только в legacy-инсталляциях, новые сети поднимайте сразу на Velocity.