风险提示:虚拟货币不具有法定货币等同的法律地位,参与虚拟货币投资交易存在法律风险,继续浏览代表你同意以上所有声明,否则请立即关闭本站!

说明: 由于用iptables经常不成功。所以只能寻求另一种办法,就是用socat工具来完成端口转发,如果你只有少数几个端口要转发的话,那么socat就是比较好的选择了。socat唯一麻烦的地方就是好像我没找到如何转发端口段,只能一个命令一个端口。不过如果只是自用转发少量端口的话还是蛮好用的。

socat安装

CentOS系统

yum install -y socat

Ubuntu或Debian系统

apt-get update && apt-get install -y socat

socat的使用

1、转发 TCP

nohup socat TCP4-LISTEN:10000,reuseaddr,fork TCP4:1.1.1.1:10000 >> socat.log 2>&1 &

说明:

1. nohup:

nohup 是一个命令,用于在用户注销或终端关闭后继续运行指定的命令。它忽略挂断信号(SIGHUP),确保命令在后台持续运行。
2. socat:

socat 是一个多功能的网络工具,可以在两个数据流之间建立双向通信。它支持多种协议和连接方式。
3. TCP4-LISTEN:10000,reuseaddr,fork:

TCP4-LISTEN:10000:表示在本地监听 TCP4 协议的 10000 端口。
reuseaddr:允许重用本地地址和端口,即使端口仍在使用中也可以绑定。
fork:为每个新连接创建一个子进程,允许多个客户端同时连接。
4. TCP4:1.1.1.1:10000:

表示将本地监听的连接转发到远程服务器 1.1.1.1 的 10000 端口。
5. >> socat.log 2>&1:

>> socat.log:将标准输出(stdout)追加到文件 socat.log 中。
2>&1:将标准错误(stderr)重定向到标准输出,因此错误信息也会被写入 socat.log 文件。
6. &:

&:将命令放入后台运行,释放当前终端。

7. 写入/etc/rc.local开机启动

将此命令添加到/etc/rc.local文件中,可以在系统启动时自动执行该命令,实现开机自启。
需要确保/etc/rc.local有可执行权限(chmod +x /etc/rc.local)。

2、转发 UDP

nohup socat -T 600 UDP4-LISTEN:10000,reuseaddr,fork UDP4:1.1.1.1:10000 >> socat.log 2>&1 &

很方便吧!把tcp改成udp就是转发udp了。说明如上。也可以直接写到/etc/local里面开机自动启动。

发表评论