41

我在 Amazon 云上运行了一个设置,其中有几个 EC2 实例通过负载均衡器运行。

重要的是,该站点具有唯一(静态)IP 或一组 IP,因为我正在插入仅接受来自已添加到其白名单的 IP 的请求的第 3 方 API。

所以基本上除非我们可以给这些第 3 方一个静态 IP 或 IP 范围,该站点的请求将始终来自该 IP,否则我们将无法对他们进行任何调用。

任何人都知道如何实现这一点,因为我知道弹性 IP 与负载均衡器不兼容?

如果我要查找负载均衡器 DNS 名称的 IP(例如 dualstack.awseb-BAMobile-ENV-xxxxxxxxx.eu-west-1.elb.amazonaws.com 解析为 200.200.200.200),该 IP 会是静态的吗?

非常感谢任何帮助/建议。

4

8 回答 8

19

负载均衡器的 IP 地址不是静态的。无论如何,您的传入负载均衡器 IP 不会用于传出连接。

您可以将弹性 IP 分配给负载均衡器后面的实际实例,然后将其用于传出请求。您可以获得5个免费的弹性ip,如果您需要,我相信您可以申请更多。

此外,如果使用 VPC 并且您的实例位于私有子网中,那么它们将只能通过您设置的 NAT 实例访问互联网,您当然可以为 NAT 实例分配弹性 IP

于 2012-12-07T17:08:02.210 回答
9

这是一个老问题,但现在情况发生了变化。

现在您可以创建一个网络 ELB 来获取一个具有静态 IP 的 LB。

来自https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html

  • 支持负载均衡器的静态 IP 地址。您还可以为负载均衡器启用的每个子网分配一个弹性 IP 地址。

https://aws.amazon.com/blogs/aws/new-network-load-balancer-effortless-scaling-to-millions-of-requests-per-second/

于 2017-10-17T08:18:47.000 回答
8

您可以将额外的ENI(弹性网络接口)附加到 VPC 中的实例。这样,ELB(弹性负载均衡器)将传入的 Internet 请求路由到 Web 服务器,并且额外的 ENI 将用于连接到您的第 3 方(或内部)请求(管理网络

您可以在VPC 文档中查看有关它的更多详细信息

于 2012-12-08T14:25:34.293 回答
6

实际上,我知道这样做的唯一方法是在 VPC 中设置您的实例并使用专用的 NAT 实例来路由所有出站流量。

以下是有关如何设置 NAT 实例的 AWS 文档的链接:

http://docs.amazonwebservices.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html

于 2012-12-07T17:01:40.303 回答
4

您可以将弹性 IP 附加到实例,但不能附加到 ELB(这是客户端看到的)。

您可以使用完整的反向代理第 7 层负载均衡器,例如HAProxy

或者像Loadbalancer.org或 Riverbed (Zeus)这样的商业实现

它们都在AWS Marketplace中:

于 2013-10-21T12:43:47.953 回答
3

您对第 3 方 API 的出站请求不会通过 ELB/ALB 发出。这是针对传入连接的。如果您需要一个入站静态 IP,您可能需要放弃负载均衡器(或者弄清楚如何实施 Anshu 将弹性 IP 附加到负载均衡器的建议,文档中的细节很简单)。更新:我发现了一些 ALB 使用静态地址的文档(我只是尝试将弹性 IP 绑定到一个以确保失败)。如果您正在谈论出站连接,请参见下文:

  • 如果您的服务器部署在公共子网中,您可以将弹性 IP 附加到该主机。出站通信将通过该地址发出。
  • 如果您的服务器部署在私有子网中,则会附加一个 NAT 网关。来自您的私有子网的所有出站流量都将通过该接口流出。
于 2018-07-06T23:47:21.797 回答
0

您可以使用 AWS 中已经提到的 loadbalancer.org 设备。它将取代 AWS NAT 实例并提供更强大的功能,包括第 4 层和第 7 层,以及 SSL 终止和 WAF。

最重要的是,您可以在 AWS 的 30 天试用中获得免费支持,以帮助您启动和运行。

是的,当我为 loadbalancer.org 工作时,我有偏见,但是我想说什么都没有冒险。

于 2017-05-29T22:40:01.180 回答
-1

您可以使用允许“ANAME”记录的 DNS 服务,例如 DNSMadeeasy。这些行为类似于 A 记录,但可以指向 FQDN 或 IP。因此,在这种情况下,您可以将其指向 ELB DNS。

戴夫

于 2014-04-11T09:11:14.733 回答