lala.im:配置使用Kcptun来暴力加速shadowsocks代理

VPN代理·lala.im · 2017-10-30 · 135 人浏览

原文地址:https://lala.im/1569.html,請支持原作者!該處僅作轉載。

Kcptun是一款双边加速软件,其工作原理参见下图:

範例
Kcptun所实现的加速功能基本上是基于多倍发包,与此软件比较类似的还有一个叫FinalSpeed的,只不过开发者已经停止维护很久了。而Kcptun的作者一直都有在维护和更新,在使用上有比较好的保障。其次Kcptun不怎么挑剔环境,在OpenVZ、KVM等虚拟化的VPS中都能安装,可谓又一个OpenVZ救星!下面LALA就来和大家一起配置一下这个Kcptun,并用它来给shadowsocks加速。
首先准备一台VPS,系统选择CentOS6X64位,使用Xshell以root用户的身份登录到你的机器内。
新建一个目录:

mkdir lala

进入这个目录:

cd lala

下载Kcptun项目文件:

wget https://github.com/xtaci/kcptun/releases/download/v20171021/kcptun-linux-amd64-20171021.tar.gz

解压:

tar -zxvf kcptun-linux-amd64-20171021.tar.gz

新建一个Kcptun配置文件:

vi /root/lala/server-config.json

复制粘贴下面的内容:

{
"listen": ":6666",
"target": "127.0.0.1:2333",
"key": "lala.im",
"crypt": "salsa20",
"mode": "fast2",
"mtu": 1350,
"sndwnd": 1024,
"rcvwnd": 1024,
"datashard": 70,
"parityshard": 30,
"dscp": 46,
"nocomp": false,
"acknodelay": false,
"nodelay": 0,
"interval": 40,
"resend": 0,
"nc": 0,
"sockbuf": 4194304,
"keepalive": 10
}

稍微解释一下这个配置文件里面的各项信息所代表的意思:
1、listen是Kcptun监听的端口,也就是Kcptun的服务端口,这里可以自行修改。
2、target是你准备加速的端口,因为我们是要给ss加速,所以这里一定要填写你的ss端口号,我这里就先写个2333。
3、key是通讯密钥,默认是lala.im,你可以修改为你自己的。
4、crypt是加密方式,默认是salsa20,同时还支持aes, aes-128, aes-192, salsa20, blowfish, twofish, cast5, 3des, tea, xtea, xor, none。可以自行修改。
5、mode是传输模式,这里建议大家统一使用fast2。
6、sndwnd以及rcvwnd是你的本地带宽速度,比如lala是本地电信100M,这里就填写1024即可。
7、其他的一些参数如果你不知道是什么用途就不要去更改了。
现在ls或者ll看一下,当前目录下有这些文件:

範例
我们是64位的系统,所以运行就是用server_linux_amd64这个文件。那么现在可以尝试运行一下:

./server_linux_amd64 -c /root/lala/server-config.json

看到类似如图回显,说明运行是没有任何问题的:

範例
按键盘组合键Ctrl+C退出程序。
现在来给Kcptun创建一个开机启动脚本。
新建一个sh配置文件:

vi /root/lala/start.sh

复制粘贴下面的内容:

#!/bin/bash
cd /root/lala/
./server_linux_amd64 -c /root/lala/server-config.json 2>&1 &
echo "KcpTun Started by lala.im."

给脚本文件执行权限:

chmod +x /root/lala/start.sh

添加开机启动项:

chmod +x /etc/rc.d/rc.local && echo "sh /root/lala/start.sh" >> /etc/rc.d/rc.local

运行Kcptun:

sh /root/lala/start.sh

现在你就可以Ctrl+C退出来了,即便你退出SSH,实际上程序也是跑在后台的,并且机器重启后会自动重新运行。
我们可以用如下命令查看当前运行状态:

ps -ef | grep server_linux_amd64

看到类似如图回显则说明运行正常:

範例
如果你想关闭Kcptun,可以直接使用如下命令:

kill -9 上图显示的进程ID

一般情况下是不需要关闭的,因为这程序很轻巧,就一个文件,也不占用什么资源。
至此,Kcptun的服务端就部署完成了。
现在我们来安装一下SS服务。这里为了方便,LALA就直接使用秋水的一键安装包了。执行下面的命令开始安装:

wget --no-check-certificate -O shadowsocks-libev.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-libev.sh
chmod +x shadowsocks-libev.sh
./shadowsocks-libev.sh 2>&1 | tee shadowsocks-libev.log

