# Minecraft: Address already in use — порт занят, что делать

> Ошибка BindException значит, что порт уже слушает другой процесс или RCON выбрал порт игры. Разбираем, как найти виновника и как не сломать соединение.

- Рубрика: Гайды по играм
- Игра: Minecraft
- Опубликовано: 2026-11-13T15:00:00+03:00
- Обновлено: 2026-11-13T15:00:00+03:00
- Адрес: https://blog.egnetwork.ru/minecraft-address-already-in-use-port
- Автор: Команда EGN

Сервер не запускается и пишет `java.net.BindException: Address already in use`. Или сервер работает, но в логе есть предупреждение про RCON, а удалённые программы не подключаются. Оба случая означают одно: программа пытается занять порт, который уже занят. Ниже разберём, откуда берётся конфликт и как его устранить, не ломая адрес, по которому к серверу подключаются игроки.

## Коротко

`Address already in use` значит, что нужный TCP- или UDP-порт уже слушает другой процесс. В Minecraft чаще всего конфликтуют игровой порт и RCON: если в `server.properties` для `rcon.port` стоит тот же номер, что и для `server-port`, RCON не может занять порт. Решение: выключить RCON, если он не нужен, или перенести его на свободный порт из вкладки «Сеть». Игровой порт меняйте только вместе с адресом подключения.

## Шаги

1. **Найдите строку ошибки.** Откройте «Консоль» или «Файлы» → `logs/latest.log`. Ищите `BindException`, `Address already in use` или `Unable to initialise RCON`. Точный текст подскажет, какой порт занят: игровой или RCON.

2. **Сверьте порты в `server.properties`.** Откройте файл в «Файлах» или в «Настройках сервера». Нужны три строки:
   - `server-port` — игровой порт, TCP, по умолчанию 25565;
   - `enable-rcon` и `rcon.port` — RCON, TCP, по умолчанию 25575, по умолчанию выключен;
   - `enable-query` и `query.port` — query, UDP, по умолчанию выключен.

   ```properties
   server-port=30536
   enable-rcon=true
   rcon.port=30536
   ```

   В этом примере `rcon.port` совпадает с `server-port` — это классическая поломка. Один порт не может слушать два сервиса.

3. **Посмотрите, какие порты выданы серверу.** Вкладка «Сеть» показывает адрес подключения и список всех портов тарифа: игровой, голосовой чат, карта, RCON. Там же видно, какой порт за каким сервисом закреплён.

   ![Доктор сервера: RCON не запустился, порт занят](https://blog.egnetwork.ru/media/137)

   На скриншоте доктора видно две вещи. Сам сервер работает, а RCON не запустился, потому что `java.net.BindException: Address already in use`. Доктор предлагает два пути: «Исправить порт RCON» (переносит RCON на дополнительный порт сервера) или выключить его. Выбирайте выключить, если RCON вам не нужен: панель и так даёт консоль.

4. **Исправьте RCON.** Если RCON нужен для бота или программы управления, перенесите его на свободный порт из «Сети» (кнопка «Исправить порт RCON» в карточке доктора делает это сама) и проверьте, что `rcon.port` обновился. Если свободного порта нет, выключите RCON: `enable-rcon=false`.

5. **Проверьте, не занят ли порт другим сервером.** Если порты в файле и в «Сети» не пересекаются, а ошибка осталась, возможно, предыдущий процесс ещё не завершился. Остановите сервер, подождите полминуты и запустите снова. Если ошибка повторяется, напишите в поддержку с текстом ошибки: порт на ноде могут держать только они.

6. **Проверьте результат.** Запустите сервер, дождитесь строки `Done (…)!` и подключитесь с игрового клиента. Если нужен RCON, проверьте подключение из программы управления.

## Что за порт и где он нужен

Схема ниже показывает, какие порты обычно открыты у одного сервера Minecraft с плагинами.

![Порты одного сервера Minecraft: игровой, RCON, query и плагины](https://blog.egnetwork.ru/media/138)

Игровой порт TCP — это адрес, который вы даёте игрокам. Query по умолчанию работает по UDP и выключен (в `server.properties` его порт по умолчанию совпадает с игровым, 25565). RCON — TCP и тоже выключен, пока вы его не включите. Голосовой чат, Bedrock-вход и веб-карта используют свои порты из «Сети»: у них свой протокол (UDP, TCP или оба), поэтому не путайте их с игровым.

## Почему нельзя просто «поменять порт»

Соблазн понятен: взять другой номер в `server-port` и запустить. Но тогда адрес для игроков изменится, а старый перестанет работать. Игровой порт выдаётся серверу автоматически, и снаружи доступны только выданные порты (их список — во вкладке «Сеть»). Если вы вписали в `server-port` номер, которого нет в этом списке, сервер запустится, но игроки не смогут к нему подключиться.

Поэтому правило простое: игровой порт не трогаем, RCON переносим или выключаем.

## Кто занял порт на самом деле

Если RCON и игровой порт разведены, а ошибка осталась, значит, порт занят другим процессом. Если сервер у вас на собственном VPS, проверка делается так (у игрового хостинга доступа к хосту нет, там это делает поддержка):

```bash
sudo ss -tulpn | grep 30536
```

Вместо 30536 подставьте свой номер порта. Строка покажет протокол, адрес и процесс, который слушает порт. Если в ней виден тот же сервер, значит, это ваш предыдущий экземпляр, который не завершился. Если порт занят чужим процессом, напишите в поддержку с номером порта и временем ошибки: такие случаи решаются на стороне хоста.

Для пользователя панели проще другой путь. Откройте «Сеть» и проверьте, что у каждого сервиса свой номер. Если два сервиса в списке используют один порт, сообщите в поддержку. Если все разные, а ошибка повторяется, значит, конфликт внутри самого `server.properties`: RCON или query совпали с игровым портом вручную.

## Что менять, а что нет

Меняйте `rcon.port` и `query.port`, если эти сервисы нужны. Не меняйте `server-port` без обновления адреса для игроков. Если вы переносите сервер на другую локацию, адрес тоже поменяется: сообщите игрокам новый адрес из «Сети» и не копируйте старый.

После изменений полезно проверить порты в ещё одном месте: в логе при старте сервер пишет адрес, на котором он слушает. Если там другой номер, чем в «Сети», значит, файл настроек и выданный порт разошлись.

## Симптом → причина → решение

| Симптом | Причина | Решение |
|---|---|---|
| `BindException: Address already in use` при старте | Порт занят другим процессом или предыдущим экземпляром | Перезапустить через панель; если повторяется, поддержка проверит хост |
| `Unable to initialise RCON` при работающем сервере | `rcon.port` совпал с игровым портом | Перенести RCON на свободный порт из «Сети» или выключить |
| Игроки не заходят, сервер «запущен» | Адрес передан с другим портом | Передать адрес целиком из «Сети» |
| Голос не работает, игра работает | Порт голоса закрыт для UDP | Проверить протокол порта голоса в «Сети» |
| Конфликт после смены `server-port` вручную | Файл и выданный порт разошлись | Вернуть порт из «Сети» и не менять его вручную |

## Как сделать в панели EGN

1. Откройте сервер и перейдите в «Сеть». Там список всех портов тарифа с назначением.
2. Найдите строку RCON. Если RCON включён и совпадает с игровым портом, нажмите «Исправить порт RCON» в карточке доктора или выключите RCON строкой `enable-rcon=false` в `server.properties`.
3. Если RCON нужен, выберите свободный порт из списка тарифа. Если свободного порта нет, оставьте RCON выключенным: консоль в панели и так доступна.
4. Перезапустите сервер и проверьте лог на наличие `BindException`.
5. Сообщите игрокам адрес из «Сети» ещё раз, если он менялся.

![Доктор сервера: RCON не запустился, порт занят](https://blog.egnetwork.ru/media/137)

Карточка на скриншоте предлагает два варианта: перенести RCON или выключить его. В большинстве случаев подходит второй: если бот или программа управления не используется, RCON можно не включать вовсе.

## Частые ошибки

- **Совпадающие `server-port` и `rcon.port`.** Самая частая ошибка. Оставьте игровой порт, а RCON переведите на другой номер или выключите.
- **Включённый RCON без нужды.** Если RCON не используется, выключите его. Меньше открытых портов — меньше проблем.
- **Смена порта без обновления адреса.** Игроки будут подключаться к старому адресу. Сообщите новый адрес из «Сети» или не меняйте его вовсе.
- **Лечить ошибку перезагрузкой по кругу.** Если конфликт не уходит, найдите виновника по логу. Повторный старт не исправит настройку.
- **Путать TCP и UDP.** Игровой порт Java — TCP, query и голосовой чат — UDP, у Bedrock-входа (Geyser) смотрите протокол в «Сети»: в новых версиях Geyser используется и TCP, и UDP. Занятость проверяется для нужного протокола.

## Вопросы и ответы

### Что значит Address already in use?

Нужный сетевой порт уже занят другим процессом. Сервер не может его занять и либо не стартует, либо отключает сервис, который на нём работает.

### Почему RCON мешает игровому порту?

Если номера RCON и игрового порта совпадают, два сервиса пытаются слушать один адрес. Перенесите RCON на другой номер из «Сети» или выключите его.

### Можно ли менять server-port вручную?

Не нужно: адрес игроков привязан к выданному серверу порту, а другие порты снаружи недоступны. Если нужен дополнительный порт (голос, карта), выдайте его во вкладке «Сеть».

### Нужно ли открывать RCON в интернет?

Нет, если это не требуется. RCON даёт полный доступ к консоли. Включайте его только тогда, когда он нужен боту или программе, и не публикуйте пароль.

## Итог

`Address already in use` почти всегда означает конфликт портов. Сверьте `server-port`, `rcon.port` и `query.port` с вкладкой «Сеть», выключите RCON, если он не нужен, или перенесите его на свободный порт. Игровой адрес не меняйте без необходимости. Смежные статьи: [про Java-версию](https://blog.egnetwork.ru/minecraft-unsupported-class-file-major-version), [про память](https://blog.egnetwork.ru/minecraft-out-of-memory-chto-delat) и [про сервер, который не виден снаружи](https://blog.egnetwork.ru/server-ne-viden-snaruzhi-porty-fayervol).

Сервер под Minecraft за пару минут — [egnetwork.ru](https://egnetwork.ru/)

---

Материал EGN (blog.egnetwork.ru), обновлено 13 ноября 2026; при цитировании указывайте ссылку.
