Помогите Получить IP от RCON

Статус
Закрыто для дальнейших ответов.

TheSkiffSailor

Новичок
Пользователь
Баллы
21
Имя в Minecraft
TheSkiffSailor
Как получить кодом IP с которого сидят на Rcon клиенте?
Если ркон подключается к серверу то пишется - Rcon connection и айпи.
Думаю суть понятна, получить этот айпи НО при получении комманды в евенте RemoteServerCommandEvent.
 
А что он в этом случае должен возвращать? Консоль? Название сервера? Никогда не использовал этот метод при использовании не-игроком.
Ор, а открыть реализацию и посмотреть не судьба?) Rcon там будет.
 
В RemoteServerCommandEvent никак не получить, ибо в объекте события не содержится экземпляр подключения.

Можно лишь выудить список всех подключений - они находятся в RemoteControlListener (NMS) в Map<SocketAddress, RemoteControlSession>.

Можно пропатчить ядро самостоятельно. Либо попросить кого-то сделать это за тебя - вот тут, например: https://github.com/PaperMC/Paper/issues/new?template=feature_request.md

Есть ещё более извращенский вариант - подменить обработчик подключений/команд своим при помощи рефлексии. Внутри вызывать оригинальный код + нужный функционал. Допустим, вызывать какой-нибудь кастомный RemoteSessionCommandEvent, содержащий экземпляр NMS-сессии или айпишника. Ну, а потом уже стандартный баккитовский RemoteServerCommandEvent для совместимости с остальными плагинами.
В теории может сработать, но на практике проверять не советую.

Считаю, что вполне достаточно указать в server.properties адекватный rcon-пароль и настроить фаервол таким образом, чтобы даже брутить не пытались.
 
В RemoteServerCommandEvent никак не получить, ибо в объекте события не содержится экземпляр подключения.

Можно лишь выудить список всех подключений - они находятся в RemoteControlListener (NMS) в Map<SocketAddress, RemoteControlSession>.

Можно пропатчить ядро самостоятельно. Либо попросить кого-то сделать это за тебя - вот тут, например: https://github.com/PaperMC/Paper/issues/new?template=feature_request.md

Есть ещё более извращенский вариант - подменить обработчик подключений/команд своим при помощи рефлексии. Внутри вызывать оригинальный код + нужный функционал. Допустим, вызывать какой-нибудь кастомный RemoteSessionCommandEvent, содержащий экземпляр NMS-сессии или айпишника. Ну, а потом уже стандартный баккитовский RemoteServerCommandEvent для совместимости с остальными плагинами.
В теории может сработать, но на практике проверять не советую.

Считаю, что вполне достаточно указать в server.properties адекватный rcon-пароль и настроить фаервол таким образом, чтобы даже брутить не пытались.
Тут скорее иной случай. Опять какая то продаже консоли игрокам. Не лечится.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх