Проброс портов для Minecraft-сервера дома и на хостинге
Как пробросить порт 25565 на роутере для Minecraft-сервера, почему друзья не подключаются и как проверить порт онлайн.
Кратко: Для подключения друзей к домашнему Minecraft-серверу нужно пробросить порт 25565 через настройки роутера (UPnP или ручное правило). Если провайдер выдал серый IP - проброс не поможет, нужен белый IP или хостинг.
Проброс портов для Minecraft-сервера дома и на хостинге
Поднять Minecraft-сервер у себя дома - задача несложная, но первый барьер, с которым сталкиваются все: друзья не могут подключиться. Сервер работает, вы заходите на него через localhost, но снаружи он недостижим. Причина почти всегда одна - NAT (Network Address Translation) на вашем роутере скрывает компьютер от внешнего интернета. В этой статье разберём полный цикл: что такое NAT и зачем нужен проброс, как настроить правило на роутере, как проверить результат и что делать, если у вас серый IP. В конце - честное сравнение домашнего сервера с арендой хостинга.
Pterohost - игровой хостинг для Minecraft с белым IP из коробки, NVMe-дисками и DDoS-защитой уровня L4/L7. Промокод 4START даёт -20% на первый заказ. Заказать Minecraft хостинг
Как работает NAT и зачем нужен проброс портов
Когда вы подключаетесь к интернету через роутер, провайдер выдаёт один внешний IP-адрес на всю домашнюю сеть. Роутер раздаёт устройствам приватные адреса: 192.168.0.x, 192.168.1.x и т.д. Эта схема называется NAT.
Проблема в том, что NAT работает как односторонний шлюз - он отлично пропускает исходящие соединения (вы сами инициируете запрос, и роутер знает, кому вернуть ответ), но не знает, куда направить входящий пакет, который пришёл “просто на ваш IP”. Входящий трафик теряется на роутере.
Проброс портов (port forwarding) - это правило в роутере вида “весь входящий трафик на порт 25565 -> отправить на компьютер 192.168.0.5:25565”. Роутер запоминает это соответствие и корректно маршрутизирует входящие пакеты.
Порты Minecraft
| Редакция | Порт | Протокол |
|---|---|---|
| Java Edition | 25565 | TCP |
| Bedrock Edition | 19132 | UDP |
| Bedrock Edition (альт.) | 19133 | UDP |
| RCON (управление) | 25575 | TCP |
По умолчанию сервер Java Edition слушает 0.0.0.0:25565 - все сетевые интерфейсы на порту 25565. Изменить порт можно в server.properties:
server-port=25565
Белый и серый IP: определяем ситуацию
Перед настройкой роутера нужно понять, какой IP выдал вам провайдер.
Белый IP (публичный) - уникальный адрес в интернете, принадлежащий только вам. Проброс портов работает.
Серый IP (CGNAT) - приватный адрес вида 10.x.x.x, 100.64.x.x или похожий. Провайдер сам сидит за NAT, и все его клиенты делят несколько публичных IP. Проброс портов на вашем роутере не поможет - пакеты всё равно застрянут на NAT провайдера.
Как проверить тип IP
Шаг 1. Зайдите на 2ip.ru - запомните “Ваш IP”.
Шаг 2. Зайдите в веб-интерфейс роутера (обычно 192.168.0.1 или 192.168.1.1) и найдите раздел WAN/Интернет. Посмотрите, какой IP получил роутер от провайдера.
Шаг 3. Сравните:
- IP с 2ip.ru совпадает с WAN-адресом роутера - белый IP, проброс работает.
- IP с 2ip.ru НЕ совпадает с WAN-адресом роутера - серый IP/CGNAT, см. раздел ниже.
Также серый IP выдают следующие диапазоны на WAN-интерфейсе роутера:
| Диапазон | Тип |
|---|---|
| 10.0.0.0/8 | Приватный (CGNAT) |
| 100.64.0.0/10 | CGNAT (RFC 6598) |
| 172.16.0.0/12 | Приватный |
| 192.168.0.0/16 | Приватный (маловероятно на WAN) |
Пошаговая настройка проброса порта на роутере
Интерфейсы роутеров отличаются, но логика везде одинаковая. Покажем на примерах самых распространённых прошивок.
Шаг 1: Узнайте локальный IP вашего компьютера
На Windows:
ipconfig
Ищите строку “IPv4-адрес” в разделе вашего сетевого адаптера - например 192.168.0.5.
На Linux/macOS:
ip addr show
# или
ifconfig
Шаг 2: Назначьте статический локальный IP
Если роутер каждый раз даёт компьютеру новый адрес по DHCP, правило проброса сломается. Привяжите IP к MAC-адресу компьютера в разделе DHCP роутера (называется “Резервирование адресов”, “DHCP Binding” или “Static DHCP”).
Узнать MAC-адрес сетевой карты:
ipconfig /all
Строка “Физический адрес” - например A0-B1-C2-D3-E4-F5.
Шаг 3: Создайте правило проброса
TP-Link (стандартный интерфейс): Расширенные настройки -> NAT-переадресация -> Переадресация портов -> Добавить
| Поле | Значение |
|---|---|
| Имя сервиса | Minecraft |
| Внешний порт | 25565 |
| Внутренний IP | 192.168.0.5 (ваш ПК) |
| Внутренний порт | 25565 |
| Протокол | TCP |
ASUS (AsusWRT): WAN -> Переадресация виртуального сервера/портов -> Добавить
| Поле | Значение |
|---|---|
| Имя сервиса | Minecraft |
| Диапазон портов | 25565 |
| Локальный IP | 192.168.0.5 |
| Локальный порт | 25565 |
| Протокол | TCP |
Keenetic: Сетевые правила -> Переадресация -> Добавить правило
| Поле | Значение |
|---|---|
| Описание | Minecraft |
| Вход | Провайдер (WAN) |
| Протокол | TCP |
| Открыть порт | 25565 |
| Переслать на адрес | 192.168.0.5 |
| Порт назначения | 25565 |
MikroTik (через WinBox или terminal):
/ip firewall nat add chain=dstnat dst-port=25565 protocol=tcp action=dst-nat to-addresses=192.168.0.5 to-ports=25565 comment="Minecraft"
После создания правила перезагрузите роутер или примените настройки.
Шаг 4: Откройте порт в брандмауэре Windows
Даже с правильно настроенным роутером Windows Firewall может блокировать входящие соединения.
Через GUI:
- Поиск -> “Брандмауэр Windows в режиме повышенной безопасности”
- Правила для входящих подключений -> Создать правило
- Тип: Порт -> TCP -> 25565 -> Разрешить подключение
- Применить для всех профилей (Доменный, Частный, Публичный)
- Имя: Minecraft Server
Через командную строку (от имени администратора):
netsh advfirewall firewall add rule name="Minecraft Server" dir=in action=allow protocol=TCP localport=25565
На Linux с ufw:
sudo ufw allow 25565/tcp
sudo ufw reload
На Linux с iptables:
sudo iptables -A INPUT -p tcp --dport 25565 -j ACCEPT
sudo iptables-save > /etc/iptables/rules.v4
Как проверить, что порт открыт снаружи
После настройки убедитесь, что всё работает, прежде чем звать друзей.
Онлайн-инструменты:
-
mcsrvstat.us - специализированный сервис для Minecraft. Введите ваш внешний IP и порт. Покажет статус сервера, версию, онлайн.
-
canyouseeme.org - универсальная проверка порта. Введите ваш IP и порт 25565, нажмите “Check Your Port”. Если видно “Success” - порт открыт.
-
portchecker.co - ещё один вариант с поддержкой произвольных портов.
Через командную строку (с другого компьютера в интернете, не из вашей домашней сети):
# Linux/macOS
nc -zv ВАШ_ВНЕШНИЙ_IP 25565
# Если ответ: "Connection to ... succeeded!" - порт открыт
# Или через nmap
nmap -p 25565 ВАШ_ВНЕШНИЙ_IP
Важно: проверяйте порт с устройства за пределами вашей домашней сети (со смартфона через мобильный интернет или с другого компьютера). Из вашей же сети проверка через внешний IP может не работать из-за NAT loopback.
Что делать при сером IP (CGNAT)
Если у вас серый IP, обычный проброс портов не сработает. Варианты:
1. Запросить белый IP у провайдера
Большинство российских провайдеров предоставляют статический белый IP за небольшую ежемесячную доплату (100-300 рублей). Позвоните в техподдержку и попросите “подключить статический IP” или “белый IP”. После этого проброс портов заработает.
2. PlayIt.gg - бесплатный туннель для серверов
PlayIt.gg - специализированный сервис туннелирования для игровых серверов. Работает без белого IP, бесплатно для базового использования.
Установка на Linux:
curl -SsL https://playit-cloud.github.io/ppa/key.gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/playit.gpg
echo "deb [signed-by=/etc/apt/trusted.gpg.d/playit.gpg] https://playit-cloud.github.io/ppa/data ./" | sudo tee /etc/apt/sources.list.d/playit-cloud.list
sudo apt update
sudo apt install playit
playit
На Windows - скачайте playit-windows_64.exe с официального сайта, запустите и следуйте инструкциям. Сервис выдаст вам публичный адрес вида something.joinmc.link:25565.
Минусы: повышенная задержка (ping), зависимость от стороннего сервиса, ограничения по пропускной способности в бесплатном тарифе.
3. ZeroTier / Radmin VPN
Позволяют создать виртуальную локальную сеть поверх интернета. Все игроки устанавливают клиент и подключаются к одной сети, после чего используют виртуальный IP сервера.
ZeroTier:
curl -s https://install.zerotier.com | sudo bash
sudo zerotier-cli join ВАША_NETWORK_ID
Игроки подключаются к серверу через виртуальный IP (например 10.147.20.5:25565). Бесплатно до 25 участников.
Radmin VPN - аналог с графическим интерфейсом, популярен среди геймеров, прост в настройке.
Минусы: все друзья обязаны установить клиент, небольшое увеличение ping.
Домашний сервер vs хостинг: честное сравнение
| Параметр | Домашний сервер | Хостинг (Pterohost) |
|---|---|---|
| Стоимость | Электричество + возможно плата за белый IP | Фиксированная ежемесячная оплата |
| Белый IP | Нужно запрашивать отдельно | Включён |
| DDoS-защита | Нет | Есть (L4/L7) |
| Проброс портов | Нужно настраивать | Не нужен |
| Аптайм | Зависит от вашего ПК и электричества | 99.9%+ |
| Скорость диска | HDD/SATA SSD | NVMe |
| Техподдержка | Только вы | 24/7 |
| Доступ к серверу | Пока ПК включён | Всегда |
| Масштабирование | Ограничено железом | Легко |
Домашний сервер подходит для игры в небольшой компании (3-5 человек), когда вы сами за компьютером. Для стабильного сервера на постоянной основе, особенно с модами или большим числом игроков, хостинг выигрывает по совокупности характеристик.
Типичные проблемы и решения
Сервер запущен, но никто не может подключиться
Проверочный список:
- Правило проброса создано и сохранено на роутере
- IP компьютера в правиле совпадает с реальным локальным IP
- Брандмауэр Windows не блокирует порт 25565
- Сервер запущен и слушает на
0.0.0.0:25565(не только127.0.0.1) - Проверяете доступность с устройства вне домашней сети
- У вас белый, а не серый IP
Проверить, на каком адресе слушает сервер:
netstat -ano | findstr :25565
Должно быть 0.0.0.0:25565, а не 127.0.0.1:25565.
На Linux:
ss -tlnp | grep 25565
Порт занят другим приложением
Если при старте сервера видите ошибку Address already in use или Failed to bind to port:
# Windows: найти процесс на порту
netstat -ano | findstr :25565
# По PID найти процесс в диспетчере задач или:
taskkill /PID НОМЕР_PID /F
# Linux
sudo fuser -k 25565/tcp
Провайдер блокирует игровые порты
Некоторые провайдеры блокируют популярные игровые порты на своей стороне. В этом случае смените порт сервера на нестандартный (например 25566 или 35565) в server.properties и создайте новое правило проброса.
server-port=35565
Игроки подключаются как ВАШ_IP:35565.
Динамический IP меняется после перезагрузки роутера
Если провайдер выдаёт динамический белый IP (меняется при перезагрузке), используйте DDNS (Dynamic DNS). Сервисы: No-IP, DynDNS, Duck DNS.
Duck DNS - бесплатный и простой:
- Зарегистрируйтесь на duckdns.org и создайте поддомен
- Установите клиент для автообновления IP (скрипт для Linux или приложение для Windows)
- Давайте друзьям адрес вида
yourserver.duckdns.org:25565
Скрипт обновления для Linux (через cron):
echo url="https://www.duckdns.org/update?domains=ВАШ_ДОМЕН&token=ВАШ_ТОКЕН&ip=" | curl -k -o /tmp/duck.log -K -
Добавить в cron каждые 5 минут:
*/5 * * * * /home/user/duckdns/duck.sh >/dev/null 2>&1
Безопасность домашнего сервера
Открытый порт - это вектор атаки. Несколько рекомендаций:
Обновляйте сервер. Устаревшие версии Minecraft-сервера содержат уязвимости (вспомним Log4Shell 2021 года). Всегда используйте актуальную версию Paper или Fabric.
Используйте whitelist. Разрешите подключение только для известных игроков:
/whitelist on
/whitelist add ИМЯ_ИГРОКА
Ограничьте RCON. Если не используете RCON, отключите его в server.properties:
enable-rcon=false
Защита от брутфорса. Если у вас Linux, настройте fail2ban для защиты от перебора паролей SSH (хотя Minecraft-порт это не касается напрямую, но общая безопасность системы важна).
Регулярные бэкапы. Делайте резервные копии папки world/ перед обновлениями и регулярно (раз в день/неделю). Инструменты: rsync, плагин EssentialsX Backup, или просто cp -r world/ backups/world_$(date +%Y%m%d)/.
Связанные материалы
Если хотите разобраться глубже в защите своего сервера и возможностях хостинга, рекомендуем:
- DDoS-защита L4 для игровых серверов - как работает защита от сетевых атак на уровне L4 и почему домашний сервер без неё уязвим
- DDoS-защита для игровых серверов - полный обзор методов защиты от DDoS, включая фильтрацию трафика
- Turbo-сервер Minecraft - высокопроизводительный хостинг для нагруженных серверов с максимальным приоритетом ресурсов
Заключение
Проброс порта 25565 - обязательный шаг для любого домашнего Minecraft-сервера. Алгоритм прост: узнайте локальный IP компьютера, создайте правило в роутере, откройте порт в брандмауэре и проверьте доступность снаружи. Главный подводный камень - серый IP от провайдера: в этом случае либо запрашивайте белый IP у провайдера, либо используйте туннели вроде PlayIt.gg. Домашний сервер отлично подходит для игры с друзьями без постоянных требований к аптайму, но для серьёзного проекта с круглосуточной доступностью, DDoS-защитой и NVMe-дисками аренда хостинга выгоднее по совокупности затрат времени и нервов.
Pterohost - Minecraft-хостинг с белым IP, NVMe-накопителями и защитой от DDoS без лишних настроек: достаточно купить тариф, установить сервер и раздать IP друзьям. Промокод 4START даёт -20% на первый заказ. Заказать Minecraft хостинг