簡體   English   中英

如何將 EC2 實例分配給子網內的固定 IP 地址?

[英]How do I assign an EC2 instance to a fixed IP address within a subnet?

我正在使用 CloudFormation 來定義子網和 EC2 實例。 我想為 EC2 實例分配一個特定的私有 IP 地址,並嘗試使用如下所示的資源定義來這樣做。

當我嘗試部署我的模板時,NetworkInterface 資源的創建失敗,並顯示消息“地址在子網的保留地址范圍內” 我試圖解決這個問題,但沒有取得進展。 如何使用可應用於我的 EC2 實例的私有 IP 地址范圍定義我的子網?

謝謝。

注意:整個模板包含其他資源,因此我嘗試將其縮減為重要組件,因此以下內容故意不完整。

"SharedVPC": {
  "Type": "AWS::EC2::VPC",
  "Properties": {
      "CidrBlock": "10.10.0.0/16",
      "EnableDnsHostnames": true,
      "EnableDnsSupport": true,
      "InstanceTenancy": "default"
  }
},

"SharedVPCPrivateSubnet1": {
  "Type": "AWS::EC2::Subnet",
  "Properties": {
      "AvailabilityZone": "eu-west-1a",
      "CidrBlock": "10.10.129.0/24",
      "MapPublicIpOnLaunch": false,
      "VpcId": {
          "Ref": "SharedVPC"
      }
  }
},

"DbServerEC2Instance": {
  "Type": "AWS::EC2::Instance",
  "Properties": {
    "KeyName": "WindowsEC2",
    "InstanceType": "t2.micro",
    "AvailabilityZone": "eu-west-1a",
    "ImageId": {
      "Ref": "DbServerEC2ImageAMI"
    },
    "IamInstanceProfile": {
      "Ref": "EC2InstanceProfile"
    },
    "NetworkInterfaces": [{
      "NetworkInterfaceId": {
        "Ref": "DbServerEC2InstanceNetworkInterface"
      },
      "DeviceIndex" : "0"
    }]
  }
},

"DbServerEC2InstanceNetworkInterface": {
  "Type": "AWS::EC2::NetworkInterface",
  "Properties": {
    "Description": "eth0",
    "PrivateIpAddresses": [{
        "PrivateIpAddress": "10.10.129.2",
        "Primary": "true"
      },
      {
        "PrivateIpAddress": "10.10.129.3",
        "Primary": "false"
      }
    ],
    "SourceDestCheck": "true",
    "SubnetId": {
      "Ref": "SharedVPCPrivateSubnet1"
    }
  }
}

AWS 保留子網的前 4 個 IP 地址和最后一個 IP。 子網內的這些范圍不可用。

AWS 文檔聲明如下:

每個子網 CIDR 塊中的前四個 IP 地址和最后一個 IP 地址不可供您使用,並且不能分配給實例。 例如,在 CIDR 塊為10.0.0.0/24的子網中,保留以下五個 IP 地址:

  • 10.0.0.0 :網絡地址。
  • 10.0.0.1 :AWS 為 VPC 路由器保留。
  • 10.0.0.2保留。 DNS 服務器的 IP 地址是 VPC 網絡范圍的基礎加 2。 對於具有多個 CIDR 塊的 VPC,DNS 服務器的 IP 地址位於主 CIDR 中。 我們還為 VPC 中的所有 CIDR 塊保留每個子網范圍的基礎加上兩個。 有關更多信息,請參閱 Amazon DNS 服務器。
  • 10.0.0.3 :由 AWS 保留以備將來使用。
  • 10.0.0.255 :網絡廣播地址。 我們不支持在 VPC 中廣播,因此我們保留此地址。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM