通过 KCPTUN 隧道传输 SSH 连接,以提升传输速度。
网络架构
各网络组件的关系如下(其中 any 表示用于发起请求的任意端口):
Application (any/tcp) => (8388/tcp) KCP Client (any/udp) => (4000/udp) KCP Server (any/tcp) => (8388/tcp) Target Server
服务部署
第一步、下载程序
xtaci/kcptun/releases
https://github.com/xtaci/kcptun/releases/download/v20191127/kcptun-linux-amd64-20191127.tar.gz
第二步、服务端运行
服务端监听 54639 端口,将该端口的报文转发到 127.0.0.1:34091(本地的SSH服务)上:
./server_linux_amd64 -t "127.0.0.1:34091" -l ":54639" \ -mode fast3 -nocomp -sockbuf 16777217 -dscp 46
第三步、客户端运行
客户端监听本地的 22 端口,将该端口的报文转发到 96.45.180.39:54639(远程的 KCPTUN 服务)上:
./client_linux_amd64 -r "96.45.180.39:54639" -l ":22" \ -mode fast3 -nocomp -autoexpire 900 -sockbuf 16777217 -dscp 46
此时,如果要远程服务器时,直接使用 SSH 客户端连接本地的 22 端口即可。
吞吐测试(kcptun + iperf)
通过iperf工具,测试kcptun效果。
相关链接
xtaci/kcptun
Bandwagon(搬瓦工) CentOS 7 安装 shadowsocks-libev 和 kcptun
CentOS 7环境安装Shadowsocks-libev版及Google TCP-BBR优化加速
参考文献