

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon EC2 網路介面的字首委派
<a name="ec2-prefix-eni"></a>

您可以自動或手動將私有 IPv4 或 IPv6 CIDR 範圍指派給網路介面。透過指派字首，您就可以擴展和簡化應用程式的管理，包括需要在執行個體上有多個 IP 地址的容器和聯網應用程式。如需 IPv4 和 IPv6 地址的詳細資訊，請參閱 [Amazon EC2 執行個體 IP 定址](using-instance-addressing.md)。

以下為可用的指派選項：
+ **自動指派** — AWS 選擇字首並將其指派給您的網路界面。如果網路介面的子網路具有 `prefix` 類型的子網路 CIDR 預留，我們會從子網路 CIDR 預留中選取字首。否則，我們會從子網路 CIDR 範圍中進行選取。
+ **手動指派** — 您可以指定 字首，並 AWS 驗證它尚未指派給其他資源，然後再指派給您的網路介面。

指派字首有下列優點：
+ 增加網路介面上的 IP 地址 – 當您使用字首時，會指派 IP 地址區塊，而非個別 IP 地址。這會增加網路介面的 IP 地址數量。
+ 簡化容器的 VPC 管理 – 在容器應用程式中，每個容器都需要唯一的 IP 地址。為執行個體指派字首可簡化 VPC 的管理，因為您可以啟動和終止容器，而無需為個別 IP 指派呼叫 Amazon EC2 API。

**Contents**
+ [基本概念](#ec2-prefix-basics)
+ [考量事項](#prefix-limit)
+ [管理字首](work-with-prefixes.md)
  + [在建立網路介面期間指派字首](work-with-prefixes.md#assign-auto-creation)
  + [為現有的網路介面指派字首](work-with-prefixes.md#assign-auto-existing)
  + [從網路介面移除字首](work-with-prefixes.md#unassign-prefix)

## 基本概念
<a name="ec2-prefix-basics"></a>
+ 您可以為新的或現有的網路介面指派字首。
+ 若要使用字首，請先為網路介面指派字首，然後將網路介面連接至執行個體，接著設定作業系統。
+ 當您選擇指定字首的選項時，該字首必須符合下列需求：
  + 您可以指定的 IPv4 字首是 `/28`。
  + 您可以指定的 IPv6 字首是 `/80`。
  + 字首位於網路介面的子網 CIDR 中，且不會與指派給子網中現有資源的其他字首或 IP 地址重疊。
+ 您可以將字首指派給主要或次要網路介面。
+ 您可以將彈性 IP 地址指派給具有指派字首的網路介面。
+ 您也可以將彈性 IP 地址指派給已指派字首的 IP 地址部分。
+ 我們會將執行個體的私有 DNS 主機名稱解析為主要私有 IPv4 位址。
+ 我們會使用以下格式，為網路介面指派每個私有 IPv4 地址，包括字首的私有 IPv4 地址：
  + `us-east-1` 區域

    ```
    ip-private-ipv4-address.ec2.internal
    ```
  + 所有其他區域

    ```
    ip-private-ipv4-address.region.compute.internal
    ```

## 考量事項
<a name="prefix-limit"></a>

使用字首時，請考慮下列事項：
+ 以 [Nitro 為基礎的執行個體](instance-types.md#instance-hypervisor-type)支援帶有字首的網路介面。
+ 網路介面的字首必須使用 IPv6 地址和私有 IPv4 地址。
+ 您可以指派給網路介面的 IP 地址數量上限會因執行個體類型而異。指派給網路介面的每個字首都計為一個 IP 地址。例如，`c5.large` 執行個體每個網路介面的 IPv4 地址數量上限為 `10` 個。此執行個體的每個網路介面都具備主要 IPv4 地址。如果網路介面沒有次要 IPv4 地址，則最多可以為網路介面指派 9 個字首。為網路介面多指派一個 IPv4 地址，可為網路介面指派的字首數量便少一個。如需詳細資訊，請參閱[每個網路介面的 IP 位址上限](AvailableIpPerENI.md)。
+ 來源/目標檢查中包含字首。
+ 您必须使用字首設定使用網路介面的作業系統。注意下列事項：
  + 有些 Amazon Linux AMIs 包含由 安裝的其他指令碼 AWS，稱為 `ec2-net-utils`。這些指令碼會選擇性自動化您網路介面的組態。這些指令碼僅供 Amazon Linux 使用。
  + 如果您不是使用 Amazon Linux，則可以使用容器網路介面 (CNI) 作為 Kubernetes 外掛程式，或 `dockerd` (如果您使用 Docker 來管理容器)。