Sign inSign up

lihaixin/udptools

By lihaixin

Updated over 1 year ago

udptools

Image
0

1.5K

lihaixin/udptools repository overview

06. udptools

容器介绍

利用 udptools 搭建多条加速 udp 隧道(12001-12020),转发到国外 11194 端口的 openvpn 服务器,实现拨入国内访问 11194,自动选择不同的加速隧道

环境:
  1.  国外 openvpn 服务器(10.21.1.11) 端口:11194

  2. 国外隧道服务器(35.91.4.95) 端口:12001-12020

  3. 国内隧道客户端(116.116.116.116)端口:12001-12020 端口:11194

功能目的:
  1.  加速玩海外游戏,udp 传输延迟更低、加速发包网络更稳定

  2. 国内 openvpn 客户端拨入国内隧道客户端 11194 端口,通过随机加速隧道连接 10.21.1.11 的国外 openvpn 11194 端口

国外服务器

一键安装 udptool 服务端

下面的的 10.21.1.11 假设是你转发 Openvpn 服务器 IP

docker run -d --name udptools.server \
--net=host \
--cap-add=NET_ADMIN \
-e PORT=12001 \
-e RURL=10.21.1.11 \
-e RPORT=11194 \
--restart=always \
lihaixin/udptools:server
添加更多隧道连接

防止单条端口 udp 速度受限、实现

本地 12001 连接 10.21.1.11 11194

本地 12002 连接 10.21.1.11 11194

本地 12002 连接 10.21.1.11 11194

for port in {12001..12020}; do
  echo "$port 10.21.1.11 11194"
done > /home/udptools.list
12001 10.21.1.11 11194
12002 10.21.1.11 11194
12003 10.21.1.11 11194

国内客户端

一键安装 udptool 客户端

下面的的 35.91.4.95 假设是你服务器端 IP

docker run -d --name udptools.client \
--net=host \
--cap-add=NET_ADMIN \
-e UDPSPEEDER=1 \
-e UDP2RAW=0 \
-e PORT=12001 \
-e RURL=35.91.4.95 \
-e RPORT=12001 \
--restart=always \
lihaixin/udptools:client
添加更多隧道连接

防止单条端口 udp 速度受限、实现

本地 12001 连接 35.91.4.95:12001

本地 12002 连接 35.91.4.95:12002

本地 12002 连接 35.91.4.95:12002

for port in {12001..12020}; do
  echo "$port 35.91.4.95 $port"
done > /home/udptools.list
添加 gost 端口转发
proxyedit
输入如下:
udp 11194 172.19.0.130 12001 local 8.8.8.8 22225 ruser rpass

nano /etc/envfile
调整变量OTHER值,赋值
?ip=/home/ip.txt&strategy=fifo&max_fails=1&fail_timeout=30s

strategy: 指定节点选择策略,round - 轮询,random - 随机, fifo - 自上而下。

max_fails:指定节点连接的最大失败次数,当与一个节点建立连接失败次数超过此设定值时,此节点会被标记为死亡节点(Dead),死亡节点不会被选择使用。默认值为1。

fail_timeout :指定死亡节点的超时时间,当一个节点被标记为死亡节点后,在此设定的时间间隔内不会被选择使用,超过此设定时间间隔后,会再次参与节点选择。默认为30秒。

添加 gost 负载均衡

脚本生成 /home/ip.txt  端口 11194 均衡转发到172.19.0.130:12001 172.19.0.130:12002

for port in {12001..12020}; do
  echo "172.19.0.130:$port"
done > /home/ip.txt
172.19.0.130:12001
172.19.0.130:12002
172.19.0.130:12003

在线调优

变量调整方法

通过调整容器/etc/envfile 变量参数值,实现不同加速方案

  1. UDPSPEEDER=1 UDP2RAW=0  纯 udp 加速

  2. UDPSPEEDER=0 UDP2RAW=1  纯 udp 数据使用 faketcp 伪装

  3. UDPSPEEDER=1 UDP2RAW=1 既 udp 加速又使用 faketcp 伪装

  4. OPTION=--disable-obscure  禁用晦涩功能,以节省一点带宽和CPU。

  5. TIMEOUT=4ms 一个数据包在队列中可以被持有多久才进行前向纠错

  6. LOGLEVEL=2  0: never    1: fatal   2: error   3: warn 4: info (default)      5: debug   6: trace

  7. INTERVAL=0   将每个FEC组分散到<数字>毫秒的间隔中

  8. FEC_OPTIONS=10:6  前向纠错,每发送 x 个数据包就发送 y 个冗余数据包

  9. FEC_MODE=0  fec模式,可用值:0,1;

  10. SOCK_BUF=1024 套接字的缓冲区大小,>=10且<=10240,单位:千字节,默认值:1024

--fifo option

直接修改 fifo.file 进行动态调整

echo fec 20:10 > /tmp/fifo.file
echo mtu 1250 > /tmp/fifo.file
echo timeout 8 > /tmp/fifo.file
echo queue-len 200 > /tmp/fifo.file
echo mode 0 > /tmp/fifo.file

Tag summary

Content type

Image

Digest

sha256:8f452fd88

Size

9.2 MB

Last updated

over 1 year ago

docker pull lihaixin/udptools