首页 文章

AWS ALB路由

提问于
浏览
0

我在AWS中配置了面向ALB的Internet,其中有两个侦听器(80和443),目标组在私有网络(10.0.1.0/24)中 . 当ALB将http / https请求发送到10.0.1.0网络中的目标组时,请求如何发送回ALB? ALB具有公共IP,目标组没有到Internet的路由 . 我可以配置NAT网关并设置路由0.0.0.0/0以使用NAT网关 . 但网络响应将一直到互联网,然后回到ALB . 非常不受欢迎 . 我也不能将这些实例放在面向公众的子网中 .

有人可以帮助如何做到这一点?我想到了VPC endpoints ,并使用负载均衡器配置了一个(我使用了ELB,因为我找不到ALB endpoints 服务) . 现在, endpoints 显示它在10.0.1.0子网中具有IP . 但是,我不知道这是如何工作的 . 有人可以建议做什么 . 谢谢 .

1 回答

  • 1

    不确定你的问题到底是什么 . 但是,您可以简单解释AWS ELB的工作原理 .

    在AWS Classic负载均衡器和应用程序负载均衡器中,涉及两个连接:

    • 客户端(浏览器等)与ELB之间的连接

    • ELB和后端目标实例(Web服务器)之间的连接

    创建面向ELB的Internet时,您可以选择两个子网 . 这些子网应该是具有到Internet网关路由的公共子网 . ELB将在每个子网中至少启动一个ELB节点 . Internet上的客户端将能够通过IGW使用其公共IP连接到这些ELB节点 .

    一旦ELB收到客户端的请求,它就会将请求转发给其后端目标 . 此通信使用ELB节点的PRIVATE IP和目标实例 . 因此,即使实例位于私有子网中,ELB仍然能够将请求转发给它们,因为连接是通过路由表中使用“本地”路由的私有IP . 然后来自目标的响应通过私有IP进入ELB,然后通过公共IP转发到客户端 .

    Client <--public IP--> ELB <--private IP--> Targets
    

    客户端和ELB之间的连接是通过公共IP连接的,ELB和Web服务器之间的连接是通过私有IP进行的,不需要到IGW或NAT的路由 .

    不要担心私有子网的NAT网关 . 只需确保在创建ELB时选择的子网是公共的,并且具有到Internet网关的路由 .

相关问题