kcptun客户端 linux

kcptun

2018-11-25 20:34:36 zhj082 阅读数 3019

KCP是一个快速可靠协议,能以比 TCP浪费10%-20%的带宽的代价,换取平均延迟降低30%-40%,且最大延迟降低三倍的传输效果。纯算法实现,并不负责底层协议(如UDP)的收发,需要使用者自己定义下层数据包的发送方式,以callback的方式提供给 KCP。连时钟都需要外部传递进来,内部不会有任何一次系统调用。[(引用KCP协议)]

本文将教你如何通过配置kcp来加速ss。

目的:

让科学上网速度更快,体验效果更好。如图:

测试 www.google.com
在这里插入图片描述
也许加载网页时候不是很明显,延迟相差不多。但当看到下面两张图差距瞬间出来,第一张(没用加速)当时测试还是144p,其卡无比,而第二张(用加速)显示在1080p还能流畅,体验效果真的不一样。ps:lz的机子还是Tokyo,当时测试ping返回的延迟是两百五十多,还偶尔丢包,体验效果很差,造成在安装kcp时,命令回应非常慢,很难受QAQ~~
在这里插入图片描述

在这里插入图片描述

具备条件:

为了实现kcp加速ss,以下资源必须具备的:
1.一台可以科学上网的服务器。
2.在服务器安装ss。
3.在服务器安装kcp服务端。
4.在用户端安装kcp客户端。

满足条件:

对于条件一:购买vps。(这里假设你已经满足)
对于条件二:这里推荐你安装SSR,网上有很多一键安装脚本,这里不多说了。(这里假设你已经满足,且已经能在本地主机上翻墙)
对于条件三:安装kcp服务端(这里假设你已经下载好,放在服务器某个目录下)
对于条件四:安装KCP客户端,或者安装kcptun-gui客户端界面版,不过gui界面版目标只找到windows版本,对于别的系统版本需要自己动手寻找。

实现原理:

在这里插入图片描述

假如你已经安装好了KCP服务端与客户端,首先你在服务器运行KCP服务端,接着在自己主机配置好与服务端配置的信息,启动运行KCP客户端,当KCP客户端成功连接上KCP服务端后,最后把小飞机shadowsock服务器地址和端口改为KCP客户端上面监听地址和端口即可。
在这里插入图片描述

其实上面实现原理过程是基于KCP协议实现一个快速安全隧道,姑且我暂时把这个过程实现理解为是一个tcp建立端口转发。

实现步骤:

Server:

1.在Server安装KCP服务端:(下载地址)
下载前在服务器执行以下命令查看系统的位数与版本号。(lz服务器使用ubuntu 17.10系统)

uname -a; cat /etc/issue

2.通过上面显示内容自己是多少位系统后,通过访问kcptun下载地址,找到对应的服务器安装包复制链接地址,例如lz这里显示i686,即下载32位(x86:amd64, x32: 386)。为了方便,新建一个kcptun文件夹,并切换到该目录下执行如下命令:

wget https://github.com/xtaci/kcptun/releases/download/v20180316/kcptun-linux-386-20180316.tar.gz

3.在当前目录解压,执行如下命令:

tar -zxvf kcptun-linux-386-20180316.tar.gz

4.接着执行如下命令,完成启动运行KCP服务端。

./server_linux_386 -t "127.0.0.1:8889" -l ":4000" -mode fast3

-t参数:表示目标服务器地址,即ss服务器地址,默认地址为127.0.0.1,加速端口为8889,即ss服务器端口。
-l参数:表示kcp服务器开启监听地址,并监听所有连接进来的地址,这里把地址省略。监听端口4000,即”:4000”

想获取更多信息,访问kcptun

Application:

1.下载kcp客户端
根据自己系统找到对应版本下载。(lz的系统windows 64位)
假如你已经下载并解压好文件。
切换到解压好的文件目录下。
2.执行如下命令连接KCP服务端:

.\client_windows_amd64.exe -r "KCP_SERVER_IP:4000" -l ":8889" -mode fast3

-r参数:表示连接kcp服务器地址和端口,默认是“vps_ip:4000”。
-l参数:表示kcp客户端开启监听端口,等会小飞机ss连接的服务器端口。监听端口为8889。

当然你也可以使用配置文件,这样更加方便。新建一个以json结尾的文件,如图:

#kcptun_Client.json
{
  "localaddr": ":8889",
  "remoteaddr": "KCP_SERVER_IP:4000",
  "key": "it's a secrect",
  "crypt": "aes",
  "mode": "fast3",
  "mtu": 1350,
  "sndwnd": 512,
  "rcvwnd": 512,
  "datashard": 10,
  "parityshard": 3,
  "dscp": 0,
  "nocomp": false,
  "quiet": false
}

上面文件中KCP_SERVER_IP改成服务器ip,localaddr自行选择,需要注意的是它与服务端监听的端口一致。

执行如下命令来完成使用kcp客户端连接json文件:

.\client_windows_amd64.exe -c kcptun_Client.json

如图成功连接上KCP服务端
在这里插入图片描述

也可以使用更加人性化的界面版kcptun客户端,目前lz只找到windows系统版本。界面版相比上面使用命令行启动,不用每次开机都要重新打开,当然你也可以自己动手写一个后台挂起的程序。QAQ~~~,这个kcptun客户端配置管理工具,目标的版本为1.1.3。
如图1:
在这里插入图片描述
也可以使用配置文件连接,如图2:
在这里插入图片描述

3.配置小飞机shadowsocks
根据前面的配置,这里需要更改服务器地址和服务器端口即可。

在这里插入图片描述
完成配置后,打开http://ip111.cn/监测点谷歌网站,检查结果显示服务器ip,说明可以科学上网。

关于KCP参数:

如果想调整更优参数,充分利用带宽资源,把速度再次提升,需要自行测试,调整最佳参数,让速度达到最佳。
可以参考:https://www.keakon.net/2016/10/29/用kcptun加速Shadowsocks。
更多参数参考:https://github.com/skywind3000/kcp

后台运行KCP服务端:

使用supervisor 管理进程

ubuntu系统下安装执行如下命令:

sudo apt-get install supervisor

其它系统下可以使用pip工具安装:

pip install supervisor

安装好后,查看 supervisord 是否在运行:

ps aux | grep supervisord

把我们需要后台运行的kcp服务端,加入到配置文件。
为了管理它,我们需要把配置信息写入到supervisord.conf 文件。

vim /etc/supervisor/supervisord.conf

把如下信息添加到supervisord.conf

[program:kcptun]
command = /root/kcptun/server_linux_386 -t "127.0.0.1:8889" -l "0.0.0.0:4000" -mode fast3 
autostart = true
autorestart = true
;stdout_logfile 日志文件,需要自己手动创建,否则无法正常启动
stdout_logfile = /root/kcptun/kcptun.log

使用 supervisorctl

supervisorctl是一个命令行客户端工具,在启动的时候需要指定与上面supervisord配置文件是同一份,加-c参数,否则它将找到默认配置文件,以至于进入supervisorctl命令行时没有找到kcptun项目而无法启动。当然,如果我们是直接修改默认的配置文件,那么不用指定-c参数,直接输入supervisorctl即可。
执行如下命令进入supervisorctl 工具:

supervisorctl -c /etc/supervisor/supervisord.conf

执行如下命令来重启配置文件,即修改过的程序。

supervisor> update
kcptun: added process group

查看程序状态

supervisor> status
kcptun                           RUNNING   pid 537, uptime 0:00:10

最后执行quit退出supervisorctl 工具
还有一些其它命令:

status # 查看程序状态
stop usercenter # 关闭 program 指定的程序
start usercenter # 启动 program 指定的程序
restart usercenter # 重启 usercenter 程序
reread # 读取有更新(增加)的配置文件,不会启动新添加的程序
update # 重启配置文件修改过的程序

想获取更多有关于supervisor信息,可以查看官方文档:http://supervisord.org/index.html

参考文献:
KCP:A Fast and Reliable ARQ Protocol
KCPTun:A Fast & Secure Tunnel Based On KCP with N:M Multiplexing
supervisor:supervisor 管理进程
Gordy叶:ss安装kcptun加速

2016-11-03 21:25:20 huaiyiheyuan 阅读数 3743

