У моих друзей есть сервер Minecraft с IP для подключения (206.217.128.131:25571). Это явно не идеально, так как настоящее доменное имя было бы более удобным для пользователя.
Хотя я делюсь VPS с другом, у которого есть доменное имя, и у нас даже есть сайт для нашего сервера.
Возможно ли, чтобы трафик отправлялся на наш VPS через порт 25565 (порт по умолчанию для minecraft) и VPS перенаправлял трафик на IP-адрес наших серверов?
Должно ли такое соединение проходить через VPS каждый раз или только при подключении игрока? Я не хочу, чтобы мои друзья VPS тормозили из-за этого.
Спасибо за помощь.
Да: это можно сделать двумя способами.
Один из них - использовать что-то вроде редир (1), который должен быть доступен в большинстве дистрибутивов Linux, и который устанавливает второе TCP-соединение, передавая данные между ними.
Другой - использовать брандмауэр в системе для перенаправления. Вам нужно переписать пункт назначения на ваш сервер minecraft и источник на ваш VPS, чтобы пакеты возвращались через VPS. (например: идентично другому, но с ядром и NAT, а не с обычным процессом, пересылающим данные.)
Лучшим решением может быть добавление субдомена, minecraft.example.com
, в домен, обслуживающий VPS. Это может указывать на целевой сервер напрямую, и люди могут подключаться к нему.
У этого нет недостатков, в частности задержки, которые есть у подпрыгивания через сервер, и он по-прежнему дает вам хорошее имя.
iptables - это решение.
Я предпочитаю этот: socat TCP-LISTEN:25571,fork TCP:yourVPS.com:25565