kcptun android 参数一般怎么配置参数

本博客曾经发布了通过 Finalspeed 加速 Shadowsocks 的教程,大家普遍反映能达到一个非常不错的速度。Finalspeed 虽好,就是内存占用稍高,不适合服务器内存本来就小的用户;而且现在 Finalspeed 停止维护,就需要寻找一个能替代 Finalspeed 的工具。
今天我就给大家介绍这么一个能替代 Finalspeed 的项目&& Kcptun。
Kcptun介绍
Kcptun 是一个非常简单和快速的,基于 KCP 协议的 UDP 隧道,它可以将 TCP 流转换为 KCP+UDP 流。而&KCP 是一个快速可靠协议,能以比 TCP 浪费10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果。
Kcptun 是 KCP&协议的一个简单应用,可以用于任意&TCP&网络程序的传输承载,以提高网络流畅度,降低掉线情况。由于 Kcptun 使用 Go 语言编写,内存占用低(经测试,在64M内存服务器上稳定运行),而且适用于所有平台,甚至 Arm 平台。
Kcptun 工作示意图:
KCP 协议:
Kcptun 项目地址:
以下为 Kcptun 的相关项目,如果有兴趣,可以了解一下。
1.Kcp-server:
Kcp-server 是在 Kcptun 的基础上,添加了配置文件的支持,并简化了安装过程,一条命令即可配置完毕。
如果你是小白,而且看了后面的教程也看不懂的话,推荐直接使用 Kcp-server 吧,就是更新较原版略慢。
2.Shadowsocks-Plus:
基于 Shadowsocks Go 版本,加入了以下特性:
启动后降低权限至 nobody , 增强安全性;
与 kcptun 集成,配合相应客户端可加速传输;
网页控制面板。
部署Kcptun
&添加客户端可视化配置工具 Kcptun-GUI
&发布一键安装脚本&
&添加Kcptun可视化运行工具和Android使用说明。
&v发布,新参数-nocomp,需要在两端同时使用以禁止压缩传输。
&添加客户端开机自启批处理,重写软件启动vbs脚本。
现在博主编写的一键安装脚本已公开发布测试,支持 Kcptun 一键安装、更新、卸载、配置,欢迎测试使用:
以下为手动配置方式:
本教程以 CentOS 6.5 64位为例。
首先下载 Kcptun,可以到 GitHub 上获取最新版:
用 Xshell 或者 Putty 登陆服务器,下载 Kcptun 的预编译版:
mkdir /root/kcptun
cd /root/kcptun
wget https:///xtaci/kcptun/releases/download/v/kcptun-linux-amd64-.tar.gz
tar -zxf kcptun-linux-amd64-*.tar.gz
注:请根据你的系统下载对应版本。32位系统下载&kcptun-linux-386-*.tar.gz,64位系统下载 kcptun-linux-amd64-*.tar.gz
解压之后有两个文件:client_linux_amd64&和&server_linux_amd64,一个用于服务器,一个用于客户端。
这个项目目前还没有 init 脚本,也还不支持配置文件,于是我写了两个简单的 sh 脚本,用于启动和关闭服务端。请在服务端程序相同目录下新建两个文件 start.sh 和 stop.sh。
创建 start.sh
vi /root/kcptun/start.sh
写入以下内容:
#!/bin/bash
cd /root/kcptun/
./server_linux_amd64 -l ":29900" -t "127.0.0.1:8388" -key test -mode fast2 & kcptun.log 2&&1 &
echo "Kcptun started."
server_linux_amd64 对应服务端文件名,请对应修改。
-l 表示 Kcptun 的服务端监听端口,用于接收外部请求和发送数据,默认:29900,请选一个你喜欢的端口;
-t 表示要加速的地址,由于 Kcptun 和 Shadowsocks 在同一服务器,地址填写 127.0.0.1,而 8388 为 Shadowsocks 端口;
-key 是 Kcptun 的验证密钥,服务端和本地必须一致才能通过验证,请自行设置(可省略)默认:it&s a secrect,这里自定义为了 test;
-mode 为加速模式,默认 fast,这里使用 fast2。
响应速度:
fast3 & [fast2] & fast & normal & default
有效载荷比:
default & normal & fast & [fast2] & fast3
中间 mode 参数比较均衡,总之就是越快越浪费带宽(根据设置,可能会浪费数倍流量),请自行斟酌。推荐模式 fast2。
可用的参数请使用&./server_linux_amd64 -h 查看:
$ ./server_darwin_amd64 -h
&& kcptun - kcptun server
&& server_darwin_amd64 [global options] command [command options] [arguments...]
&&&& help, h&&Shows a list of commands or help for one command
GLOBAL OPTIONS:
&& --listen value, -l value&&kcp server listen address (default: ":29900")
&& --target value, -t value&&target server address (default: "127.0.0.1:12948")
&& --key value&&&&&&&&&&&&&& key for communcation, must be the same as kcptun client (default: "it's a secrect") [$KCPTUN_KEY]
&& --crypt value&&&&&&&&&&&& methods for encryption: aes, tea, xor, none (default: "aes")
&& --mode value&&&&&&&&&&&&&&mode for communication: fast3, fast2, fast, normal (default: "fast")
&& --mtu value&&&&&&&&&&&&&& set MTU of UDP packets, suggest 'tracepath' to discover path mtu (default: 1350)
&& --sndwnd value&&&&&&&&&&&&set send window size(num of packets) (default: 1024)
&& --rcvwnd value&&&&&&&&&&&&set receive window size(num of packets) (default: 1024)
&& --nocomp&&&&&&&&&&&&&&&&&&disable compression
&& --datashard value&&&&&&&& set reed-solomon erasure coding - datashard (default: 10)
&& --parityshard value&&&&&& set reed-solomon erasure coding - parityshard (default: 3)
&& --dscp value&&&&&&&&&&&&&&set DSCP(6bit) (default: 0)
&& --help, -h&&&&&&&&&&&&&&&&show help
&& --version, -v&&&&&&&&&&&& print the version
更深层次的参数调整需要理解 KCP 协议,并通过&隐藏参数&调整。巭孬嫑乱动
下面是作者给的配置参数样例,适用大部分ADSL接入(非对称上下行)的参数(实验环境电信100M ADSL)。其它带宽请按比例调整,比如 50M ADSL,把 CLIENT 的 -sndwnd -rcvwnd 减掉一半,SERVER 不变。
服务端:&& -mtu 1400 -sndwnd 2048 -rcvwnd 2048 -mode fast2
客户端:&& -mtu 1400 -sndwnd 256 -rcvwnd 2048 -mode fast2 -dscp 46
看不懂?那就别管它,你只要会简易自我调优方法就够了:
同时在两端逐步增大 client rcvwnd 和
尝试下载,观察如果带宽利用率(服务器+客户端两端都要观察)接近物理带宽则停止,否则跳转到第一步。
基本原则:SERVER 的发送速率不能超过 ADSL 下行带宽,否则只会浪费您的服务器带宽。
下面开始创建启动软件所需要用到的一些文件,都是 vi 的基础操作,我不写具体的编辑保存命令了,不会的可以自己搜索一下。
创建 stop.sh
vi /root/kcptun/stop.sh
写入以下内容:
#!/bin/bash
echo "Stopping Kcptun..."
PID=`ps -ef | grep server_linux_amd64 | grep -v grep | awk '{print $2}'`
if [[ "" !=&&"$PID" ]]; then
&&echo "killing $PID"
&&kill -9 $PID
echo "Kcptun stoped."
创建 restart.sh
#!/bin/bash
cd /root/kcptun/
sh stop.sh
echo "Restarting Kcptun..."
sh start.sh
然后可以启动服务端:
sh /root/kcptun/start.sh
/root/kcptun/kcptun.log 为日志信息。
监听日志信息可以使用:
tail -f /root/kcptun/kcptun.log
停止服务端请使用:
sh /root/kcptun/stop.sh
stop.sh: [[: not found
如果使用如下命令:
ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Dec 28&&2015 /bin/sh -& dash
可以看到 sh 指向了 dash,而 dash 是不认识 &[[& 的。为了解决这个问题,可以将默认使用的&shell 更换为 bash:
ln -sf /bin/bash /bin/sh
切换回去请使用:
ln -sf /bin/dash /bin/sh
重启服务端:
sh /root/kcptun/restart.sh
添加开机启动:
chmod +x /etc/rc.d/rc.local;echo "sh /root/kcptun/start.sh" && /etc/rc.d/rc.local
Ubuntu/Debian:
chmod +x /etc/rc.local;echo "sh /root/kcptun/start.sh" && /etc/rc.local
如果你有任何问题,欢迎加入我们的QQ群寻求帮助:
配置客户端
以本地 Windows 64位系统为例,首先下载 Kcptun 的 Windows 版本。
我这里先新建一个文件夹,命名为 Kcptun,然后下载:
https:///xtaci/kcptun/releases/download/v/kcptun-windows-amd64-.tar.gz
解压到文件夹下。
当前,Kcptun 已经有可视化配置工具了,你可以自行选择使用。如果不想用工具,可以往后翻,使用传统的文件启动方式。
1.来自&逗比根据地&的 Kcptun tools。由于软件是易语言编写的,可能会被杀毒软件报毒,请各位自行查毒。
软件说明:
&V1.0.3发布
软件下载地址:
2.KcptunGUI,来自&诸神的黄昏&。
源码地址:
软件下载:
注意:客户端和服务端参数必须一致的有:
parityshard
以下为手动创建启动文件的方法:
由于 Kcptun 是控制台程序,所以我选择使用 vbs 脚本,来达到后台运行的目的。
新建 run.vbs
Dim RunKcptun
Set fso = CreateObject("Scripting.FileSystemObject")
Set WshShell = WScript.CreateObject("WScript.Shell")
'获取文件路径
currentPath = fso.GetFile(Wscript.ScriptFullName).ParentFolder.Path & "\"
'软件运行参数
exeConfig = "client_windows_amd64.exe -l :12948 -r 10.10.10.10:29900 -key test -mode fast2"
logFile = "kcptun.log"
'拼接命令行
cmdLine = "cmd /c " & currentPath & exeConfig&&& " & " & currentPath & logFile & " 2&&1"
WshShell.Run cmdLine, 0, False
'WScript.Sleep 1000
'打印运行命令
'Wscript.echo cmdLine
Set WshShell = Nothing
Set fso = Nothing
WScript.quit
本地监听端口为&12948;服务器 IP 地址 10.10.10.10 端口 29900;验证密钥和服务端一致。其他参数说明见上面服务端配置的说明。
v&新增参数:-conn,使用多线程连接。可尝试添加 -conn 4 以使用4线程连接服务器。
新建 stop.bat
taskkill /f /im client_windows_amd64.exe
然后双击 run.vbs 运行程序,使用 stop.bat&来停止程序,kcptun.log 为输出的日志信息。
开机启动配置:
新建&startUp.bat:
title Kcptun 开机启动设置
mode con cols=50 lines=20
echo.&&&&&&&&&&&&&&&&Kcptun 启动项设置
echo.&&&& 此批处理可以将 Kcptun 客户端添加到开机启动
echo.&&&&&& 请将该文件放到 run.vbs 相同目录后运行
echo.&& 查看说明:/102.html
set /p ST=输入 y 添加开机启动,输入 n 取消开机启动:
if /I "%ST%"=="y" goto addStartup
if /I "%ST%"=="n" goto delStartup
:addStartup
reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "Kcptun Client" /t REG_SZ /d "\"%~dp0run.vbs\"" /F&NUL
:delStartup
reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "kcptun Client" /F&NUL 2&NUL
上面的配置过程中出现了多个端口,我在这里画个图,方便各位理解各端口的作用(点击看大图):
Shadowsocks 客户端配置
在客户端中新建服务器:
服务器 IP 填写本机:127.0.0.1
服务器端口填写:12948
正确填写你的 Shadowsocks 密码,加密方式,协议和混淆方式。
切换到该服务器上,测试是否正确运行。
我用的服务器是搬瓦工&512M 内存,费利蒙机房,以此测试加速效果。
按结论看,Kcptun 的加速效果略逊于&Finalspeed,估计需要细调配置。
刚运行 Finalspeed 时,内存占用就达到了 9.1% 也就是接近 47M;而此时 Kcptun 占用 0.4%,也就是 2M左右。
YouTube 1440p 满跑情况下,FInalspeed 最高内存占用 15.4%,接近 79M;而此时 Kcptun 占用 3% 左右,即 15.5M。
速度方面,Finalspeed 最大速度达到了10000 Kbps +,Kcptun 6000+ Kbps。
以上结论为本人测试所得,仅作为参考;实际情况请自行测试,如有纰漏,欢迎指出。
多人同时使用
如果想多人使用同一个服务器并同时使用 Kcptun 加速,经博主测试,需要满足以下两个条件:
启动多个 Kcptun 服务端,并使用不同的端口,你可以将 start.sh 拷贝一份,然后修改其中的端口;
各个&Kcptun 加速不同的 Shadowsocks 服务端端口,也就是 Shadowsocks 也需要开多端口。
Android上使用
请看这篇文章:Shadowsocks-Android客户端上的KCP配置说明
在路由器上使用
如果需要在路由器上使用 Kcptun,首先你得有个智能路由器,然后能进入shell。
编译好的客户端文件在这里下载:
小米路由器、极路由等一大批国产智能路由器都是 MT7620 的芯片,请下载 ramips 版本。
本文固定链接:&
转载请注明:&&日&于&&发表
http://git.oschina.net/ragnaroks/KcptunGUI
Views(...) Comments()查看: 1488|回复: 13
kcptun配置好之后SS 如何设置
刚刷单华硕固件里面带kcptun功能, 安装好服务器之后,SS里面的服务器地址是不是应该填127.0.0.1,还是填vps服务器地址
127.0.0.1& &
填127无法连接,只有填vps地址才能接通
那样的话应该是kcp没有跑起来吧&
kuptun里填服务器,ss里填127,不过k2就不用试了。cpu架不住,会被杀的。
我的K2用kuptun+ssr一切正常,只是cpu占用稍高&
kuptun里填服务器,ss里填127,不过k2就不用试了。cpu架不住,会被杀的。
我的K2用kuptun+ssr一切正常,只是cpu占用稍高
请问你的SS怎么填,填127.0.0.1用不了。&
我用不知名路由器,可以跑,只是cpu占用50%&
这个你是怎么做到的???&
调整了什么跑起来的?&
我的K2用kuptun+ssr一切正常,只是cpu占用稍高
调整了什么跑起来的?
关键要用最新版的kcptun,并且关压缩关fec&
不可能吧!我K2仅仅装SS和KCPTUN,就是跑不起来。一会就被杀死了。而且一小会的过程,网速并没有提升。
我的K2用kuptun+ssr一切正常,只是cpu占用稍高
这个你是怎么做到的???
关键是要用最新版的kcptun,并且关压缩关fec&
填127无法连接,只有填vps地址才能接通
那样的话应该是kcp没有跑起来吧
调整了什么跑起来的?
关键要用最新版的kcptun,并且关压缩关fec
这个你是怎么做到的???
关键是要用最新版的kcptun,并且关压缩关fec
你好。能否请你把你的kcptun 和ss的配置截个图给我们参考一下,我怎么设都不行。拜托了!&
kmhenry 发表于
我的K2用kuptun+ssr一切正常,只是cpu占用稍高
我用不知名路由器,可以跑,只是cpu占用50%
关键是要用最新版的kcptun,并且关压缩关fec
你好。能否请你把你的kcptun 和ss的配置截个图给我们参考一下,我怎么设都不行。拜托了!
我的K2用kuptun+ssr一切正常,只是cpu占用稍高
请问你的SS怎么填,填127.0.0.1用不了。
Powered by查看: 1514|回复: 8
怎么看k2的kcptun设置有效?
设置了半天.也能fan wall,但是不知道是用的主ss,还是用的副ss.
福ss走的是kcptun?有大神知道吗?
还有就是最新版的ss老是自己检测到错误重启.
Sep 20 14:52:36 【SS】: [ 14:51:54] SS 服务器 1090 检测到问题, 3
Sep 20 14:53:45 【SS】: [ 14:52:45] SS 服务器 1090 检测到问题, 5
Sep 20 14:55:00 【SS】: [ 14:53:54] SS 服务器 1090 检测到问题, 7
这是咋回事?
后来从服务器log发现被攻击.换个ip就好了.升到10/1也正常.
是vps被攻击?我搬瓦工换了ip还是出现lz那样的错误
我也不是很........
这样子啊,这两天更疯狂了,错误数都好几百了
这两天也是再次发生.改脚本增加SS每8小时自动重启了.
* */8 * * * nvram set ss_status=0000 && /tmp/ss.sh &
后来从服务器log发现被攻击.换个ip就好了.升到10/1也正常.
这样子啊,这两天更疯狂了,错误数都好几百了
这两天也是再次发生.改脚本增加SS每8小时自动重启了.
* */8 * * * nvram set ss_status=0000 && /tmp/ss.sh &&
9月初拿个版本?为什么我退回到8月26的还是有这个问题
后来从服务器log发现被攻击.换个ip就好了.升到10/1也正常.
是vps被攻击?我搬瓦工换了ip还是出现lz那样的错误&
这样子啊,这两天更疯狂了,错误数都好几百了&
也是遇到新版ss检测到问题. 目前先退回到九月初的版本.
9月初拿个版本?为什么我退回到8月26的还是有这个问题
后来从服务器log发现被攻击.换个ip就好了.升到10/1也正常.&
也是遇到新版ss检测到问题. 目前先退回到九月初的版本.
9月初拿个版本?为什么我退回到8月26的还是有这个问题&
还不清楚& &
您需要登录后才可以回帖
回帖并转播
Powered by

我要回帖

更多关于 kcptun 参数设置 的文章

 

随机推荐