适用于UDP被限速,TCP不限速,且udp2raw无效果,并且需要全局的真V-P-N。用wireguard是因为轻量且快速。
Ubuntu下编译
git clone https://github.com/mullvad/udp-over-tcp.git
cd udp-over-tcp
apt install cargo -y
./build-static-bins.sh
编译好之后,拿走所需的可执行文件,其余可删除
mv target/x86_64-unknown-linux-gnu/release/tcp2udp /usr/local/bin/tcp2udp
mv target/x86_64-unknown-linux-gnu/release/udp2tcp /usr/local/bin/udp2tcp
在安装wireguard的vps(vps的公网IP为
128.1.2.3
)上运行tcp2udp,监听tcp端口4567,转发到wireguard的udp端口55555,命令如下。(后台运行使用systemd、supervisor、screen之类自己搞。)
tcp2udp --tcp-listen 0.0.0.0:4567 --udp-bind=127.0.0.1 --udp-forward 127.0.0.1:55555 --tcp-recv-timeout=130 --nodelay
在中转的vps(例:本地VMware开Ubuntu虚拟机,IP为192.168.9.9)上运行udp2tcp,监听udp端口8910,转发到安装wireguard的vps端口4567
udp2tcp --udp-listen 0.0.0.0:8910 --tcp-forward
128.1.2.3
:4567 --tcp-recv-timeout=130 --nodelay
wireguard客户端连接到192.168.9.9端口8910即可
或许可以搭配https://github.com/cbeuw/Cloak使用,尚未实测。