代码之家  ›  专栏  ›  技术社区  ›  snetch

如何指定具有常规公共IP地址而不是EIP的网络接口?

  •  1
  • snetch  · 技术社区  · 8 年前

    我有一个Cloudformation模板,其中包括 AWS::EC2::Instance 一 AWS::EC2::NetworkInterface ,以及 AWS::EC2::EIP .它们都相互连接,网络接口抓取EIP,然后连接到实例,一切正常。

    现在,我想更改它,这样模板就不会创建EIP,而只是创建一个常规的随机公共IP地址。我可以通过删除EIP资源并指定 AssociatePublicIpAddress 网络接口中的选项。问题是,该选项仅对嵌入式系统有效 NetworkInterface 属性类型,而不是 AWS::EC2::网络接口 资源网络接口用于其他地方(在 AWS::EC2::Route 资源)作为引用,所以我不能将其转换为嵌入式类型。我能做什么?

    EC2 instance docs

    NetworkInterface embedded property

    NetworkInterface resource

    1 回复  |  直到 8 年前
        1
  •  0
  •   Michael - sqlbot    8 年前

    弹性网络接口(ENI)可以设置为从(非EIP)池中获取公共IP地址,但这实际上只有在ENI已连接到实例且实例正在启动时才会发生。该地址在实例启动之前不会获得,并在实例停止时释放。如果实例再次启动,ENI将从池中获取不同的公共广播。每次实例停止和启动时,该过程都会重复。

    池中带有公共IP的ENI不适用于此用例。

    如果您需要的EIP超过默认限制所允许的数量,您可以 create a free support request 并描述你的用例。连接到任何正在运行的实例的EIP不收费,只要它是连接到该实例的唯一EIP。