Прокси позволяет игрокам заходить по одному адресу и переходить между несколькими серверами Minecraft, например между лобби, миром выживания и сервером с мини-играми. У самого прокси нет мира. Игроки подключаются к нему, а он передаёт их серверам за ним, которые называются бэкенд-серверами.
На PlayNHost каждый бэкенд-сервер и прокси это отдельные серверы, у каждого свой тариф и свой адрес. Экземпляры их не заменят, потому что одновременно работает только один экземпляр сервера. См. Как использовать экземпляры для переключения между мирами на одном сервере.
Какой прокси выбрать
| Прокси | Примечания |
|---|---|
| Velocity | Современный прокси от PaperMC. Выбирайте его для любой новой сети. |
| BungeeCord | Оригинальный прокси, который сохранён для старых сетей. |
| Waterfall | Ответвление BungeeCord. PaperMC больше его не развивает и рекомендует Velocity для новых сетей. |
В этом руководстве используется Velocity с серверами Paper за ним. О BungeeCord и Waterfall сказано в конце. Все три доступны как типы серверов в группе Прокси в окне Изменить тип сервера. См. Типы серверов Minecraft.
Прежде чем начать
- Закажите или настройте сервер прокси и не меньше двух бэкенд-серверов. Разместите их в одной локации, чтобы игрокам не приходилось ждать из-за долгих переходов между ними. См. Где работает ваш сервер и как устроена локация.
- Бэкенд-серверы должны работать на Paper или его форке, например Purpur. Безопасная пересылка Velocity настраивается в настройках Paper.
- Игроки получают только Адрес сервера прокси. Адреса бэкенд-серверов держите при себе.
Главная слабость такой схемы. У каждого сервера PlayNHost свой адрес, поэтому игрок, узнавший адрес бэкенд-сервера, мог бы попытаться зайти на него напрямую в обход прокси. От прямого входа защищает безопасная пересылка с секретом, поэтому держите секрет в тайне и никогда не публикуйте адрес бэкенд-сервера. См. первый пункт в разделе «Что сбивает с толку» ниже.
- Версия каждого бэкенд-сервера должна подходить и прокси, и вашим игрокам. Игроки заходят на прокси, поэтому версия их игры должна совпадать с той, которую принимают бэкенд-серверы.
Шаг 1: запустите прокси и скопируйте его секрет
- Настройте сервер типа Velocity. Выбирать версию не нужно. Запустите его один раз, затем остановите. Он создаст файл настроек
velocity.tomlи файл секретаforwarding.secret. - Откройте Files на прокси и откройте
forwarding.secret. Скопируйте текст из него. Это пароль вашей сети. Не делитесь им, не публикуйте его в тикете и не передавайте никому бэкап.
Шаг 2: настройте каждый бэкенд-сервер
Сделайте это на каждом сервере Paper, который будет стоять за прокси.
- Запустите сервер один раз, чтобы появились файлы настроек, затем остановите его.
- Откройте Настройки, затем Server Properties (Java). Выключите Онлайн-режим и нажмите Только сохранить. Документация Velocity требует этого на каждом бэкенд-сервере, потому что проверку входа выполняет прокси.
Откройте Настройки, затем Paper's Global Settings. Эта страница есть в Paper 1.19 и новее. В более старых версиях Paper эти настройки лежат в другом файле (
paper.yml), и такой страницы нет, поэтому сначала обновите их или создайте тикет. С помощью строки поиска найдите три настройки в разделеproxies.velocity, измените их и нажмите Только сохранить:enabled: включите.online-mode: значение должно совпадать сonline-modeв файлеvelocity.tomlпрокси. Он включён, если вы его не меняли.secret: вставьте текст, который вы скопировали изforwarding.secret.
- Запустите сервер.
Выключать Онлайн-режим безопасно только за прокси, который надёжно пересылает игроков, а эти шаги именно так его и настраивают. Бэкенд-сервер с выключенным онлайн-режимом и без пересылки пускает кого угодно под любым именем, в том числе под вашим. См. Как зайти на сервер Minecraft.
Шаг 3: сообщите прокси о бэкенд-серверах
- На прокси откройте Настройки, затем Velocity Settings. Задайте для player-info-forwarding-mode значение
MODERN. Нажмите Только сохранить. - В разделе servers файла
velocity.tomlзадайте каждому бэкенд-серверу имя и его адрес в видеhost:port. Velocity подключается к нему напрямую, поэтому игрокам вводить его не нужно. Начните с Адреса сервера, который показан на странице Обзор этого бэкенд-сервера. Мы не можем обещать, что прокси всегда сможет достучаться до бэкенд-сервера по этому адресу, потому что панель описывает эту запись как внутренний адрес, а не тот, которым пользуются игроки. Если прокси не может связаться с бэкенд-сервером (игроков возвращают назад или кикают, а в Console прокси видна ошибка соединения), создайте тикет, в поле Какой сервер? выберите прокси, назовите бэкенд-сервер в сообщении и спросите, какой адрес должен использовать прокси. - В том же разделе
tryсодержит имена серверов, на которые игроки попадают первыми, по порядку. Если первый недоступен, Velocity использует следующий. Поставьте лобби первым. - Запустите прокси.
Страница настроек редактирует только записи, которые уже есть в файле. Чтобы добавить новый бэкенд-сервер, остановите прокси, откройте velocity.toml в Files, добавьте строку в раздел servers, сохраните и снова запустите прокси.
Зайдите и проверьте
- Запустите все бэкенд-серверы и дождитесь статуса Онлайн.
- Запустите прокси.
- В Minecraft Java Edition зайдите по Адресу сервера прокси. Вы должны попасть на первый сервер из списка
try. - В игре введите
/serverи имя другого бэкенд-сервера, чтобы перейти на него. В Velocity работает имя из разделаservers. - Если игрок отображается с неверным ником, другим UUID или без скина, пересылка не работает. Убедитесь, что на прокси и на каждом бэкенд-сервере один и тот же секрет и что player-info-forwarding-mode равен
MODERN.
О том, как читать Console прокси и что показывают её фильтры, см. Как пользоваться консолью и выполнять команды.
Что сбивает с толку
- Бэкенд-серверы доступны по своему адресу. Игроки, которые знают адрес бэкенд-сервера, могут попытаться зайти на него напрямую. В собственном руководстве по безопасности Velocity сказано, что брандмауэр это первый выбор, а современная пересылка его не заменяет. При современной пересылке и настроенном секрете бэкенд-сервер не принимает игроков, если в данных нет секрета. Держите секрет в тайне и не публикуйте адреса бэкенд-серверов. Если нужен более строгий доступ, создайте тикет и спросите, что возможно.
- Неверный секрет. Бэкенд-сервер с другим секретом отклоняет соединение, и игрока возвращают на первый сервер или кикают. Скопируйте секрет заново.
- Лимиты игроков. Число игроков, которое показывает прокси, это просто число. Каждый бэкенд-сервер по-прежнему ограничивает слоты для игроков по своему тарифу. См. Как переименовать сервер и изменить число слотов для игроков.
- Вайтлист, операторы и баны хранятся на каждом бэкенд-сервере. Задайте их на каждом бэкенд-сервере или используйте плагин прав, который работает на всю сеть. См. Как настроить вайтлист и банить игроков на сервере Minecraft.
- Плагины на прокси отличаются от плагинов на Paper. В разделе Моддинг, затем Плагины прокси показывает только плагины для прокси. См. Как установить плагины на Paper, Spigot и Purpur.
- Бэкенд-серверы с модами требуют дополнительных шагов, которые зависят от загрузчика модов. Создайте тикет, если хотите попробовать такой вариант.
- Игроки Bedrock могут заходить через Geyser на прокси. См. Как разрешить игрокам Bedrock заходить на ваш сервер Java через Geyser.
BungeeCord и Waterfall
Настройка в целом такая же, только с другими параметрами.
- Запустите прокси один раз. Его настройки находятся в разделе Настройки, затем Proxy Settings, это файл
config.yml. - Добавьте бэкенд-серверы в записи servers в виде
host:portи перечислите их вprioritiesв разделеlisteners. Вопрос об адресе из шага 3 актуален и здесь. Включитеip_forward, чтобы игроки сохраняли свою настоящую личность. - На каждом бэкенд-сервере выключите Онлайн-режим, а в разделе Настройки, Spigot Settings включите
bungeecordв разделеsettings. Панель описывает эту настройку как безопасную, только если до сервера нельзя достучаться напрямую. Поскольку у каждого сервера PlayNHost свой адрес, пересылка BungeeCord защищает намного слабее, чем пересылка Velocity, и это веская причина выбрать Velocity для новой сети.
Если не можете решить, выбирайте Velocity.





