以下是代理的配置(为隐私而修改的日志中的IP):
global
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
#stats timeout 30s
#user haproxy
#group haproxy
daemon
defaults
log global
mode tcp
option tcplog
option dontlognull
option logasap
timeout connect 50000
timeout client 50000
timeout server 50000
listen stats
maxconn 1000000
bind 0.0.0.0:8081
stats enable
mode http
stats realm Haproxy\ Statistics # Title text for popup window
stats uri /stats # Stats URI
stats auth stats:stats # Authentication credentials
frontend local
bind *:1900
bind *:443
tcp-request connection expect-proxy layer4 if { src -f /etc/haproxy/proxies.lst }
mode tcp
default_backend nodes
backend backnodes
mode tcp
balance roundrobin
source 0.0.0.0 usesrc clientip
server one 10.10.10.10:1900 check
proxies.lst只有一行1.1.1.1
客户端无法连接,如果我检查日志,我会看到以下行,
Jun 11 10:46:39 udasddg0 haproxy[16981]: 1.1.1.1:51000 [11/Jun/2018:10:43:19.855] local backnodes/one 1/-1/+200005 +0 sC 31/31/30/30/3 0/0
据我所知:
sC表示服务器超时,客户端在此之后重置连接 也看起来像Tc = -1,这意味着实际的服务器没有响应代理。
如果我在代理服务器上的wireshark中关注tcp流,我看到我们正在接收代理信息:
PROXY TCP4 2.2.2.2 3.3.3.3 53889 1900
不确定连接失败的原因。任何建议将不胜感激。