如图填写你的ss密码:

範例
填写你想让SS运行在哪个端口:

範例
这里我就要填写2333了,因为我之前在Kcptun的配置文件上填写的加速端口是2333,所以这里的端口一定要对应。
按两次回车程序就开始自动安装了,安装完毕后记得复制类似如下图的这些内容,这些是你的ss连接信息:

範例
关闭一下CentOS6的防火墙:

service iptables stop

现在我们在服务器上需要做的操作就基本都做完了。现在我们来配置本地客户端。由于Kcptun官方是没有Win下的图形客户端的,所以LALA这里为了方便,就使用一款第三方的Kcptun客户端了。
我们先来下载这款客户端:
https://github.com/dfdragon/kcptun_gclient/releases
打开上面的地址,下载如图箭头所指压缩包:

範例
我们还需要下载Kcptun的官方命令行客户端:
https://github.com/xtaci/kcptun/releases
打开上面的地址,下载如图红框中的压缩包,如果你的系统是32位就下载windows-386,如果是64位就下载windows-amd64。

範例
解压这两个压缩包,将得到的文件统一放在一个文件夹内。此时我们打开kcptun_gclient.exe。
看到如图界面,首先浏览选择Kcptun的命令行客户端路径,接着点击添加按钮:

範例
因为LALA这里的系统是64位,所以这里我就要选择client_windows_amd64.exe。
接着按照如下图的配置来填写相应的信息:

範例
还是给大家解释一下这些参数要怎么填:
1、本地侦听的端口,这个可以随意填写一个,只要不与ss本地代理客户端所使用的1080想冲突就行。这里LALA就随便写了个5266。
2、KCP服务器地址,顾名思义就是你的VPS公网IP,端口就是我刚才让你们配置的配置文件里面的端口号,如果你使用的是我这篇文章里面的配置文件,并且你没做修改,那么这里默认就是6666
3、通讯密钥和配置文件里面的要一致,默认是lala.im
4、加密方式同理,默认是salsa20。
5、数据块、校验块同理,默认是70、30。
6、发送窗口以及接收窗口,按照你的本地实际带宽来填写,100M带宽就是1024。
7、传输模式,我们这里要选择fast2。这个一定不能错!
现在Kcptun这边就算全部配置完成了,点击启动按钮,启动Kcptun即可。

範例
此时我们打开ss客户端,按如图填写配置信息:

範例
1、服务器地址填写:127.0.0.1。
2、服务器端口填写我们刚在Kcptun客户端上配置的本地侦听端口。我这边就是5266。
3、密码以及加密方式这些还是不变,你原本的ss连接信息上是什么这里就填写什么,不用做更改。
现在没什么意外的话,你就可以使用ss来连接这个代理上网了。这个代理的流量就是经过Kcptun加速过的。
下面是LALA在使用Kcptun前后的速度对比。
首先是裸连SS的速度:

範例
1080P都卡的看不鸟!!!
现在是使用Kcptun加速后的SS速度:

範例
瞬间速度就变的炒鸡快,看4K视频完全没问题!!!
可以说Kcptun的加速效果是相当的明显,个人觉得Kcptun更适合使用在那些本身线路就特别烂的VPS上面,这样可以体现出Kcptun最佳效果,就感觉是打了鸡血似的。。。如果是本身网络就比较好的VPS,使用Kcptun的效果就不会特别明显。
总结:
如果拿Kcptun和FinalSpeed比较一下的话,我个人还是更喜欢FinalSpeed一点,因为相对来说配置更简单一些,并且有作者已经开发好的官方客户端,而Kcptun则没有,只能使用命令行或者第三方的客户端来运行。其次FinalSpeed在使用上比Kcptun灵活,我使用FinalSpeed可以同时加速多个任意的SS端口,而Kcptun则不行,一个启动就只能对应加速一个端口,对于多用户、多端口的SS服务器而言真的很麻烦。
当然Kcptun的优点也是很多的,在作者不断的更新和维护下,现有的很多功能都非常实用。另外在加速方面,我个人觉得是比FinalSpeed要好一些的。
总的来说,Kcptun比较适合个人使用!并且它绝对是一款加速神器,但有一些VPS商家是禁止安装此类软件的,阁下在VPS中安装这类软件之前务必先阅读一下你所在VPS商家的TOS条款,以免在后续使用中出现一些不必要的麻烦。

VPN代理 lala.im
Theme Jasmine by Kent Liao