如何能让TG代理稳定一点,长久使用

2021-06-15 14:16:26 浏览数 (1)

好不好用,自己用了就知道。

这个完全 复制-粘贴-执行 就行,没有任何隐藏步骤

本文由n2n sprov-ui Haproxy

n2n是一个二层架构的扶墙网络,其中super node提供场所,让两个位于NAT/防火墙之后的edge node进行会面,一旦双方完成首次握手,剩下的数据流就之发生在两个edge node之间,如果有一方的NAT属于对称型(symmetrical),super node则还需继续为双方提供数据包的转发;edge node负责数据流的加解密,原理很简单。

至此,我们已经了解,部署n2n至少需要两台以上的机器。(我这里是国内一台,国外一台)

我们此文采用两台centos。

centos7(super node) – 149.0.0.1 (公网IP) centos7 - 10.0.0.1(n2n的ip)

使用n2n产生的虚拟网段,将为 10.0.0.1 ~ 10.0.0.255

无论是edgenode还是supernode 都需要安装n2n,所以下面安装方法通用,提供两种n2n资源,均可。

代码语言:javascript复制
git clone https://github.com/meyerd/n2n.git

yum install -y openssl-devel
yum install -y cmake
yum install -y net-tools
yum install -y git
yum install -y gcc gcc-c  

cd n2n/n2n_v2

mkdir build
cd build
cmake ..
make && make install

supernode #(服务端运行)
supernode -l 5000
服务端也可以同时当做客户端使用,将服务端加入到虚拟网络中。
代码语言:javascript复制
edge -a 10.0.0.10 -c edge0 -k wss -l 149.0.0.1:5000
客户端
代码语言:javascript复制
edge -a 10.0.0.11 -c edge0 -k wss -l 149.0.0.1:5000

10.0.0.11 这个IP是虚拟网段,其他加入虚拟网络中的IP地址需要在同一网段,统一key,即wss(可设置为其他)。

国外机器安装sprov-ui
代码语言:javascript复制
wget -O /usr/bin/sprov-ui -N --no-check-certificate https://github.com/mikewubox/sprov-ui/raw/master/sprov-ui.sh && chmod  x /usr/bin/sprov-ui && sprov-ui
装完了以后,新加代理的时候把IP改成内网段的
然后国内机器安装Haproxy
代码语言:javascript复制
yum -y install Haproxy
vi /etc/haproxy/haproxy.cfg
在centos7上安装好后使用的时候要把下面两个参数注释。

然后配置就行。不然会报错http参数问题

代码语言:javascript复制
defaults
    mode                    http
    log                     global
#    option                  httplog
    option                  dontlognull
    option http-server-close
#    option forwardfor       except 127.0.0.0/8
    option                  redispatch
    retries                 3
    timeout http-request    10s
    timeout queue           1m
    timeout connect         10s
    timeout client          1m
    timeout server          1m
    timeout http-keep-alive 10s
    timeout check           10s
    maxconn                 3000
后面新加端口转发
代码语言:javascript复制
frontend tcp-2013-front
    bind 172.24.19.176:1204                                     国内机器IP端口
    mode tcp
    default_backend     tcp-2013-back

backend tcp-2013-back
   mode tcp
   balance leastconn
   server tcp-2013 10.0.0.10:1204                          国外机器n2nIP端口

haproxy -c -V -f /etc/haproxy/haproxy.cfg   验证
验证没问题,启动报错 ,关闭sLinux
代码语言:javascript复制
setenforce 0
vim /etc/sysconfig/selinux

SELINUX=enforcing 改为 SELINUX=disabled

大概就这些了。从去年国庆后改成这个方法,用过的代理都没得问题。

0 人点赞