小编src*_*son的帖子

带有虚拟 tty 链接和 fork 的 socat 删除了我的 pty 链接

我需要能够将 tcp 连接多路复用到单个虚拟 tty,以测试通过串行端口进行通信的软件。我一直在使用以下命令创建一个侦听 tcp 端口的服务器,然后将数据转发到 PTY。

socat -d -d PTY,link=/dev/ttyV1,waitslave,echo=0,raw TCP-LISTEN:11313,reuseaddr,fork
Run Code Online (Sandbox Code Playgroud)

我的问题是当端口 11313 上的 tcp 客户端断开连接时,socat 会删除我到 /dev/ttyV1 的链接,从而终止与连接的其他所有人的会话。

有没有办法保留这个链接?或者也许在 socat 之外创建一个伪 tty 以便我不必担心维护它?我试过 /dev/tty1 和 /dev/ttyS1 但我没有任何运气。我对这些的命令是:

socat -d -d file:/dev/tty1,nonblock,echo=0,raw TCP-LISTEN:11313,reuseaddr,fork
Run Code Online (Sandbox Code Playgroud)

我的要求:能够在一端将一个软件连接到串行 tty,然后在另一端连接多个 tcp 客户端。Tcp 客户端消息被正确序列化和多路复用,因此消息不会相互重叠。

sockets tcp serial-port listener socat

4
推荐指数
2
解决办法
1万
查看次数

标签 统计

listener ×1

serial-port ×1

socat ×1

sockets ×1

tcp ×1