首页 Haproxy教程haproxy-IP透传

haproxy-基于cookie的会话保持

haproxy-报文修改

运维派隶属马哥教育旗下专业运维社区,是国内成立最早的IT运维技术社区,欢迎关注公众号:yunweipai
领取学习更多免费Linux云计算、Python、Docker、K8s教程关注公众号:马哥linux运维

IP透传

web服务器中需要记录客户端的真实IP地址,用于做访问统计、安全防护、行为分析、区域排行等场景。

layer 4 与 layer 7

四层:IP+PORT转发

七层:协议+内容交换

haproxy-IP透传插图

四层负载

在四层负载设备中,把client发送的报文目标地址(原来是负载均衡设备的IP地址),根据均衡设备设置的选择web服务器的规则选择对应的web服务器IP地址,这样client就可以直接跟此服务器建立TCP连接并发送数据,而四层负载自身不参与建立连接,而和LVS不同,haproxy是伪四层负载均衡,因为haproxy 需要分别和前端客户端及后端服务器建立连接

七层代理

七层负载均衡服务器起了一个反向代理服务器的作用,服务器建立一次TCP连接要三次握手,而client要访问webserver要先与七层负载设备进行三次握手后建立TCP连接,把要访问的报文信息发送给七层负载均衡;然后七层负载均衡再根据设置的均衡规则选择特定的webserver,然后通过三次握手与此台webserver建立TCP连接,然后webserver把需要的数据发送给七层负载均衡设备,负载均衡设备再把数据发送给client;所以,七层负载均衡设备起到了代理服务器的作用,七层代理需要和Client和后端服务器分别建立连接

haproxy-IP透传插图(1)
haproxy-IP透传插图(2)

四层IP透传

抓包可以看到continuation信息中带有客户端的源IP

haproxy-IP透传插图(3)

七层IP透传

当haproxy工作在七层的时候,如何透传客户端真实IP至后端服务器

HAProxy配置

在由haproxy发往后端主机的请求报文中添加“X-Forwarded-For”首部,其值为前端客户端的地址;用于向后端主发送真实的客户端IP

范例:

web服务器日志格式配置

配置web服务器,记录负载均衡透传的客户端IP地址

验证客户端IP地址

apache日志:

本文链接:http://www.yunweipai.com/35283.html

haproxy-基于cookie的会话保持

haproxy-报文修改

网友评论comments

发表评论

电子邮件地址不会被公开。

暂无评论

Copyright © 2012-2020 YUNWEIPAI.COM - 运维派
扫二维码
扫二维码
返回顶部