05
2024
08
16:28:14

使用KCPTun中转加速境外服务器&多种方案

多台中转服务器加速境外 SS 服务器方案,用的是 KCP 加速,当然没啥要求也可以用 iptables 端口转发,需要注意的是 kcptun 只支持单端口加速,如果需要加速多个端口,需要新建多条规则,KCP 还可以和 BBR 共同使用。

kcptun 简介

kcptun 是一个非常简单和快速的,基于 KCP 协议的 UDP 隧道,它可以将 TCP 流转换为 KCP + UDP 流。而 KCP 是一个快速可靠协议,能用比 TCP 浪费 10%-20% 的带宽的代价,换取平均延迟降低 30%-40%,延迟最大能能降低三倍。由于 kcptun 使用 Go 语言编写,内存占用低(能在 64M 内存服务器上稳定运行),而且适用于所有平台,包括 ARM 平台。

项目地址:
KCP协议
kcptun

kcptun 安装

注意服务端和客户端的版本最好一致,如果不一致可以去 kcptun 的项目地址中下载对应你系统的最新版。

服务端

  1. 这里采用一键脚本部署,SSH 连接服务器执行以下命令,CentOS 系统需要关闭防火墙或者放行相应端口

mplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" contenteditable="false" design="by Mashiro" style="box-sizing: border-box; overflow: auto; font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-stretch: normal; font-size: 15px; line-height: 1.6; font-family: "Microsoft YaHei", Arial, sans-serif; background-color: rgb(33, 37, 43); border-radius: 5px; margin-bottom: 1.6em; max-width: 100%; text-shadow: none; position: relative; padding-top: 30px; box-shadow: rgba(0, 0, 0, 0.4) 0px 10px 30px 0px;"># CentOS 7+ / Debian 8+ / Ubuntu 16+wget --no-check-certificate https://github.com/kuoruan/shell-scripts/raw/master/kcptun/kcptun.shchmod +x ./kcptun.sh./kcptun.sh
  1. 上面的命令运行后,会有一系列参数设置项供选择,大部分回车选择默认即可,少部分需要自己设置,具体如下

  • 端口:默认是 29900,kcptun 客户端连接服务端使用的端口,可以保持默认,添加多条规则时需要修改

  • 加速的地址:默认为本机 127.0.0.1,加速其他服务器,需要填写其公网IP

  • 加速的端口:需要加速的端口,例如 Shadowsocks 服务端口

  • 密码:自己设置,不要使用默认密码,由于 kcptun 客户端连接

  • 加密方式选择:建议默认 aes,较强的加密方式会影响网速

  • 加速模式:默认 fast 即可,越快越浪费带宽

  • MTU:默认 1350 即可

  • sndwnd:发送窗口大小,与服务器的上传带宽大小有关,这项与 rcvwnd 的比例会影响加速效果,可以暂时设置为默认的512,不要大于你的本地宽带

  • rcvwnd:接收窗口大小,与服务器的下载带宽大小有关,可以暂设置为默认的 512 或 1024,不要大于你的本地宽带

  • 数据压缩:y,关闭数据压缩,可以一定程度上提升传输效率

  • 其他参数保持默认即可......

  1. 常用功能及命令

supervisorctl start kcptun  # 启动supervisorctl stop kcptun  # 停止supervisorctl restart kcptun  # 重启supervisorctl status kcptun  # 状态./kcptun.sh uninstall  # 卸载

客户端

这里只例举 Windows 和 Linux 客户端,其他见 kuptun 项目
kcptun:https://github.com/xtaci/kcptun/releases/

  1. Windows 客户端
    图形界面:https://github.com/dfdragon/kcptun_gclient/releases
    Windows 32位下载:windows-386,64位下载:windows-amd64
    将下载好的 kcptun 客户端解压,拖入 kcptun_gclient 目录中,点击右上角的浏览按钮,选择 client_windows_xxx.exe 的路径,最后根据服务端生成的配置信息,填写启动即可。


  2. Linux 客户端
    根据你的系统架构下载对应的包,这里以 amd64 CentOS 7 举例,下载我打包好的 kcpclient 客户端,将目录中的 client_linux_amd64 替换为最新的版本,编辑 client-config.json 文件,修改为你的 kcptun 服务端连接信息,赋予 .sh 和 client_linux_amd64 文件执行权限,最后执行 bash start.sh 即可,如果要添加多条规则,新建多个 client-config.json 文件然后重启 kcpclient 即可 bash restart.sh

kcpclient:https://github.com/Fog-Forest/scripts/tree/main/kcptunclient

服务器架构

比较推荐使用一台中转服务器加速,直接加速效果可能不好,两台中转服务器成本太高

两台中转服务器加速

国内服务器部署 kcptun 客户端连接香港 kcptun 服务端,香港服务器部署 kcptun 服务端以及 BBR,加速境外服务器指定端口

一台中转服务器加速

有两种方案:
1. 中转服务器和境外服务器都部署 BBR,直接使用 iptables 端口转发即可
2. 境外服务器部署 BBR 和 kcptun 服务端,中转服务器部署 kcptun客户端,连接 kcptun服务端

直接加速

境外服务器部署 BBR 和 kcptun 服务端,用户端部署 kcptun 客户端,连接 kcptun 服务端即可

总结

使用 KCP 和端口转发的加速方案,提速效果明显,能够降低延迟,但是配置较为繁琐,如果有多台境外服务器用于 SS 的话,还可以配置负载均衡。

参考:https://ssr.tools/588




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/7416.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: