2016年9月22日星期四

Shadowsocks另一种双边加速软件KCPTun[服务端配置教程]

KCPTun 加速一定要谨慎使用。流量翻倍不仅仅是几倍哦。
使用不当,可能会被封VPS的!!!

KCPTun简介

Kcptun 是一个非常简单和快速的,基于 KCP 协议的 UDP 隧道,它可以将 TCP 流转换为 KCP+UDP 流。而 KCP 是一个快速可靠协议,能以比 TCP 浪费10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果。
Kcptun 是 KCP 协议的一个简单应用,可以用于任意 TCP 网络程序的传输承载,以提高网络流畅度,降低掉线情况。由于 Kcptun 使用 Go 语言编写,内存占用低(经测试,在64M内存服务器上稳定运行),而且适用于所有平台,甚至 Arm 平台。


Kcptun 工作示意图:
Kcptun 项目地址:https://github.com/xtaci/kcptun

KCPTun安装

本教程使用的是 Debian 64x 系统。
下载KCPTun,并解压:
  1. mkdir /root/kcptun
  2. # 新建一个文件夹
  3. cd /root/kcptun
  4. # 进入刚才新建的文件夹
  5. wget https://github.com/xtaci/kcptun/releases/download/v20160725/kcptun-linux-amd64-20160725.tar.gz
  6. # 下载最新的 kcptun-linux-amd64 文件
  7. tar zxf kcptunlinuxamd64-*.tar.gz
  8. # 解压刚才下载的文件
解压之后会发现只有两个文件: client_linux_amd64 和 server_linux_amd64,第一个是是客户端文件(linux的客户端),第二个是服务端文件。
目前KCPTun没有配置文件,也没有任何启动脚本,所以需要新建一些脚本。
创建 start.sh:
写入以下内容:
server_linux_amd64 对应服务端文件名,请对应修改。
-l 表示 Kcptun 的服务端监听端口,用于接收外部请求和发送数据,默认 2333
-t 表示要加速的地址,由于 Kcptun 和 Shadowsocks 在同一服务器,地址填写 127.0.0.1,而 8388 为 Shadowsocks 服务端监听端口
-key 是 Kcptun 的验证密钥,服务端和本地必须一致才能通过验证,请自行设置(可省略);
-mode 为加速模式,默认 fast,推荐使用 fast2
其他参数可以参考项目主页的介绍。
下面是引用官方介绍:
响应速度:
有效载荷比:
中间 mode 参数比较均衡,总之就是越快越浪费带宽,推荐模式 fast2。
其他参数,请使用 ./server_linux_amd64 -h 查看,更深层次的参数调整需要理解 KCP 协议,并通过“隐藏参数”调整。
作者推荐配置参数:
  1. 适用大部分ADSL接入(非对称上下行)的参数(实验环境电信100M ADSL)。
  2. 其它带宽请按比例调整,比如 50M ADSL,把 CLIENT  sndwnd rcvwnd 减掉一半,SERVER 不变。
  3. SERVER:   mtu 1400 sndwnd 2048 rcvwnd 2048 mode fast2
  4. CLIENT:   mtu 1400 sndwnd 256 rcvwnd 2048 mode fast2 dscp 46
创建 stop.sh:
写入以下内容:
创建 restart.sh:
写入以下内容:
给上面创建的脚本添加执行权限:

启动服务端:
日志文件在:/root/kcptun/kcptun.log
监听日志信息:
停止服务端:
重启服务端:

添加开机启动:

Centos系统:
Ubuntu/Debian系统:

故障排除

  • 客户端和服务器端皆无 stream opened信息。
连接客户端程序的端口设置错误。
  • 客户端有 stream opened信息,服务器端没有。
连接服务器的端口设置错误,或者被防火墙拦截。
  • 客户端服务器皆有 stream opened信息,但无法通信。
上层软件的设定错误。

注意事项

KcpTun有个缺点,就是实际流量消耗 最少是 你使用量的两倍!如果参数调整有问题,可能会浪费十几倍的流量,而加速幅度也并不会上升多少。

作者的解释:

  • 出现这个情况有几种可能:
  • ISP 对UDP丢包极高,例如50%
  • 服务器,客户端本身的带宽较低,可以适当调低sndwnd /rcvwnd
  • 可以尝试 -dscp 46参数降低丢包率。
希望你们注意一下这个问题,可能搞不好就被 IDC 以滥用网络的名义给封VPS了。

没有评论:

发表评论