Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Reconnect socat connection after network failure

Tags:

socat

I am using a socat command to create a tty interface on my embedded linux device like:

socat pty,link=/dev/ttyS9 TCP:10.0.10.1:9999

The connection is a long distance connecstion over a dsl-line. This line is disconnected every night and my tty interface is down. Is it possible to create the tty interace with a mechanism to reconnect until the server side is online again?

Next question: is it possible to call the socat command from a java programm?

Thanks a lot! Karl-Heinz

like image 879
Karl-Heinz Avatar asked Feb 18 '12 12:02

Karl-Heinz


2 Answers

As of version V 1.4.0.0 socat features the options "retry", "forever", and "interval".

So, this should give you the desired behavior:

socat pty,link=/dev/ttyS9 tcp:10.0.10.1:9999,forever,interval=10,fork
like image 61
FloHimself Avatar answered Oct 23 '22 02:10

FloHimself


Socat is designed to exit when one connection closes.

Workaround: put a infinite loop around your socat start

  while true
    do 
      socat addr1 addr2
      sleep 1
    done
like image 20
Peter Bauer Avatar answered Oct 23 '22 02:10

Peter Bauer