我的 Network Load Balancer 背后的目标尝试连接到同一个 Network Load Balancer,但连接失败。为什么?

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

Network Load Balancer 会保留源 IP,因此到达的数据包的源 IP 和目标 IP 都是目标的私有 IP 地址。然后,主机操作系统会将数据包视为无效,并且无法发送响应流量,导致连接失败。

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

要解决此类 Network Load Balancer 连接失败的问题,请使用 IP 目标类型。使用 IP 目标类型时,目标会看到 Network Load Balancer 的 IP 地址。由于源和目标是唯一的,因此连接成功。

要将 IP 目标类型用于您的 Network Load Balancer,请按照以下步骤操作:

1.    为负载均衡器创建一个新目标组

2.    对于目标类型,选择 ip

注意:创建目标组后,您将无法修改目标类型。

如果您正在使用 Amazon Elastic Container Service (Amazon ECS),请使用“awsvpc”网络类型,它会为每个正在运行的任务提供一个弹性网络接口、一个私有 IP 地址和一个私有 DNS 名称。“awsvpc”网络类型还会在您的目标组中将目标类型设置为“ip”。

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


此页面对您有帮助吗? |

返回 AWS Support 知识中心

需要帮助? 请访问 AWS 支持中心

发布时间:2018 年 6 月 4 日