2012-02-18 225 views
5

后连接我使用socat命令等我的嵌入式Linux设备上创建一个tty接口:重新连接socat网络故障

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

的连接是通过DSL线长距离connecstion。这条线每天晚上断开连接,我的tty接口关闭。是否有可能创建一个机制重新连接,直到服务器端再次联机的tty interace?

下一个问题:是否可以从java程序调用socat命令?

非常感谢! Karl-Heinz

回答

1

从版本V 1.4.0.0开始,socat具有“重试”,“永久”和“间隔”选项。

所以,这应该给你所期望的行为:

socat pty,link=/dev/ttyS9 tcp:10.0.10.1:9999,forever,interval=10,fork 
+0

在第一次连接这只作品。如果连接已关闭,则不会重新连接。 – lethalman 2015-07-22 10:13:45

+0

@lethalman你介意解释一下你的设置吗?你在两端使用'socat'吗?你是否在两端设置了“永远”选项? – FloHimself 2015-07-23 06:48:57

+1

如果第一次连接不成功,'socat - tcp:foo永远'将尝试永久重新连接。但是建立连接后,如果端点断开连接,socat将会退出。 – lethalman 2015-07-23 12:22:31

1

Socat被设计为当一个连接关闭退出。

解决方法:把一个无限循环在你socat开始

while true 
    do 
     socat addr1 addr2 
     sleep 1 
    done