Я хочу подключить клиентов к серверу с помощью ZeroMQ (привязки java, jzmq), но мне очень нужна информация TCP, например, TCP/IP-адрес клиентского запроса! Проблема в том, что для того, чтобы объявить службу в сети, мне нужно получить TCP-адрес запроса, чтобы иметь возможность перенаправлять клиентов на эту службу. В этом случае брокер является центральным «сервисным реестром». Однако, имея службы ZeroMQ с обеих сторон, я не вижу возможности получить эту информацию.
Что я делаю сейчас, так это устанавливаю фиктивное соединение с брокером, используя стандартный сокет, после того, как соединение установлено, я беру IP-адрес, используемый для этого соединения, и снова закрываю соединение. Полученный IP-адрес теперь используется для привязки к нему с помощью сокета ZeroMQ на произвольном порту.
Я думаю, что это решение является самым уродливым из возможных, поэтому: какое решение этой проблемы лучше?
Привет.