为什么我的网络负载均衡器背后的目标无法连接到它自己的网络负载均衡器?

上次更新日期:2022 年 9 月 20 日

我的网络负载均衡器背后的目标尝试连接到同一个网络负载均衡器,但连接失败。为什么?

简短描述

当内部 Network Load Balancer 的目标建立到自己的 Network Load Balancer 的 TCP 连接时,目标可以路由到自身。

网络负载均衡器会保留源 IP,因此到达的数据包的源 IP 和目标 IP 都是目标的私有 IP 地址。然后,主机操作系统将数据包视为无效,因此它不发送响应流量,连接失败。

注意:只有当源和目标相同时,此连接才会失败。因此,连接问题会间歇性发生,具体取决于网络负载均衡器可用的目标数量。

要更正此类网络负载均衡器连接故障,请使用 preser ve_client_ip.enabled 目标组属性停用 TCP 和 TLS 目标组的客户端 IP 保留

解决方法

要使用新控制台激活或停用客户端 IP 保存,请执行以下操作:

  1. 打开 Amazon EC2 console(Amazon EC2 控制台)。
  2. 在导航窗格中,选择 Load Balancing(负载均衡)下的 Target Groups(目标组)。
  3. 选择目标组的名称以打开其详细信息页面。
  4. Attributes(属性)选项卡上,选择 Edit(编辑)。
  5. 要激活客户端 IP 保留,请选择 Preserve client IP addresses(保留客户端 IP 地址)。要停用客户端 IP 保留,请清除 Preserve client IP addresses(保留客户端 IP 地址)。
  6. 选择 Save changes(保存更改)。

如果您的应用程序需要客户端的 IP 地址,请启用代理协议支持,并从代理协议标头访问客户端 IP 地址。


这篇文章对您有帮助吗?


您是否需要账单或技术支持?