[omniORB] Multiple Interface Selection and omniNames

Christian Hansen clh at cray.com
Wed Dec 5 16:41:59 GMT 2007


I would like to know how to configure omniNames to properly run on a 
machine with 2+ network interfaces.
Supposing I have a machine where the interfaces are named host1a and 
host1b, and host1a is publicly accessible whereas host1b is not. I want 
to run omniNames and my CORBA services on host1 and my clients somewhere 
else, say host2.  If I do:

host1b>omniNames -start -logdir /some/path &
host1b>nameclt -ior corbaname::host1a: bind_new_context test_context
host2>nameclt -ior corbaname::host1a: list

The last command eventually times out.  A look at tcpdump shows that 
some of the communication is being attempted via the private interface.  
I have tried setting ORBendPoint = giop:tcp:host1a:, but that doesn't 
seem to help.  Any ideas?

Thanks,
Christian Hansen

P.S. This was all done with omniORB 4.1.0 on a x86_64 box running Linux 
2.6.16. With logging turned up to a verbosity level of 10 for omniORB, I 
got:

on host1:
omniORB: Accepted connection from giop:tcp:[::ffff:72.14.207.99]:53914 
because of this rule: "* unix,ssl,tcp"
omniORB: Adding root/<1641574701007840/1> (activating) to object table.
omniORB: Creating ref to local: root/<1641574701007840/1>
target id      : IDL:omg.org/CosNaming/BindingIterator:1.0
most derived id: IDL:omg.org/CosNaming/BindingIterator:1.0

on host2:
omniORB: Distribution date: Tue Nov 28 13:27:23 GMT 2006 dgrisby
omniORB: Information: the omniDynamic library is not linked.
omniORB: Creating ref to remote: key<NameService>
target id      : IDL:omg.org/CORBA/Object:1.0
most derived id:
omniORB: AsyncInvoker: thread id = 1 has started. Total threads = 1
omniORB: Creating ref to remote: key<NameService>
target id      : IDL:omg.org/CosNaming/NamingContext:1.0
most derived id:
omniORB: Creating ref to remote: root/<1641574701007840/1>
target id      : IDL:omg.org/CosNaming/BindingIterator:1.0
most derived id: IDL:omg.org/CosNaming/BindingIterator:1.0
omniORB: LocateRequest to remote: root/<1641574701007840/1>
omniORB: Unable to open new connection: giop:tcp:192.168.0.4:2809
omniORB: throw giopStream::CommFailure from 
giopStream.cc:1148(0,NO,TRANSIENT_ConnectFailed)
list: Cannot contact the Naming Service because of TRANSIENT exception.
Is the naming service running?




More information about the omniORB-list mailing list