Como implementar o cliente CORBA por trás do NAT

Eu tenho seguintes interfaces.

interface Server {
   void subscribe(in Client client);
};

interface Client {
   void ping();
   void pong();
};

Na inicialização, o cliente se conectará ao servidor e chamará a assinatura (isso). Então o servidor chamará os métodos time to time ping () ou pong () no cliente. No entanto, isso não funcionará se o cliente residir atrás do NAT. Quais são possíveis soluções alternativas para esse problema?

É possível utilizar a conexão TCP criada pelo cliente para chamadas server -> client? Por favor informar.

questionAnswers(1)

yourAnswerToTheQuestion