一、服务端的安装
1、 ubuntu服务端的安装
  http://www.jianshu.com/p/b5c4fbadbfae
  https://github.com/shadowsocks/shadowsocks/wiki/Shadowsocks-%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E

2、kcpt服务端的安装现在很简单
按照这个教程就可以了 http://www.jianshu.com/p/172c38ba6cee

3、Centos7 x86-64 服务端安装
  我用的是”搬砖”的服务端,由于centos6 python2.6 更新 捣鼓了一下没弄好,干脆安装centos 7了,下面谈谈步骤了
 ssh登录上 vps 

yum install python-setuptools && easy_install pip   
pip install  shadowsocks

  接着就可以

 vi /etc/shadowsocks.json
{
“server”:”my_server_ip”,
“server_port”:8388,
“local_address”: “127.0.0.1”,
“local_port”:1080,
“password”:”mypassword”,
“timeout”:300,
“method”:”aes-256-cfb”,
}

接着启动ssserver -c /etc/shadowsocks.json -d start
服务端就启动好了,接下来就测试下客户端就可以啦

参考:https://github.com/shadowsocks/shadowsocks/wiki/Shadowsocks-%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E

备注:由于这是原汁原味的ss,喝起来相对安全不少吧

  
二、客户端安装
1、客户端windows有图形界面,相对也比较简单,上面教程也比较详细
2、ubuntu启动客户端
首先在客户端下好和服务端相对应的版本,我的是64位的
,新建client.json(和client_linux_amd64在一个目录下) 把和服务器相对应的参数填入
这里写图片描述


配置client.json

{


    "localaddr": ":9345",
    "remoteaddr": "serverip:29900",
    "key": "111111",
    "crypt": "aes-192",
    "mode": "fast2",
    "conn": 1,
    "autoexpire": 60,
    "mtu": 1350,
    "sndwnd": 128,
    "rcvwnd": 1024,
    "datashard": 70,
    "parityshard": 30,
    "dscp": 46,
    "nocomp": false,
    "acknodelay": false,
    "nodelay": 0,
    "interval": 40,
    "resend": 0,
    "nc": 0,
    "sockbuf": 4194304,
    "keepalive": 10
}

:客户端设置
这里写图片描述

(密码是ss密码)

:接着运行terminal
chmod +x client_linux_*

./client_linux_amd64 -c client.json

配置完后就可以看到这个了
这里写图片描述

感谢http://koolshare.cn/thread-45462-1-1.html

二、开机启动设置
安装s有两种方法
第一种方法 :图形界面

PPA is for Ubuntu >= 14.04.

sudo add-apt-repository ppa:hzwhuang/ss-qt5
sudo apt-get update
sudo apt-get install shadowsocks-qt5

后面配置就不说了

第二种方法
1、ss安装 参考这位 : 很详细 https://aitanlu.com/ubuntu-shadowsocks-ke-hu-duan-pei-zhi.html
2、接下来是开机启动
我们现在可以在你的ubuntu上安装一个叫做supervisor的程序来管理你的sslocal启动。关于supervisor更多点击这 sudo apt-get install supervisor
安装好后我们可以在/etc/supervisor/目录下找到conf.d配置文件,
1)在这个文件里面新建ss.conf sudo touch ss.conf
2)把这个填入 ,sslocal -c后面是存放json文件的路径

[program:shadowsocks]
command=sslocal -c  /home/jon/Desktop/SS/bw.json
autostart=true
autorestart=true
user=root
log_stderr=true
logfile=/var/log/shadowsocks.log

3、copy sslocal
在16.04里 sslocal 和ssserver这两个命令是被存在 /usr /bin/下面的,我们要拷贝一份命令文件到/bin(在系统根目录下面)

   sudo cp  /usr/bin/sslocal   /bin 

现在关掉你之前运行sslocal命令的终端,再打开终端输入sudo service supervisor restart 然后去打开浏览器看看可不可以继续代理上网。你也可以用ps -ef|grep sslocal命令查看sslocal是否在运行。

这个时候我们需要在/etc下编辑一个叫rc.local的文件 ,让supervisor开机启动。

