简介
Kcptun,它是一个非常简单和快速的,基于 KCP 协议的 UDP 隧道,它可以将 TCP 流转换为 KCP+UDP 流。而 KCP 是一个快速可靠协议,能以比 TCP 浪费10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果。
相比于其他加速,如bbr,速锐等单边加速,kcp是双边加速的,需要服务端和客户端配合使用,所以建议使用kcp的最好先弄清楚ss的搭建,也可以先尝试其他的单边加速方案。
kcptun原理
kcptun相关地址
Kcptun相关项目地址:
https://github.com/xtaci/kcptun/
https://github.com/shadowsocks/kcptun/releases
windows图形界面: https://github.com/dfdragon/kcptun_gclient/releases
服务端配置
这里假设我们已经搭建了ss,并且可以正常使用了,如果还没搭建好ss,可以参考我博客之前的文章ss搭建,也有其他几种加速方式ss加速。
一件安装脚本
wget https://github.com/kuoruan/shell-scripts/raw/master/kcptun/kcptun.sh
添加权限
chmod +x kcptun.sh
运行
./kcptun.sh
然后开始安装,注意点有这些
端口,有默认的,可以改为自己的端口:假设10004
加速地址,需要加速的主机地址,就是ss的地址,默认本机:127.0.0.1
加速端口,这个就是ss的端口号:假设10003
密码,这个就是key,不是ss的密码,如果怕混淆可以填一样,假设填了 abcde
加密方式:这个自己选,假设选了 none
其他的默认就好,之后会自动完成,要把最后的输出记录下来,因为客户端需要填
可使用的客户端配置文件为:
{
"localaddr": ":10003",
"remoteaddr": "198.46.xxx.xxx:10004",
"key": "abcde",
"crypt": "none",
"mode": "fast",
"mtu": 1350,
"sndwnd": 1024,
"rcvwnd": 1024,
"datashard": 10,
"parityshard": 3,
"dscp": 0,
"nocomp": false,
"quiet": false
}
手机端参数可以使用:
key=abcde;crypt=none;mode=fast;mtu=1350;sndwnd=1024;rcvwnd=1024;datashard=10;parityshard=3;dscp=0
客户端配置
windows端
1、 先下载客户端
https://github.com/xtaci/kcptun/releases/
2、 下载kcp图形界面
https://github.com/dfdragon/kcptun_gclient/releases
3、配置kcp客户端
3.1、使用json配置
新建一个文件例如fly.json,把刚才的配置复制进去,然后点击启动就行
json的文件内容大致如下
{
"localaddr": ":10003",
"remoteaddr": "198.46.xxx.xxx:10004",
"key": "abcde",
"crypt": "none",
"mode": "fast",
"mtu": 1350,
"sndwnd": 1024,
"rcvwnd": 1024,
"datashard": 10,
"parityshard": 3,
"dscp": 0,
"nocomp": false,
"quiet": false
}
如果看到输出 connection: 0.0.0.0:62115 -> 198.46.xxx.xxx:10004
就说明连接成功了
3.2、 使用参数配置
参数配置如图,需要注意的地方是基础参数和可选参数中的加星号的参数是必须和服务对应的。
如通讯密钥(key), 加密方式(crypt),数据块(datashard),检验块(parityshard),禁用压缩(nocomp)
4、还要修改ss客户端的配置
只需要把服务器地址改成127.0.0.1,也就是kcp客户端所在的地址,然后就可以使用了
android端配置
1、下载shadowsocks(影梭)
2、下载kcptun插件
3、配置ss
3.1、 先配置好ss,只需要把ss端口修改为kcp的端口,服务器也改为kcp的服务器
3.2、在配置中开启kcptun插件
开启插件之后,点击配置,然后有个输入框,填写服务器输出的那一串配置即可,例如
key=abcde;crypt=none;mode=fast;mtu=1350;sndwnd=1024;rcvwnd=1024;datashard=10;parityshard=3;dscp=0
注意,通讯密钥(key), 加密方式(crypt),数据块(datashard),检验块(parityshard),禁用压缩(nocomp) 这几个配置需要和服务器一致。
配置完启动一下,youtube的1080p视频应该没有压力了,enjoin it!
其他问题
1、如果需要重新配置或者查看配置,只需要重新执行文件即可 ./kcptun.sh
请选择你希望的操作:
(1) 覆盖安装
(2) 重新配置
(3) 添加实例(多端口)
(4) 检查更新
(5) 查看配置
(6) 查看日志输出
(7) 自定义版本安装
(8) 删除实例
(9) 完全卸载
(10) 退出脚本
(默认: 1) 请选择 [1~10]:
例如想查询配置就输入5,想重新配置就输入2,根据提示操作就行。
ref.