1 回答
- 最新
- 投票最多
- 评论最多
0
【以下的回答经过翻译处理】 我推断您是有一个内部负载均衡器,其目标由实例 ID 注册。您上述现象的原因是“发夹/环回”(即将来自原始终点的消息按原路径返回)问题导致的。内部网络负载平衡器不支持“发夹或环回”。当您按实例 ID 注册目标时,会保留客户端的源 IP 地址。如果一个实例是它通过实例 ID 注册的内部负载平衡器的客户端,则仅当请求路由到不同的实例时连接才会成功。否则,源IP地址和目的IP地址相同,连接超时。
详细:网络负载均衡器保留源 IP,因此在实例B通过NLB访问实例B的情况下,到达的数据包中源和目标都是目标的私有 IP 地址。此时,主机操作系统将这种数据包视为无效,无法发送响应流量,从而导致连接失败。
解决方法:要达到你的目的,可以使用 IP 目标类型。对于 IP 目标类型,目标会看到网络负载均衡器的 IP 地址。因为源和目标是唯一的,所以连接成功;
总而言之,如果您有通过 NLB 访问同一目标的要求,请使用基于 IP 的目标组。
其他详细信息在这里 - https://aws.amazon.com/premiumsupport/knowledge-center/target-connection-fails-load-balancer/,<https://docs.aws.amazon.com /elasticloadbalancing/latest/network/load-balancer-troubleshooting.html#loopback-timeout>
补充:如果仍使用实例目标类型时,可通过关闭目标组的“保留客户端源地址IP”属性来达到这一目的,但因为关闭了该属性,会导致NLB的目标实例的安全组无法限制访问来源方。
相关内容
- AWS 官方已更新 3 年前
- AWS 官方已更新 1 年前
- AWS 官方已更新 2 年前
- AWS 官方已更新 2 年前