【问题标题】:Can proxy protocol be used with AWS Application Load Balancers?代理协议可以与 AWS Application Load Balancer 一起使用吗?
【发布时间】:2019-01-07 10:37:51
【问题描述】:

AWS 较旧的“经典”负载均衡器能够设置代理协议策略,将请求的外部 IP 地址添加到内部请求的 HTTP 标头中。

AWS 较新的 Application Load Balancer 似乎没有同样的功能。这是正确的,还是可以启用的?

如果这不是一个选项,那么是否建议恢复为经典负载均衡器?我觉得使用较新的负载均衡器类型是一种推动力,因此对经典方法如此依赖并不明智。

【问题讨论】:

    标签: amazon-web-services amazon-ec2 amazon-elb aws-load-balancer


    【解决方案1】:

    当您拥有使用 TCP 进行后端连接的负载平衡器时,代理协议标头可帮助您识别客户端的 IP 地址。

    代理协议适用于 L4 (TCP),而应用程序负载均衡器仅适用于 L7。 ALB 仅支持 HTTP/HTTPS 侦听器。

    这就是代理协议存在于经典 ELB 中但不存在于 ALB 中的原因。

    关于第二个问题,使用什么负载均衡器取决于您使用它的场景,您可以阅读此thread,它将启发您了解每个 CLB 到 NLB/ALB 的升级。

    希望这会有所帮助!

    【讨论】:

    • 感谢库什,这是有道理的。似乎 NLB 拥有真正的 IP,但与证书管理器没有任何集成 - 这是否符合您的理解?
    • 只是从我的进一步调查中稍微详细说明 Kush 的回答:虽然代理协议和其他 ELB 策略不能与 ALB 一起使用,但 ALB 实际上确实通过发送 X-Forwarded-For 标头(我没有'没有正确显示标题的内部服务,因此我寻找另一种方式)。
    • @pat 你知道 ALB 是否真的支持解析代理协议标头以将其转换为 X-Forwarded-For? (我们的边界有 NLB,它们通过 Foritate FW 实例,然后命中调用我们应用程序的 ALB)
    • @PeterMcEvoy 我不知道。恐怕我正在为此工作的项目不再运行,所以我手头没有任何东西可以测试。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-23
    • 2020-08-03
    • 2019-04-19
    • 2021-01-21
    • 2020-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多