使用HAProxy端口转发TCP流量(支持BBR)

HAProxy端口转发优缺点
优点:工作在应用层,能用BBR,适合跨境和延迟高的网络。
缺点:仅支持TCP,无法转发UDP流量,高流量或复杂规则可能消耗较多CPU和内存,容易被DDoS攻击

安装

sudo apt-get update
sudo apt-get install haproxy -y

/etc/haproxy/haproxy.cfg

编辑配置文件:

sudo nano /etc/haproxy/haproxy.cfg

配置文件内容:


global
    log /dev/log local0
    log /dev/log local1 notice
    maxconn 10000                #最大并发连接数为10000
    tune.bufsize 131072          #设置128KB缓存
    tune.maxrewrite 2048         #每个缓冲区最大重写空间为2048字节
    nbthread 4                   # 启用多线程(根据 CPU 核心数调整)
    daemon

defaults
    log     global
    option  tcplog
    timeout connect 3000ms      #连接后端服务器的超时时间为 3 秒
    timeout client  30000ms     #客户端超时时间为 30 秒
    timeout server  30000ms     #服务器超时时间为 30 秒

frontend https_in
    bind *:543 tfo             #本地监听端口543
    mode tcp
    default_backend ocserv_backend

backend ocserv_backend
    mode tcp
    server ocserv_local 127.0.0.1:443 check    #目标服务器地址和端口


加载配置文件,测试配置是否正确。

haproxy -c -f /etc/haproxy/haproxy.cfg 

输出:Configuration file is valid

启动服务:

systemctl status haproxy.service 

重启以后会自动生效,同时内核只要开启了BBR,也会起作用。

发表评论