Optimal configuration

2010 August 23

Sockets not quite working in Java

Filed under: debian,java — Eric Fraga @ 21:02

Recently, I had to revisit some code I had written in Java while back, as part of the Jacaranda system for process design and optimisation. This code provided a socket based interface for allowing Octave to communicate with Jacaranda. For some reason, the code which had worked for a very long time (years) now suddenly did not work. As it had been some months since I had used the code, I could not easily identify why.

Searching, using what I thought would be appropriate search terms, on the Web provided no hints as to what may have gone wrong. I gave up and found a different way to solve my problem, using the Octave Forge Java package. So I was happy.

Until today when I needed to install gPROMS from PSE Ltd, one of the few closed source packages I need to use every now and again. This package also makes use of sockets to communicate between different components of the system. So it was back to searching. This time I was more successful and found that the solution was related to Debian‘s recent changes with respect to IPV6 (Debian bug report #560056).

The solution was to turn off a particular system level configuration option:

sysctl net.ipv6.bindv6only=0

(as super-user, of course). This change can be made permanent by editing the file /etc/sysctl.d/bindv6only.conf.

2010-08-23 Mon 22:02

Blog at WordPress.com.