[omniORB] ssh port forwarding problem

Luke Deller ldeller at xplantechnology.com
Mon Jun 7 15:25:51 BST 2004


Hi Amir,

> I'm trying to connect my corba (wondows/java) client (say its hostname is "C") with my corba (linux/C++) server (say its hostname is "S") via ssh (using port forwarding).

I haven't tried this myself, but since nobody has answered you yet I'll try 
to lend a hand.

> The problem is that although the initial connection is established fine through ssh port forwarding - i.e. I have 1 socket between the client and the ssh client (C:x -- C:y), 1 socket between the ssh client and the ssh server (C:z--S:w) and 1 socket between the ssh server and the server (S:a--S:b), BUT after the first request-response massages, the client openes another direct connection to the server!!!

> I see that the client gets the actual hostname and port in the reply message and I guess it initiates another connection because the initial connetion details (hostname and port number - C:y) doesn't match the one it got in the reply message (S:b).

If the server returns an object reference (IOR), then that IOR will indeed 
contain the hostname and port of the server.  You can configure the hostname 
and port included in the IOR using the "endPoint" or "endPointNoListen" 
options (see the sample omniORB.cfg file for details).

Additionally, if your "client" C actually sends an object reference to the 
server S for a call-back, then you'll either need to:

- establish another ssh tunnel for S to contact C, or
- enable bidirectional IIOP (which lets S contact C via the existing socket 
from C to S).

Regards,
Luke.



More information about the omniORB-list mailing list