【问题标题】:ELB not forwarding client IPELB 不转发客户端 IP
【发布时间】:2017-06-07 23:18:28
【问题描述】:

因此,我将 AWS ELB 放在 haproxy 前面,而我们的应用服务器放在后面(我知道这有点疯狂)。请求被记录在我们的 haproxy 服务器和应用程序服务器中,因为它们来自 ELB 的 ip,而没有显示真实的客户端 IP。当我们仅使用 HAproxy 和我们的应用程序服务器进行此设置时,客户端 IP 的传递没有问题,但似乎没有很多配置选项允许 ELB 中的 x forwarded for 标头。它可能是默认设置的,但很难找到是否属实。

提前感谢您的帮助!

【问题讨论】:

  • 如果您在负载均衡器上使用 http/https 监听器,那么负载均衡器应该将 x-forwarded-for 标头添加到请求中。
  • 完全合理的配置,但正如@MarkB 指出的那样,经典ELB 必须处于HTTP(S) 模式才能添加标头。如果您在 TCP 模式下运行它(对于 HAProxy 上的 SNI),那么您需要在 ELB 和 HAProxy 上启用代理协议。请说明您的配置。

标签: amazon-web-services load-balancing haproxy amazon-elb


【解决方案1】:

AWS 为 ELB 上的 TCP 入口带来了代理协议支持:

https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-proxy-protocol.html

【讨论】:

    猜你喜欢
    • 2020-11-25
    • 1970-01-01
    • 2018-11-28
    • 2013-09-04
    • 2017-03-11
    • 2017-09-21
    • 2018-09-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多