Loading... # 0x0 之前是使用`iptables`进行端口转发,但是`iptables`规则较为麻烦,所以就使用`socat`进行转发 # 0x1 首先,在`PostUp`选项中启动socat时,将socat的进程ID(PID)保存到一个文件中。然后,在`PostDown`选项中读取该文件,并使用保 存的PID来关闭socat进程。 示例: ```ini [Interface] PrivateKey = <PrivateKey> Address = <IPAddress> ... PostUp = /usr/bin/python3 /root/socat.py --range '10.13.13.0/24' add 8080 192.168.137.1:8000 # -d -d可以输出详细的调试信息 #PostUp = socat -d -d TCP-LISTEN:8080,range=10.13.13.0/24,fork,reuseaddr TCP:192.168.137.1:8000 & echo $! > /home/rehtt/8080_socat.pid # 在停止 WireGuard 接口之后执行操作 PostDown = /usr/bin/python3 /root/socat.py --range '10.13.13.0/24' del 8080 192.168.137.1:8000 #PostDown = kill $(cat /home/rehtt/8080_socat.pid) && rm -f /home/rehtt/8080_socat.pid ``` ~~在示例中,使用`/home/rehtt/8080_socat.pid`文件来存储socat进程的PID,并在`PostUp`选项中使用`echo $!`将其写入文件。然后,在`PostDown`选项中,我们使用`kill $(cat /home/rehtt/8080_socat.pid)`命令来杀死socat进程,并使用`rm -f /home/rehtt/8080_socat.pid`命令删除PID文件~~ 使用封装好的脚本处理 <button class=" btn m-b-xs btn-success " onclick='window.open("https://github.com/Rehtt/socat_tools","_blank")'>脚本链接</button> Last modification:September 12, 2023 © Allow specification reprint Support Appreciate the author AliPayWeChat Like 0 如果觉得我的文章对你有用,请随意赞赏