sudo gedit /etc/rc.local 

在这个配置文件的exit 0前面一行加上 service supervisor start 保存。看你是否配置成功你可以在现在关机重启之后直接打开浏览器看是否代理成功。

图形界面开机启动

这种开机启动方式简单
1)Dash找到并打开 Startup Applications
2)Dash找到需要开机启动的软件
这里写图片描述
然后长按这个软件拖入Startup Applications,接着就可以看到这个样子的了
这里写图片描述

二、终端代理-privoxy的安装与配置(前提是需要一个代理服务器 你懂得)
这次发现终端也要代理,这次确实浪费不少时间

1、安装privoxy
sudo apt-get install Python-m2crypto privoxy 或者sudo apt install proxychains

配置privoxy
privoxy的配置文件位于/etc/privoxy/config,用vi打开配置文件 sudo gedit /etc/privoxy/config
当然我还不熟悉vi 就用gedit打开

转发位置
在配置文件末尾添加 forward-socks5 / 127.0.0.1:1080 . ( * 注意:末尾的”.”符号不能丢掉) 这一行的意思是将上一步8118端口监听到的请求转发到1080端口,然后由shadowsocks通过socks方式进行处理,否则会报参数缺失错误*

有关Privoxy的配置就结束了,重启一下Privoxy。

~$ sudo /etc/init.d/privoxy restart

接着配置一下终端的环境,需要如下两句。

export http_proxy="127.0.0.1:8118"
export https_proxy="127.0.0.1:8118"

然后就看成果了 curl ip.gs
proxychains curl ip.gs
参考 :http://www.linuxdiyf.com/linux/17144.html

2、安装 polipo

为了让整个系统都走shawdowsocks通道,需要配置全局代理,可以通过polipo实现。

首先是安装polipo:

sudo apt-get install polipo

接着修改polipo的配置文件/etc/polipo/config:

logSyslog = true
logFile = /var/log/polipo/polipo.log
proxyAddress = "0.0.0.0"
socksParentProxy = "127.0.0.1:1080"
socksProxyType = socks5
chunkHighMark = 50331648
objectHighMark = 16384
serverMaxSlots = 64
serverSlots = 16
serverSlots1 = 32

重启polipo服务:sudo /etc/init.d/polipo restart 为终端配置http代理:

 export http_proxy="http://127.0.0.1:8123/"

curl www.google.com 如果有响应,则全局代理配置成功。

参考 :https://jingsam.github.io/2016/05/08/setup-shadowsocks-http-proxy-on-ubuntu-server.html

2016-11-11 17:49:07 eastlhu 阅读数 23728

经常有朋友抱怨 Kcptun 服务端安装繁琐,我花时间写了一个一键安装更新脚本。

参考了 @teddysun 的SS一键安装脚本,感谢 @静逸轩 提供的测试服务器。

理论上脚本支持:CentOS 6+、Ubuntu 12+和Debian 7+,但是由于测试不完全,可能存在安装失败的情况。

脚本已更新到v15,请以前版本的朋友更新一下:

请先切换到 kcptun.sh 文件目录下运行

更新日志:

  1. 简化 jq 的安装方式, 直接下载二进制文件而不从软件库安装;
  2. 使用 nobody 用户启动 kcptun, 提高安全性;
  3. 完善脚本使用说明;
  4. 由于使用 nobody 用户启动 kcptun, 不好处理日志文件夹的写入权限, 故将 kcptun 中的日志配置项去除, 重新使用 Supervisor 写入日志

同时更新了 init 脚本

  1. 修复 CentOS 上找不到 Supervisor 执行文件的问题;
  2. 由于 Supervisor 的版本不同, 执行文件的目录可能不一样, 如果你出现无法安装或启动失败的问题, 请及时联系我

脚本的功能有:

  1. 一键安装,自动下载最新版本,支持所有参数配置;
  2. 一键更新,一键卸载,完全自动化;
  3. 支持用户手动输入版本安装;
  4. 支持更新配置,自动输出推荐参数;
  5. 使用 Supervisor 管理进程,更加便捷;
  6. 自动配置服务,并随开机自启;
  7. 脚本提示全中文,更快锁定问题。

用 Putty 下中文显示可能会出现乱码一片,请自行解决乱码问题;推荐使用 Xshell,手机上可以用 JuiceSSH,都是非常好用的 SSH 客户端。

使用脚本安装服务端

注意:在配置之前请确认一下你的加速地址,大部分不能加速都是由于加速地址配置错误。

鉴于大部分朋友是用来加速 Shadowsocks,下面以 Shadowsocks 为例,Shadowsocks 正确安装运行在当前服务器上。

首先找到你的 Shadowsocks 端口,比如我的 Shadowsocks 端口为 8388,然后在命令行输入以下命令:

如果提示以上命令不存在,请输入:

:将 8388 替换为你的 Shadowsocks 端口

然后你会看到类似下面的输出(着重看显示为红色的部分):


情况一:

情况2:

情况3:

情况4(假如 10.10.10.10 是当前服务器IP):


若为情况1、情况2和情况3,那么你的加速地址可以为:加速 IP 127.0.0.1,加速端口 8388(你的 Shadowsocks 端口

若为情况4,那么你的加速地址为:加速IP 10.10.10.10(你的服务器IP),加速端口8388(你的 Shadowsocks 端口

使用方法:

1.设置 Kcptun 的服务端端口:

请输入一个未被占用的端口,Kcptun 运行时将使用此端口。

2.设置加速的 IP:

填入上面获取到的加速 IP

3.设置需要加速的端口:

填入上面获取到的加速端口

程序会检查当前是不是有程序占用着此端口,如果你的 Shadowsocks 没在运行,或者没有软件使用此端口,会弹出如下提示:

如果你确认 Shadowsocks 运行时会使用此端口,那么输入 “y” 回车即可。

4.设置 Kcptun 密码:

这就是说,你可以为 Kcptun 单独设置一个密码,防止被他人恶意使用。这个密码和 SS 的密码没有半毛钱关系,请不要把它们混淆了。

再提一句,Kcptun 和 Shadowsocks 没有任何关系,请不要脑补它们之间存在任何联系,Kcptun 你可以理解为一款网络加速软件,只不过它是通过将 TCP 协议转换为 UDP 协议,然后再通过大量的发送数据包,浪费了带宽以换取网速的提升。它能加速所有以 TCP 协议传输数据的软件,不单单是 Shadowsocks。只是大家都用来……你懂的

回到上面的密码设置问题,如果你这里选择直接回车,也就是代表你不自定义密码。但是 Kcptun 有一个默认的密码,这个密码是: it'sasecrect 。

如果你这里选择不设置密码,那么客户端的参数里边就不需要加 –key 这一参数,但是 Kcptun 还是会用上面一个密码做默认值。

5.禁用压缩

这个选项是什么意思呢?Kcptun 默认是启用压缩的,如果你这里设置为 y,也就是配置为 nocomp:true,那么就是禁用压缩。

许多朋友这里设置的是保持默认(启用压缩),而偏偏在软件之中设置为禁用压缩,当然就连不上咯。

其他配置项不用我说了,如果你了解它是干什么的,可以自定义配置。如果不知道,那么直接回车使用默认参数

但是,使用默认参数,是有可能浪费大量流量的,你会发现你的流量像泄洪一样快速减少,你需要会调节参数,套用官方的说明

简易自我调优方法:

  1. 同时在两端逐步增大 client rcvwnd 和 server sndwnd ;
  2. 尝试下载,观察如果带宽利用率(服务器+客户端两端都要观察)接近物理带宽则停止,否则跳转到第一步。

任何事物都是有两面性的,选择了速度,就只有放弃流量。那么有没有既快得像火箭,燃料又省得像煤油灯的方法呢?呵呵!

各参数详细信息请查看:https://github.com/xtaci/kcptun

如果你用国内服务器安装,可能会出现文件下载失败。这是由于脚本会到 Github 下载文件,而 Github 的某些下载地址在国内你懂的……所以文件下载失败真不是我的锅。

如果安装成功,应该能看到如下输出信息:

请将以上的提示信息复制保存下来,后面配置客户端会用到这些提示信息。

安装之后,Kcptun 服务交由 Supervisor 管理。

Supervisor 相关命令:

Kcptun 相关命令:

Supervisor 启动的时候会同时启动 Kcptun,运行 kcptun 相关命令时先确保 Supervisor 已启动。

手动配置的方法请看这里:小内存福音,Kcptun Shadowsocks加速方案

客户端配置

1.先到下载一个启动 Kcptun 的工具。请注意,这只是用来启动 Kcptun 的工具,而不是 Kcptun 客户端。

https://github.com/dfdragon/kcptun_gclient/releases

2.然后下载服务端对应版本的 Kcptun(保存下来的提示信息里有):

https://github.com/xtaci/kcptun/releases

32位系统下载:kcptun-windows-386-20160922.tar.gz

64位系统下载:kcptun-windows-amd64-20160922.tar.gz

注意看红字的版本号和服务端版本一致。然后将它们解压到一起:

打开 Kcptun 启动工具,然后看保存下来的提示信息上面一部分:

使用启动工具的时候只需要看这一部分就行了。

[v15]Kcptun 服务端一键安装脚本,喜闻乐见的多用户支持 - 第1张  | 扩软博客

几项说明:

  1. 本地监听端口,这个端口你可以随意设置,不是必须设置为 Shadowsocsk 的端口;
  2. KCP服务器地址为你的服务器IP地址,不是 127.0.0.1,端口为服务端 Kcptun 的端口
  3. 通信密钥是你配置的 Kcptun 密码,不是 Shadowsocks 的密码;在配置 Kcptun 的时候,不用管 Shadowsocks 的配置参数;
  4. 参数区配置的时候,只需要配置你修改过的部分就行了,其他部分都不用改,除非你了解每项参数的意义;
  5. 日志区非常重要,在排查问题的时候,这是必看部分;
  6. 右下角为 Kcptun 版本,确保与服务端版本一致,更新服务端之后,也需要更新本地客户端,只需要替换客户端文件即可。

配置完毕,点击启动。

然后在 Shadowsocks 客户端中添加一个选项,服务器IP固定填写 127.0.0.1,服务器端口填写 Kcptun 启动工具中配置的“本地监听端口”(即这里的 8388),密码和加密配置的是 Shadowsocks 的密码和加密。

基本原则,配置 Kcptun 的时候不用管 Shadowsocks 的参数,配置 Shadowsocks 的时候不用管 Kcptun 的参数,别把它们的配置参数搞混了。

将代理切换到新建的选项上,尝试访问。查看 Kcptun 启动工具中的日志区,会有大量的如下信息输出:

Android 端请看这里:Shadowsocks-Android客户端上的KCP配置说明

OpenWrt 上使用:OpenWrt平台Kcptun Web管理界面

其他说明

2019-01-27 21:20:00 Crapefruit 阅读数 7280

  
  1.VPS端

  在命令行键入:


    mkdir kcptun

    cd kcptun

    wget --no-check-certificate https://github.com/kuoruan/shell-scripts/raw/master/kcptun/kcptun.sh

    chmod +x ./kcptun.sh

    ./kcptun.sh

  请输入需要加快的端口 [1-65535]:,这一项填VPS上小飞机使用端口。

  服务器IP:,这一项填服务器真实IP,如160.160.160.160,不填127.0.0.1。

  请输入 KCPTun 密钥:,这一项随意设置,可以"very good"。

  剩下的参数输入时,回车使用默认参数即可。

  

  2.Windows端

  2.1. 下载

  进入 KCPTun下载页 下载客户端。

  再进入 KCPTun GUI 下载页 ,下载界面管理程序 。

  为了方便,可以将两个软件解压到同一文件夹下。

  2.2. 配置KCPTun

  右键,以管理员身份打开界面版KCPTun客户端。

  点击左侧添加,点击客户端列表下方一行地址。点击左侧添加,点击客户端列表下方一行地址。

  点击浏览,导入KCPTun客户端。

  本地侦听端口,与小飞机端口一致(如8388等)。

  KCPTun服务器地址和端口与服务器端配置一致(如160.160.160.160:29900)。

  填写下方可选参数,与服务器端一致。

  点击左侧程序开机自启,程序启动后最小化。

  点击右侧启动。

  2.3. 配置小飞机(ss)

  打开小飞机(ss)客户端,将服务器地址改为127.0.0.1。

  服务器端口与界面版KCPTun客户端本地侦听端口一致(如8388)。

  其他参数不变。

  

  3.Ubuntu端

  进入 KCPTun下载页 下载客户端,linux版本的。

  终端进入下载目录:

    
    tar -xzf  kcptun-linux-amd64-20170218.tar.gz
   
    vi kcptun.json
    

  在json文件中输入配置参数,与VPS一致。如果忘记,可以再次进入VPS,执行./kcptun.sh,选择参数查看,屏幕会打印建议客户端的配置参数,如:

{
    "localaddr": ":8388", //本地使用的端口
    "remoteaddr": "160.160.160.160:29900", //服务器的kcptun服务的ip地址加端口
    "key": "very good", //你设定的加密密码
    "crypt": "aes", //加密方式
    "mode": "fast", //加速模式
    "conn": 1, //从这以下的参数,你需要根据你在服务器端的配置参数进行设置
    "mtu": 1350,
    "sndwnd": 512,
    "rcvwnd": 512,
    "datashard": 10,
    "parityshard": 3,
    "dscp": 0,
    "quiet": false
}

  在终端执行下面的命令运行KCPTun服务:

    ./client_linux_amd64 -c kcptun.json 

  
【References】

  KCPTun Server Conf

  KCPTun Windows Client GUI

  KCPTun Linux Client

2018-01-16 13:32:00 weixin_33908217 阅读数 3342

这次来说说如何让FQ速度更快,用起来就像墙内一样。这里介绍一个免费的工具Kcptun,它是一个非常简单和快速的,基于 KCP 协议的 UDP 隧道,它可以将 TCP 流转换为 KCP+UDP 流。而 KCP 是一个快速可靠协议,能以比 TCP 浪费10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果。(效果可见下图,YouTube上1080P流畅)

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第1张  | 乐意分享

 

 

工作原理是这样滴:

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第2张  | 乐意分享

 

 

那么下面就开始喽!

首先我们得下载XShell,为什么要下载这个?你可以想象VPS就是一个放在大洋彼岸永不关机的电脑,而VPS上***一般都装在CentOS这样的linux系统上,如果我们想安装软件,就需要XShell这样的工具登录VPS后台linux去操作。

XShell5下载:http://rj.baidu.com/soft/detail/15201.html?ald

安装完新建会话属性,点击连接,填入你***后台main controls的IPaddress和SSH port.

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第3张  | 乐意分享

 

 

然后点击用户身份验证,用户名为root,密码在***后台的root password modification里面随机生成。

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第4张  | 乐意分享

 

 

弄好后就可以连接服务器了,开始安装Kcptun。

首先在xshell登录后的Linux页面一段一段的粘贴下面代码,毎粘贴一段要回车一下再粘贴下一段。

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第5张  | 乐意分享

 

 

wget https://raw.githubusercontent.com/kuoruan/kcptun_installer/master/kcptun.sh

chmod +x ./kcptun.sh

./kcptun.sh

上面代码都正确执行后,会出现下面界面:

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第6张  | 乐意分享

 

 

下面教你怎么一步一步设置:

1.设置 Kcptun 的服务端端口:

请输入一个未被占用的端口,Kcptun 运行时将使用此端口。

2.设置加速的 IP:

如果你想加速 ***,而 *** 就在运行在当前服务器上,直接回车即可。如果 *** 运行在其他服务器,请输入服务器的 IP 地址。这也就是说,Kcptun 不仅能加速本地的端口,也能加速远端的端口。

3.设置需要加速的端口:

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第7张  | 乐意分享

 

 

这里设置的是需要加速的端口,和上面设置的 Kcptun 的端口不一样。比如我想加速当前服务器上的 ***,而 *** 运行占用的端口为 8388,那么这里就写入 8388。(即上图中的VPS后台shadowsocks的端口)程序会检查当前是不是有程序占用着此端口,如果你的 *** 没在运行,或者没有软件使用此端口,会弹出如下提示:

1当前没有软件使用此端口, 确定加速此端口?(y/n)

如果你确认 *** 运行时会使用此端口,那么输入 “y” 回车即可。

4.设置 Kcptun 密码:

如果你这里选择直接回车,也就是代表你不自定义密码。但是 Kcptun 有一个默认的密码,是: it’s a secrect 。如果你这里选择不设置密码,那么客户端的参数里边就不需要加 –key 这一参数,但是 Kcptun 还是会用上面一个密码做默认值。

剩下的配置项不用我说了,如果你了解它是干什么的,可以自定义配置,如果不知道,那么直接回车使用默认参数。

如果安装成功,应该能看到如下输出信息:

恭喜, Kcptun Server 配置完毕!

服务器IP:  10.10.10.10

端口:  554

加速地址: 10.10.10.10:8388

加密方式 Crypt:  none

加速模式 Mode:  fast2

……….

……

这些数据很重要,建议截图下来,等一下设置客户端有用。

如需更新:

./kcptun.sh update

注:全面支持脚本、Kcptun和配置的更新!

如需重新配置:

./kcptun.sh reconfig

卸载:

./kcptun.sh uninstall

PC客户端的设置方法:

本地 Windows 64位系统为例,首先下载 Kcptun 的 Windows 版本。

1.我这里先新建一个文件夹,命名为 Kcptun,然后下载:

https://github.com/xtaci/kcptun/releases/download/v20160906/kcptun-windows-amd64-20160906.tar.gz

解压到文件夹下。

2.下载Kcptun客户端配置管理工具,然后导入刚才解压的客户端,Kcptun如何设置,就是把刚才教你截图的那些,输入到下图中,不会输的话看汉字后面的英文对应上去。

Kcptun客户端配置管理工具下载地址:

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第8张  | 乐意分享

 

 

注:本地侦听端口是你***后台***的端口,端口才是你自己设置的Kcptun的端口,kcp服务器地址为你***的地址。

https://github.com/dfdragon/kcptun_gclient/releases

***设置如下,IP为127.0.0.1,端口为***后台***的端口不是你自己设置的Kcptund的端口(即本地侦听端口),密码为***后台***的密码(不是kcp的密码),设置好后勾选这个服务器看看能不能FQ:

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第9张  | 乐意分享

 

 

安卓的设置方法如下:

首先下载安装最新的 *** Android:官方新版发布页

现在打开你的 *** Android 客户端,开始配置:

服务器,填写你的服务器 IP 地址,我这里应该填写 10.10.10.10,即“服务器 IP”;

远程端口,填写你的 *** 端口,我这里应该填写 8388,即“加速地址”里的那个端口号;

本地端口,使用默认值 1080;

密码,填写你的 *** 密码;

加密方法,选择你 *** 的加密方法。

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第10张  | 乐意分享

 

 

到这里,你可以在关闭 KCP 协议的情况下,测试一下配置是不是正常。如果能正常联网,可以继续下一步,配置 KCP 协议。

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第11张  | 乐意分享

 

 

KCP 端口,就是之前根据提示设置的端口,不是 ***的端口 。比如我这里应该填写 554,即 “端口”。

KCP 参数,找我刚才让你截图的那些,或者你登录xshell连接服务器,粘贴./kcptun.sh并回车,选择4:

一步一步教你用Kcptun给***加速!看YouTube1080P一点都不卡! - 第12张  | 乐意分享

 

 

然后根据配置在*** 安卓客户端上填下面这几个参数就行了,其他不用填:

— key 你的密码(没有不填) –crypt 你的参数(如果没有密码这里填none,否则填密码类型) –mode 你的参数

在路由器上使用:

如果需要在路由器上使用 Kcptun,首先你得有个智能路由器,然后能进入shell。

编译好的客户端文件在这里下载:

https://github.com/bettermanbao/openwrt-kcptun/releases

小米路由器、极路由等一大批国产智能路由器都是 MT7620 的芯片,请下载 ramips 版本。

到这里都设好了,好好感受下速度的飙升吧!

 

文/刘颙(简书作者)
原文链接:http://www.jianshu.com/p/172c38ba6cee
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

转载于:https://www.cnblogs.com/Devopser/p/8296115.html

Linux

阅读数 271