Войдите в аккаунт
Чтобы приобрести контент, необходимо войти.
Покупка Лицензия на 30 дней
259₽ / мес
Теги
Сетевые
Proxo
v1.0.0 Требуется лицензия
Проксирование TCP, UDP и Raw-трафика. Работает с NAT через Patron.

Что это

Proxo — утилита для перенаправления сетевого трафика с одной машины на другую. Вы запускаете Proxo на сервере с публичным IP, и весь входящий трафик на указанный порт уходит туда, куда вы скажете — на другой сервер, домашнюю машину, или даже на локальный процесс на той же машине.

Протоколы и порты

Proxo работает с тремя транспортными протоколами:

  • TCP — стандартное надёжное соединение, используется большинством серверного ПО
  • UDP — без подтверждения доставки, нужен для голосового чата, некоторых модов и специфичных протоколов
  • Raw — низкоуровневый режим для нестандартных случаев

Порт назначения — любой. Хотите перенаправлять с 25565 на 19132 — без проблем, если машина это разрешает.

Провайдер minecraft_java_edition

Если указать провайдер minecraft_java_edition, Proxo начинает понимать протокол Minecraft Java Edition на уровне handshake. Это открывает дополнительные возможности:

  • MOTD — текст и количество игроков, которые видит клиент при пинге сервера в списке серверов
  • Offline MOTD — отдельный MOTD, который показывается когда целевой сервер недоступен, вместо стандартной ошибки подключения
  • Иконка — 64×64 PNG, отображается слева от названия сервера в списке

Без провайдера Proxo гонит трафик как есть, не вмешиваясь в содержимое. С провайдером minecraft_java_edition он перехватывает только пакеты статуса — само игровое соединение проксируется без изменений.

Proxy Protocol

Proxo умеет добавлять заголовок Proxy Protocol v1 или v2 к проксируемому соединению. Это нужно для того, чтобы целевой сервер видел реальный IP игрока, а не IP Proxo. Большинство серверного ПО (Velocity, BungeeCord, nginx и другие) этот заголовок поддерживают.

Проксирование в одиночный мир

Proxo не знает, что находится на той стороне. Если вы укажете IP и порт одиночного мира с открытым LAN — Proxo будет проксировать туда. Это удобно, если нужно дать кому-то временный доступ к своей игре без публичного IP.

Работа за NAT — Patron

Если целевая машина находится за NAT (домашний компьютер, VPS в приватной сети, сервер за роутером провайдера) и у неё нет белого IP — используется Patron.

Patron — это отдельный JAVA файл, который устанавливается на машину за NAT. Он сам устанавливает исходящее соединение к Proxo по ключу. После этого Proxo начинает гнать трафик через этот туннель в обратную сторону — к Patron, а от него уже к целевому процессу.

Схема: Игрок → Proxo (публичный IP) → туннель → Patron (за NAT) → локальный сервер

Таким образом машине за NAT не нужен белый IP — она сама инициирует соединение.

Proxo-Keygen

Для туннелирования через Patron нужен ключ — его генерирует proxo-keygen. Это отдельная утилита, которая создаёт пару ключей: один прописывается в конфиг Proxo, второй передаётся Patron. По этому ключу Proxo аутентифицирует входящее соединение от Patron и понимает, какой туннель активировать.

Без ключа прямое проксирование (без NAT) работает и не требует никакой авторизации между узлами.

Установка в хостинг-панель

Proxo запускается как обычный JAVA файл, поэтому его можно поставить прямо в панельный сервер на базе Pterodactyl. Это позволяет использовать его вместо HAProxy в панельных инфраструктурах — без доступа к хосту и без правки конфигов на уровне системы.