《企业运维之云上网络原理与实践》——第二章 负载均衡 CLB——负载均衡CLB(中)-最佳实践(3)

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
EMR Serverless StarRocks,5000CU*H 48000GB*H
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 《企业运维之云上网络原理与实践》——第二章 负载均衡 CLB——负载均衡CLB(中)-最佳实践(3)

《企业运维之云上网络原理与实践》——第二章 负载均衡 CLB——负载均衡CLB(中)-最佳实践(2) https://developer.aliyun.com/article/1230686?groupCode=supportservice



3. 获取客户端真实IP

 

在不同的监听下,获取客户端真实的IP地址的方式不同,如下图:

 

image.png

 

IPv4四层监听

ü 通过toa可直接获取到客户端真实IP

ü 可通过Proxy Protocol获取客户端真实IP

 

IPv6四层监听

ü 可通过Proxy Protocol获取客户端真实IP

 

七层监听

ü 通过请求头中的x-forwarded-for获取客户端真实IP

 

1) 通过toa获取客户端真实IP

 

image.png

 

目标IP为VPC下绑定了EIP的SLB,五元组如下

120.195.13.68:12345-TCP->123.56.169.153:443

 

TCP三次握手第三个ACK包的完整十六进制dump,加粗部分即为完整的TCP Option

0000 00 16 3e 34 07 96 58 60 5f 72 1e 00 08 00 45 14

0010 00 3c ac a3 40 00 2f 06 e9 7b 64 79 b8 15 0a 19

0020 8e e1 7c da 01 bb 88 77 6a 56 ad 5c bc aa a0 10

0030 00 e5 35 62 00 00 fc 14 30 39 78 c3 0d 44 19 70

0040 09 00 c0 a8 00 5b 01 bb 01 01

 

依次为

TCP Option Kind==2520xfc

长度从Kind开始算):20字节0x14

客户端源端口12345->30 39网络字节序/大端

客户端IP地址120.195.13.68->78 c3 0d 44

VPC TunnelID618521->19 70 09 00主机字节序/小端

Vip192.168.0.91->c0 a8 00 5b

Vport443->01 bb网络字节序/大端

 

2) 通过Proxy Protocol获取客户端真实IP

 

五元组

120.195.13.68.34270-TCP->47.98.108.43.10086

 

0000 00 16 3e 12 90 f5 ee ff ff ff ff ff 08 00 45 00

0010 00 8c 7a b7 40 00 66 06 49 cb 78 c3 0d 44 c0 a8

0020 09 3a 85 de 01 bb 10 a9 24 18 c2 df 78 02 50 18

0030 13 88 64 6f 00 00 0d 0a Od 0a 00 Od 0a 51 55 49

0040 54 0a 21 11 00 54 78 c3 0d 44 2f 62 6c 2b 85 de

0050 27 66 03 00 04 8a 65 79 c5 04 00 3e 0o 00 00 00

0060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

0070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

0080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

0090 00 00 00 00 00 00 00 00 00 00

 

从加粗的第0x36个字节开始,是TCP的payload加粗部分接下去就是

 

12个字节是Proxy Protocol的固定签名

\x0D\x0A\x0D\x0A\x00\x0D\x0A\x51\x55\x49\x54\x0A

4bit的版本号,这里是0x2,意为V2的版本

4bit的command,这里是0x1,意为Proxy0x0==Local

4bit的地址族,这里是0x1,意为AF_INETIPv4,其余的为0x0// AF_UNSPEC 0x2 // AF_INET6IPv60x3 //AF_UNIX

4bit的transport protocol,提示接下去是哪一种传输层的协议,这里是0x1,意为STREAMTCP,其余的为0x0 //UNSPEC 0x2 // DGRAMUDP

2字节表明接下去的长度,网络字节序,这里是0x0054==84,说明接下去的84字节都是PP本身的payload斜体部分

4字节的源IP,78 c3 0d 44转换成点分十进制即为120.195.13.68

4字节的目标IP,2f 62 6c 2b转换成点分十进制即为47.98.108.43

2字节的源端口,网络字节序,0x85de==34270

2字节的目标端口,网络字节序,0x2766==10086

 

3) 通过请求头中的x-forwarded-for获取真实客户端IP

 

在后端ECS上抓包,打印请求头中包含以下key-value:

X-Forwarded-For用户真实IP,代理服务器1-IP,代理服务器2-IP,……

 

image.png

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
3月前
|
运维 Prometheus 监控
OceanBase 的运维与监控最佳实践
【8月更文第31天】随着分布式数据库解决方案的需求日益增长,OceanBase 作为一种高性能的分布式数据库系统,在众多场景下得到了广泛应用。为了确保 OceanBase 集群的稳定运行,合理的运维与监控是必不可少的。本文将探讨 OceanBase 的日常运维管理与监控策略,并提供相应的代码示例。
186 2
|
7天前
|
运维 负载均衡 安全
|
16天前
|
负载均衡 算法
SLB-Backend的负载均衡算法
【10月更文挑战第19天】
34 5
|
1月前
|
运维 负载均衡 监控
提升系统性能:高效运维的秘密武器——负载均衡技术
在当今数字化时代,系统的高可用性和高性能成为各类企业和组织追求的目标。本文旨在探讨负载均衡技术在运维工作中的关键作用,通过深入分析其原理、类型及实际应用案例,揭示如何利用这项技术优化资源分配,提高系统的响应速度和可靠性,确保用户体验的稳定与流畅。无论是面对突如其来的高流量冲击,还是日常的运维管理,负载均衡都展现出了不可或缺的重要性,成为现代IT架构中的基石之一。
54 4
|
2月前
|
负载均衡 Java 对象存储
负载均衡策略:Spring Cloud与Netflix OSS的最佳实践
负载均衡策略:Spring Cloud与Netflix OSS的最佳实践
49 2
|
2月前
|
运维 云栖大会
运维管理新品发布与最佳实践 | 2024云栖大会预告
运维管理新品发布与最佳实践 | 2024云栖大会
|
3月前
|
存储 运维 监控
数据库服务器运维最佳实践
【8月更文挑战第22天】
64 2
数据库服务器运维最佳实践
|
6月前
|
运维 Kubernetes Cloud Native
构建高效云原生运维体系:Kubernetes最佳实践
【5月更文挑战第9天】 在动态和快速演变的云计算环境中,高效的运维是确保应用稳定性与性能的关键。本文将深入探讨在Kubernetes环境下,如何通过一系列最佳实践来构建一个高效且响应灵敏的云原生运维体系。文章不仅涵盖了容器化技术的选择与优化、自动化部署、持续集成/持续交付(CI/CD)流程的整合,还讨论了监控、日志管理以及灾难恢复策略的重要性。这些实践旨在帮助运维团队有效应对微服务架构下的复杂性,确保系统可靠性及业务的连续性。
|
3月前
|
缓存 运维 监控
打造稳定高效的数据引擎:数据库服务器运维最佳实践全解析
打造稳定高效的数据引擎:数据库服务器运维最佳实践全解析
|
3月前
|
负载均衡
alb负载均衡按量降价了,资源包抵扣已经比按量付费的贵了,结果还是在走资源包抵扣。
ALB实例按量付费已降价,1万LCU资源包单价现为0.0485,3LCU可抵一小时标准版实例费用(原0.147现降至0.125),单LCU价格也下调至0.042。资源包价格保持不变,旧购资源包仍在抵扣中,建议调整为降价时不进行抵扣。同时,附上与不太了解情况的客服交流记录供参考。

热门文章

最新文章

相关产品

  • 负载均衡