Velocity: настройка сети серверов Minecraft

Гайды

Как соединить лобби и выживание через Velocity: адреса серверов, modern forwarding, общий секрет и проверка входа без обхода прокси.

  • 5 минут чтения
  • 1 просмотр
  • 7 разделов
Моя игра выбрать версию

Запомним в этом браузере и подставим там, где доступна ваша версия. Настройки открытой ссылки важнее этого выбора; отметки версии в вики не меняются.

На странице 7 разделов

Как устроена сеть Velocity

Игрок подключается к Velocity, а прокси передаёт его на лобби или другой игровой сервер. Миры и игровой процесс обслуживают отдельные серверы. Сам прокси не объединяет их инвентари, экономику и плагины в одну общую базу.

Ниже — схема для современных Paper-серверов на одном хосте: Velocity слушает публичный порт 25565, лобби — 127.0.0.1:25566, выживание — 127.0.0.1:25567. Для контейнеров или разных машин адреса будут другими: 127.0.0.1 всегда обозначает текущее сетевое окружение.

Настройка velocity.toml

Сначала запустите прокси для создания файлов, затем остановите его и измените соответствующие поля существующего velocity.toml:

bind = "0.0.0.0:25565"
online-mode = true
player-info-forwarding-mode = "modern"
forwarding-secret-file = "forwarding.secret"

[servers]
lobby = "127.0.0.1:25566"
survival = "127.0.0.1:25567"
try = ["lobby"]

Это фрагмент настроек, а не замена всего сгенерированного файла. Не добавляйте повторную секцию [servers] и не меняйте config-version вручную. Сохраните созданный секрет: он понадобится игровым серверам.

Настройка Paper и передачи игрока

В server.properties каждого backend-сервера задайте его отдельный порт и server-ip=127.0.0.1 для описанной схемы на одном хосте. Проверку лицензии выполняет прокси, поэтому у backend используется online-mode=false.

Далее в современных версиях Paper откройте config/paper-global.yml:

proxies:
  velocity:
    enabled: true
    online-mode: true
    secret: "ВСТАВЬТЕ_СЕКРЕТ_ИЗ_FORWARDING_SECRET"

Замените пример своим секретом и редактируйте существующую секцию. proxies.velocity.online-mode должен соответствовать режиму Velocity. В spigot.yml оставьте settings.bungeecord: false. У старых Paper расположение этих параметров отличается; не переносите современный YAML в старый файл наугад.

Почему нужно закрыть прямой вход

Backend в offline mode нельзя оставлять доступным всему интернету. Для одной машины привязка к localhost ограничивает вход локальной сетью процессов. Для разных хостов ограничьте firewall так, чтобы к игровым портам подключался только прокси. Modern forwarding дополняет эту защиту, но документация PaperMC не считает его заменой firewall.

Не публикуйте forwarding.secret в скриншотах и репозитории. При его раскрытии замените значение у прокси и всех backend-серверов согласованно, затем перезапустите их.

Проверка готовой схемы

  1. Запустите лобби и выживание, проверьте их журналы.
  2. Запустите Velocity и подключитесь через публичный адрес прокси.
  3. Убедитесь, что первый вход приводит в лобби.
  4. Перейдите на выживание командой /server survival, если у игрока есть соответствующее разрешение.
  5. Проверьте UUID, скин и данные игрока после повторного входа.
  6. С другого компьютера убедитесь, что прямое подключение к backend-портам недоступно.
Ошибка Вероятная область проверки
Прокси не видит лобби Адрес, порт, запущенный процесс и сетевое окружение
Ошибка forwarding Режим modern, поддержка ядра и совпадение секрета
Пропал старый инвентарь Режим авторизации и UUID; сначала резервная копия данных
Плагин не загружается Плагин Velocity и плагин Paper предназначены для разных процессов

Частые вопросы

Можно ли добавить Forge или Fabric?

Да, при поддержке нужного forwarding соответствующими модами. Проверяйте таблицу совместимости Velocity для конкретного загрузчика и версии игры.

Velocity заменяет сервер выживания?

Нет. Он маршрутизирует подключения. Сам мир продолжает работать в отдельном серверном процессе.

Можно ли смешать modern и legacy в одном прокси?

Документация Velocity предусматривает один выбранный формат передачи данных. Состав сети нужно подбирать с учётом этого ограничения.

Источники

Читайте дальше