本文主要是介绍socat用法记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.串口转网络
1.1 物理串口tcp端口服务端模式
socat TCP-LISTEN:8899,fork,reuseaddr FILE:/usr/local/dev/com1,b9600,cs8,raw,echo=0
1.2 物理串口UDP端口
socat UDP-LISTEN:8899,fork,reuseaddr FILE:/usr/local/dev/com1,b9600,cs8,raw,echo=0
1.3 虚拟串口转TCP客户端模式
socat PTY,link=/dev/ttyV1,b9600,cs8,raw,echo=0, TCP:192.168.1.15:8080
1.4 虚拟串口转TCP服务端模式
socat PTY,link=/dev/ttyV1,b9600,cs8,raw,echo=0, TCP-LISTEN:8080,fork
2.端口转发
2.1 TCP端口转发
socat TCP-LISTEN:8080,fork,reuseaddr TCP:1.1.1.1:8080
将端口8080的数据转发到IP 1.1.1.1 的 8080端口
tcp端口转发时,也支持http的转发。
2.2 TCP端口转UDP
socat TCP-LISTEN:8081,fork,reuseaddr UDP:192.168.1.15:8081
2.3 TCP转本地域套接字
socat TCP-LISTEN:3309,reuseaddr,fork UNIX-CONNECT:/var/lib/mysql/mysql.sock
2.4 NAT映射
在一个 NAT 网络环境中,也是可以通过 Socat 将内部机器端口映射到公网上的。在外部公网机器上执行
socat tcp-listen:1234 tcp-listen:3389
在内部私网机器上执行
socat tcp:outerhost:1234 tcp:192.168.1.34:3389
这样,你外部机器上的 3389 就映射在内网 192.168.1.34 的 3389 端口上了。不过这样场景下更推荐内网穿透神器 FRP
3.远程登录
在服务器上执行命令socat TCP-LISTEN:8080,fork,reuseaddr EXEC:/usr/bin/bash以提供shell。
在客户端登录时,输入命令socat - TCP:localhost:8080
4.网络测试
在终端1上启动服务器监听TCP,输入命令socat - TCP-LISTEN:8080
在终端2上启动客户端连接TCP,输入命令socat - TCP:localhost:8080
在终端2上输入内容,就能在终端1上显示
5.文件传输
在服务端接收文件时,执行命令socat -u TCP-LISTEN:8080 open:test.bin,create。
在客户端发送文件时,执行命令socat -u open:test.bin TCP:localhost:8080
这篇关于socat用法记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!