Какой порт используется Java соединение RMI?

Я могу знать, какой порт используется Java соединение RMI?

Если я хочу подключить клиентское приложение Java к серверному приложению Java с помощью соединения RMI, какой порт я должен открыть в машине сервера так, чтобы клиентское приложение могло соединиться с ним?

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

18
задан Ashan 22 September 2017 в 01:52
поделиться

3 ответа

RMI обычно не работает через брандмауэр, поскольку он использует непредсказуемые порты (он запускается на 1099, а затем запускается со случайным портом после этого).

В таких ситуациях обычно необходимо использовать туннелирование RMI через HTTP, что хорошо описано здесь .

23
ответ дан 30 November 2019 в 06:39
поделиться

В RMI в отношении портов задействованы два различных механизма:

1) По умолчанию реестр RMI использует порт 1099

2) Клиент и сервер (заглушки, удаленные объекты) обмениваются данными через случайные порты, если только фиксированный порт был указан при экспорте удаленного объекта. Связь запускается через фабрику сокетов, которая использует 0 в качестве начального порта, что означает «использовать любой доступный порт» в диапазоне от 0 до 65535.

10
ответ дан 30 November 2019 в 06:39
поделиться

Обычно порт на сервере устанавливается с помощью команды rmiregistry. Вы можете установить порт в командной строке или по умолчанию будет 1099

3
ответ дан 30 November 2019 в 06:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: