Quantcast
Channel: 看得透又看得远者prevail. ppt.cc/flUmLx ppt.cc/fqtgqx ppt.cc/fZsXUx ppt.cc/fhWnZx ppt.cc/fnrkVx ppt.cc/f2CBVx
Viewing all articles
Browse latest Browse all 20560

xkcptun是基于kcp和libevent2库,用c语言实现的kcptun

$
0
0
xkcptun is kcp tunnel for OpenWRT&LEDE, implemented in c language.


xkcptun主要应用于LEDE,openwrt中,其原理如图:
kcptun

Compile

xkcptun依赖libevent2
安装libevent2库后 (apt-get install libevent-dev)
git clone https://github.com/liudf0716/xkcptun.git
cd xkcptun
mkdir build && cd build
cmake .. (camke -DBUILD_STATIC_LINK=yes .. //静态链接)
make
生成xkcp_client, xkcp_server, xkcp_spy

参考文档

1, 安装libjson c的问题
2, bbr vs kcp 优化http下载性能对比报告
3, 如何在centos上部署xkcptun server

OpenWrt

编译及安装请参考 openwrt-xkcptun

QuickStart

为方便理解和使用,我们将使用场景放在同一台pc上,pc使用ubuntu系统,我们通过xkcptun来访问本机的http server
假设pc的 eth0 ip 为 192.168.199.18, http server的监听端口为80端口,xkcptun的server和client配置分别如下:
server.json 如下:
{
"localinterface": "eth0",
"localport": 9089,
"remoteaddr": "192.168.199.18",
"remoteport": 80,
"key": "14789632a",
"crypt": "none",
"mode": "fast3",
"mtu": 1350,
"sndwnd": 1024,
"rcvwnd": 1024,
"datashard": 10,
"parityshard": 3,
"dscp": 0,
"nocomp": true,
"acknodelay": false,
"nodelay": 0,
"interval": 20,
"resend": 2,
"nc": 1,
"sockbuf": 4194304,
"keepalive": 10
}
client.json如下:
{
"localinterface": "eth0",
"localport": 9088,
"remoteaddr": "192.168.199.18",
"remoteport": 9089,
"key": "14789632a",
"crypt": "none",
"mode": "fast3",
"mtu": 1350,
"sndwnd": 1024,
"rcvwnd": 1024,
"datashard": 10,
"parityshard": 3,
"dscp": 0,
"nocomp": true,
"acknodelay": false,
"nodelay": 0,
"interval": 20,
"resend": 2,
"nc": 1,
"sockbuf": 4194304,
"keepalive": 10
}
分别运行:
xkcp_server -c server.json -f -d 7
xkcp_client -c client.json -f -d 7
[注] 以上命令都是运行在debug和前台运行模式,正式部署的时候要把 -f 去掉, -d 0 如: xkcp_server -c server.json -d 0
curl http://192.168.199.18:9088
其执行效果与curl http://192.168.199.18等同
xkcp_spy -h 192.168.199.18 -s -t status
查看服务器端的情况
xkcp_spy -h 192.168.199.18 -c -t status
查看客户端的情况

FROM https://github.com/liudf0716/xkcptun

Viewing all articles
Browse latest Browse all 20560

Latest Images

Trending Articles

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>