

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

# Amazon EC2 執行個體 IP 定址
<a name="using-instance-addressing"></a>

Amazon EC2 和 Amazon VPC 同時支援 IPv4 和 IPv6 定址通訊協定。Amazon VPC 預設會使用 IPv4 定址通訊協定；您無法停用此行為。當您建立 VPC 時，必須指定 IPv4 CIDR 區塊 (私有 IPv4 地址的範圍)。您可以選擇將 IPv6 CIDR 區塊指派給 VPC，並將 IPv6 地址從該區塊指派給子網中的執行個體。

當您啟動 EC2 執行個體時，可以指定 VPC 與子網路。執行個體會接收子網路 CIDR 範圍中的私有 IPv4 位址。可以選擇使用公有 IPv4 位址和 IPv6 位址來設定執行個體。如果不同 VPCs中的 EC2 執行個體使用公有 IP 地址通訊，流量會保留在 AWS 私有全域網路中，而不會周遊公有網際網路。

**Topics**
+ [私有 IPv4 地址](#concepts-private-addresses)
+ [公有 IPv4 地址](#concepts-public-addresses)
+ [公有 IPv4 地址最佳化](#concepts-public-ip-address-opt)
+ [IPv6 地址](#ipv6-addressing)
+ [多個 IP 地址](#multiple-ip-addresses)
+ [EC2 執行個體主機名稱](#amazon-dns)
+ [Link-local 地址](#link-local-addresses)
+ [管理 EC2 執行個體的 IPv4 地址](working-with-ip-addresses.md)
+ [管理 EC2 執行個體的 IPv6 地址](working-with-ipv6-addresses.md)
+ [EC2 執行個體的次要 IP 位址](instance-secondary-ip-addresses.md)
+ [為 Windows 執行個體設定次要私有 IPv4 地址](config-windows-multiple-ip.md)

## 私有 IPv4 地址
<a name="concepts-private-addresses"></a>

私有 IPv4 地址是無法透過網際網路存取的 IP 地址。您可以在相同 VPC 的執行個體之間使用私有 IPv4 地址進行通訊。如需私有 IPv4 地址標準和規格的詳細資訊，請參閱 [RFC 1918](http://www.faqs.org/rfcs/rfc1918.html)。我們會使用 DHCP 將私有 IPv4 地址配置給執行個體。

**注意**  
您可以建立具有可公開路由 CIDR 區塊的 VPC，而此 CIDR 區塊不在 RFC 1918 所指定的私有 IPv4 地址範圍內。不過，基於本文件的目的，我們會將私有 IPv4 地址 (或「私有 IP 地址」) 參照為 VPC 之 IPv4 CIDR 範圍內的 IP 地址。

VPC 子網可以是下列其中一個類型：
+ 僅限 IPv4 子網路：您只能在已獲指派 IPv4 地址的這些子網路中建立資源。
+ 僅限 IPv6 子網路：您只能在已獲指派 IPv6 地址的這些子網路中建立資源。
+ IPv4 和 IPv6 子網路：您可以在已獲指派 IPv4 和 IPv6 地址的這些子網路中建立資源。

當您將 EC2 執行個體啟動至僅限 IPv4 或雙堆疊 (IPv4 和 IPv6) 子網時，此執行個體會從子網的 IPv4 地址範圍接收主要私有 IP 地址。如需詳細資訊，請參閱「Amazon VPC 使用者指南」**中的 [IP 定址](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html)。如果您未在啟動執行個體時指定主要私有 IP 地址，我們會在子網的 IPv4 範圍中選取可用 IP 地址。每個執行個體皆會有獲指派之主要私有 IPv4 地址的預設網路介面 (index 0)。您也可以指定其他私有 IPv4 地址 (稱為*次要私有 IPv4 地址*)。與主要私有 IP 地址不同，輔助私有 IP 地址可從原執行個體重新指派至別的執行個體。如需詳細資訊，請參閱[多個 IP 地址](#multiple-ip-addresses)。

私有 IPv4 地址，無論是主要或次要地址，在執行個體停止和啟動時或休眠和啟動時都會維持與網路介面的關聯，而會在執行個體終止時予以釋出。

## 公有 IPv4 地址
<a name="concepts-public-addresses"></a>

公有 IP 地址是可從網際網路存取的 IPv4 地址。您可以使用公有地址，在執行個體與網際網路之間通訊。

當您在預設 VPC 中啟動執行個體時，預設會將公有 IP 地址指派給它。當您將執行個體啟動到非預設 VPC 時，子網的屬性可判定啟動到該子網的執行個體是否接收公有 IPv4 地址集區中的公有 IP 地址。根據預設，我們不會將公有 IP 地址指派給非預設子網中啟動的執行個體。

您可以控制您的執行個體是否接收公有 IP 地址，如下所示：
+ **修改子網路的公有 IP 尋址屬性。**如需詳細資訊，請參閱「Amazon VPC 使用者指南」**中的[修改子網路的公有 IPv4 定址屬性](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)。
+ **在啟動期間啟用或停用公有 IP 尋址功能。**這會覆寫子網路的公有 IP 尋址屬性。如需詳細資訊，請參閱[在啟動時指派公有 IPv4 位址](working-with-ip-addresses.md#public-ip-addresses)。
+ **啟動後從執行個體中取消指派公有 IP 位址。**如需詳細資訊，請參閱[管理網路介面的 IP 位址：](managing-network-interface-ip-addresses.md)。

公有 IP 地址會從 Amazon 的公有 IPv4 地址集區指派給您的執行個體，而且不會與 AWS 您的帳戶建立關聯。取消公有 IP 地址與您執行個體的關聯後，會將之釋出回公有 IPv4 地址集區，且您將無法重複使用之。

在下列情況下，我們會從執行個體中釋出公有 IP 位址，並指派新的公有 IP 位址：
+ 當執行個體停止、休眠或終止時，我們會釋出公有 IP 位址。當您啟動已停止或休眠的執行個體時，我們會指派新的公有 IP 位址。
+ 當您將彈性 IP 位址與執行個體建立關聯時，我們會釋出公有 IP 位址。當您取消彈性 IP 位址與執行個體的關聯時，我們會指派新的公有 IP 位址。
+ 如果我們釋出執行個體的公有 IP 位址，且它具有次要網路介面，則我們不會指派新的公有 IP 位址。
+ 如果我們釋出執行個體的公有 IP 位址，且它沒有與彈性 IP 位址相關聯的次要私有 IP 位址，則我們不會指派新的公有 IP 位址。

如果您需要可建立和取消與執行個體之關聯的持久性公有 IP 地址，請改用彈性 IP 地址。

如果您使用動態 DNS 將現有 DNS 名稱映射至新執行個體的公有 IP 地址，則最多可能需要 24 個小時，IP 地址才會傳播到整個網際網路。因此，已終止的執行個體還會持續收到請求，而新的執行個體可能尚未開始接收流量。若要解決此問題，請使用彈性 IP 地址。您可以配置自己的彈性 IP 地址，並建立地址與您執行個體的關聯。如需詳細資訊，請參閱[彈性 IP 位址](elastic-ip-addresses-eip.md)。

如果您使用 Amazon VPC IP Address Manager (IPAM)，您可以從 取得連續的公有 IPv4 地址區塊， AWS 並使用它將彈性 IP 地址配置給 AWS 資源。使用連續 IPv4 地址區塊可大幅降低安全存取控制清單的管理開銷，並簡化企業在 上擴展的 IP 位址配置和追蹤 AWS。如需詳細資訊，請參閱「Amazon VPC IPAM 使用者指南」**中[的從 IPAM 集區配置循序彈性 IP 位址](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-eip-pool.html)。

**考量事項**
+ AWS 收取所有公有 IPv4 地址的費用，包括與執行中執行個體相關聯的公有 IPv4 地址和彈性 IP 地址。如需詳細資訊，請參閱 [Amazon VPC 定價頁面](https://aws.amazon.com/vpc/pricing/)中的**公有 IPv4 地址**。
+ 透過公有 NAT IP 地址存取其他執行個體的執行個體，會根據其是否位在相同的區域，而收取地區或網際網路資料傳輸的費用。

## 公有 IPv4 地址最佳化
<a name="concepts-public-ip-address-opt"></a>

AWS 收取所有公有 IPv4 地址的費用，包括與執行中執行個體相關聯的公有 IPv4 地址和彈性 IP 地址。如需詳細資訊，請參閱 [Amazon VPC 定價頁面](https://aws.amazon.com/vpc/pricing/)中的**公有 IPv4 地址**。

下列清單包含您可以採取的動作，以最佳化您使用的公有 IPv4 地址數量：
+ 使用[彈性負載平衡器](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/load-balancer-getting-started.html)將流量載入 EC2 執行個體，並在[指派給執行個體的主要 ENI 上停用**自動指派公有 IP**](managing-network-interface-ip-addresses.md)。負載平衡器使用單一公有 IPv4 地址，因此可減少公有 IPv4 地址計數。您可能也想要合併現有的負載平衡器，以進一步減少公有 IPv4 地址計數。
+ 如果使用 NAT 閘道的唯一原因是 SSH 進入私有子網路中的 EC2 執行個體以進行維護或緊急狀況，請考慮改用 [EC2 Instance Connect Endpoint](connect-using-eice.md)。EC2 Instance Connect Endpoint 允許您連線至執行個體，而不需要執行個體擁有公有 IPv4 地址。
+ 如果您的 EC2 執行個體位於公有子網路中，並配置公有 IP 位址給它們，請考慮將執行個體移至私有子網路、移除公有 IP 位址，並使用[公有 NAT 閘道](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html)允許存取和存取您的 EC2 執行個體。使用 NAT 閘道有成本考量。使用此計算方法來判斷 NAT 閘道是否具有成本效益。您可以[建立 AWS 帳單成本和用量報告](https://aws.amazon.com/blogs/networking-and-content-delivery/identify-and-optimize-public-ipv4-address-usage-on-aws/)，以取得此計算`Number of public IPv4 addresses`所需的 。

  ```
  NAT gateway per hour + NAT gateway public IPs + NAT gateway transfer / Existing public IP cost
  ```

  其中：
  + `NAT gateway per hour = $0.045 * 730 hours in a month * Number of Availability Zones the NAT gateways are in`
  + `NAT gateway public IPs = $0.005 * 730 hours in a month * Number of IPs associated with your NAT gateways`
  + `NAT gateway transfer = $0.045 * Number of GBs that will go through the NAT gateway in a month`
  + `Existing public IP cost = $0.005 * 730 hours in a month * Number of public IPv4 addresses`

  如果總計小於 1，NAT 閘道會比公有 IPv4 地址便宜。
+ 使用 [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-services-overview.html) 私下連線至其他 AWS 帳戶託管的 AWS 服務或 服務，而不是使用公有 IPv4 地址和網際網路閘道。
+ [將您自己的 IP 位址範圍 (BYOIP) 帶到 AWS](ec2-byoip.md) ，並使用公有 IPv4 地址的範圍，而不是使用 Amazon 擁有的公有 IPv4 地址。
+ 關閉[為啟動到子網路中的執行個體會自動指派公用 IPv4 位址](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)。建立子網路時，VPCs 通常會預設為停用此選項，但您應該檢查現有的子網路，以確保其已停用。
+ 如果您有不需要公有 IPv4 地址的 EC2 執行個體，[請檢查連接至執行個體的網路介面是否已停用**自動指派公有 IP**](managing-network-interface-ip-addresses.md)。
+ 在 AWS Global Accelerator中為私有子網路中的 EC2 執行個體[設定加速器端點](https://docs.aws.amazon.com/global-accelerator/latest/dg/about-endpoints.html)，讓網際網路流量可以直接流向 VPCs中的端點，而不需要公有 IP 位址。您也可以將[自己的地址帶到 AWS Global Accelerator,](https://docs.aws.amazon.com/global-accelerator/latest/dg/using-byoip.html)並使用自己的 IPv4 地址做為加速器的靜態 IP 位址。

## IPv6 地址
<a name="ipv6-addressing"></a>

IPv6 地址是全域不重複的地址，可設定為維持在私有不公開的狀態，或可透過網際網路來連線。公有和私有 IPv6 定址都可在 中使用 AWS：
+ **私有 IPv6**： AWS 考慮私有 IPv6 會處理未公告且無法在網際網路上公告的 IPv6 AWS。
+ **公有 IPv6**： AWS 考慮公有 IPv6 處理在網際網路上公告的 IPv6 AWS。

如需公有和私有 IPv6 地址的詳細資訊，請參閱「Amazon VPC 使用者指南」**中的 [IPv6 地址](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html#vpc-ipv6-addresses)。

所有執行個體類型都支援 IPv6 地址，但下列項目除外：C1、M1、M2、M3 和 T1。

如果 IPv6 CIDR 區塊與 VPC 和子網相關聯，以及符合下列其中一項，則您的 EC2 執行個體會收到 IPv6 地址：
+ 在啟動期間，您的子網會設定為自動將 IPv6 地址指派給執行個體。如需詳細資訊，請參閱[修改子網路的公有 IP 定址屬性](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)。
+ 在啟動期間，您將 IPv6 地址指派給您的執行個體。
+ 在啟動之後，您將 IPv6 地址指派給執行個體的主要網路介面。
+ 在啟動之後，您將 IPv6 地址指派給相同子網中的網路介面，並將網路介面連接至執行個體。

當您的執行個體在啟動期間收到 IPv6 地址時，會建立該地址與執行個體之主要網路介面 (index 0) 的關聯。您可以透過下列方式，管理執行個體主要網路介面的 IPv6 地址：
+ 從網路介面指派和取消指派 IPv6 位址 您可指派給網路介面的 IPv6 地址數目以及您可連接至執行個體的網路介面數目，會根據執行個體類型而不同。如需詳細資訊，請參閱[每個網路介面的 IP 位址上限](AvailableIpPerENI.md)。
+ 啟用主要 IPv6 位址。主要 IPv6 位址可讓您避免中斷傳送至執行個體或 ENI 的流量。如需詳細資訊，請參閱 [為您的 EC2 執行個體建立網路介面](create-network-interface.md) 或 [管理網路介面的 IP 位址：](managing-network-interface-ip-addresses.md) 。

IPv6 地址會在您停止和啟動或休眠和啟動執行個體時持續保留，並在您終止執行個體時予以釋放。若 IPv6 地址已經指派給另一個網路介面，您無法重新指派該 IPv6 地址 (您必須先將之取消指派)。

您可以藉由控制您子網路的路由，或是使用安全群組和網路 ACL 規則，控制是否可透過執行個體的 IPv6 位址連線至執行個體。如需更多資訊，請參閱「Amazon VPC 使用者指南」**中的「[網路間流量隱私權](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html)」。

如需預留 IPv6 地址範圍的詳細資訊，請參閱 [IANA IPv6 Special-Purpose Address Registry](http://www.iana.org/assignments/iana-ipv6-special-registry/iana-ipv6-special-registry.xhtml) 和 [RFC4291](https://tools.ietf.org/html/rfc4291)。

## 多個 IP 地址
<a name="multiple-ip-addresses"></a>

您可以指定執行個體的多個私有 IPv4 和 IPv6 地址。您可指定給執行個體的網路介面數目以及私有 IPv4 和 IPv6 地址數目取決於執行個體類型。如需詳細資訊，請參閱[每個網路介面的 IP 位址上限](AvailableIpPerENI.md)。

**使用案例**
+ 在單一伺服器上使用多個 SSL 憑證，以及建立每個憑證與特定 IP 地址的關聯，以在單一伺服器上託管多個網站。
+ 操作網路應用裝置 (例如防火牆或負載平衡器)，其中的每個網路介面有多個 IP 地址。
+ 將輔助 IP 地址重新指派給待命執行個體，以在執行個體失敗時將內部流量重新導向至備用執行個體。

**多個 IP 地址運作方式**
+ 您可以將輔助私有 IPv4 地址指派給任何網路介面。
+ 您可以將多個 IPv6 地址指派給網路介面，而網路介面位於具有相關聯 IPv6 CIDR 區塊的子網中。
+ 您必須從網路介面之子網的 IPv4 CIDR 區塊範圍選擇輔助 IPv4 位址。
+ 您必須從網路介面之子網的 IPv6 CIDR 區塊範圍選擇 IPv6 地址。
+ 您可以將安全群組與網路介面 (而非個別的 IP 地址) 建立關聯。因此，您在網路介面中指定的每個 IP 地址會受其網路介面安全群組的規範。
+ 多個 IP 地址可以指派和取消指派至連接至執行中或已停止執行個體的網路介面。
+ 已指派給網路介面的輔助私有 IPv4 地址，可以經您的明確允許而重新指派給另一個網路介面。
+ 無法將 IPv6 地址重新指派給另一個網路介面；您必須先從現有網路介面取消指派 IPv6 地址。
+ 使用命令列工具或 API 將多個 IP 地址指派給網路介面時，如果無法指派其中一個 IP 地址，則整個操作會失敗。
+ 輔助網路介面與執行個體分離或連接至執行個體時，網路介面會保有主要私有 IPv4 地址、輔助私有 IPv4 地址、彈性 IP 地址和 IPv6 地址。
+ 雖然您無法從執行個體分離主要網路介面，但是您可以將主要網路介面的輔助私有 IPv4 地址重新指派給另一個網路介面。

如需詳細資訊，請參閱[EC2 執行個體的次要 IP 位址](instance-secondary-ip-addresses.md)。

## EC2 執行個體主機名稱
<a name="amazon-dns"></a>

當您建立 EC2 執行個體時， AWS 會建立該執行個體的主機名稱。如需主機名稱類型及其佈建方式的詳細資訊 AWS，請參閱 [EC2 執行個體主機名稱與網域](ec2-instance-naming.md)。Amazon 所提供的 DNS 伺服器可將 Amazon 提供的主機名稱解析為 IPv4 和 IPv6 地址。Amazon DNS 伺服器位於 VPC 網路範圍基礎加 2。如需詳細資訊，請參閱 *Amazon VPC 使用者指南*中的 [VPC 的 DNS 屬性](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html)。

## Link-local 地址
<a name="link-local-addresses"></a>

Link-local 地址是眾所周知不可路由的 IP 地址。Amazon EC2 使用來自 Link-local 地址空間的地址來提供只能從 EC2 執行個體存取的服務。這些服務不在執行個體上執行，而是在基礎主機上執行。當您存取這些服務的 Link-local 地址時，您正在與 Xen Hypervisor 或 Nitro 控制器進行通訊。

**Link-local 地址範圍**
+ IPv4 – 169.254.0.0/16 (169.254.0.0 至 169.254.255.255)
+ IPv6 – fe80::/10

**使用 link-local 地址存取的服務**
+ [執行個體中繼資料服務](instancedata-data-retrieval.md)
+ [Amazon Route 53 Resolver](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#AmazonDNS) (也稱為 Amazon DNS 伺服器)
+ [Amazon Time Sync Service](set-time.md)
+ [AWS KMS 伺服器](common-messages.md#activate-windows)

# 管理 EC2 執行個體的 IPv4 地址
<a name="working-with-ip-addresses"></a>

您可以在啟動執行個體時，將公有 IPv4 地址指派給該執行個體。您可以在主控台中透過 **Instances** (執行個體) 頁面或 **Network Interfaces** (網路介面) 頁面檢視您執行個體的 IPv4 地址。

**Topics**
+ [在啟動時指派公有 IPv4 位址](#public-ip-addresses)
+ [在啟動時指派私有 IPv4 位址](#assign-private-ipv4-address)
+ [檢視主要 IPv4 位址。](#view-instance-ipv4-addresses)
+ [使用執行個體中繼資料來檢視 IPv4 位址](#view-instance-ipv4-addresses-imds)

## 在啟動時指派公有 IPv4 位址
<a name="public-ip-addresses"></a>

每一個子網都會有一個屬性，以判定是否將公有 IP 地址指派至啟動到該子網的執行個體。非預設子網預設會將此屬性設定為 false，而預設子網會將此屬性設定為 true。當您啟動執行個體時，也可以使用公有 IPv4 定址功能控制是否將公有 IPv4 地址指派至執行個體；您可以覆寫子網之 IP 定址屬性的預設行為。公有 IPv4 地址會從 Amazon 的公有 IPv4 地址集區指派，並會指派給具有裝置索引 eth0 的網路介面。此功能取決於啟動執行個體時的特定條件。

**考量事項**
+ 您可以在啟動後透過[管理與網路介面相關聯的 IP 位址，從執行個體取消指派公有 IP 位址](managing-network-interface-ip-addresses.md)。如需公有 IPv4 地址的詳細資訊，請參閱[公有 IPv4 地址](using-instance-addressing.md#concepts-public-addresses)。
+ 如果指定多個網路介面，則無法自動指派公有 IP 位址。此外，如果您為 eth0 指定現有網路介面，則無法使用自動指派公有 IP 功能覆寫子網路設定。
+ 不過，不論您是否在啟動期間將公有 IP 位址指派給執行個體，在啟動執行個體之後，都可以建立彈性 IP 位址與執行個體的關聯。如需詳細資訊，請參閱[彈性 IP 位址](elastic-ip-addresses-eip.md)。您也可以修改子網的公有 IPv4 定址行為。如需詳細資訊，請參閱[修改子網路的公有 IPv4 定址屬性](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)。

------
#### [ Console ]

**若要在啟動時指派公有 IPv4 位址**  
遵循程序[啟動執行個體](ec2-launch-instance-wizard.md)，當您設定 [Network Settings](ec2-instance-launch-parameters.md#liw-network-settings) (網路設定) 時，選擇選項以 **Auto-assign Public IP** (自動指派公有 IP)。

------
#### [ AWS CLI ]

**若要在啟動時指派公有 IPv4 位址**  
請使用 `--associate-public-ip-address` 選項並搭配 [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) 命令。

```
--associate-public-ip-address
```

------
#### [ PowerShell ]

**若要在啟動時指派公有 IPv4 位址**  
使用 [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) cmdlet 搭配 `-AssociatePublicIp` 參數。

```
-AssociatePublicIp $true
```

------

## 在啟動時指派私有 IPv4 位址
<a name="assign-private-ipv4-address"></a>

您可以指定子網路 IPv4 位址範圍中的 IPv4 位址，或讓 Amazon EC2 為您選擇一個。此地址會指派給主要網路介面。

若要在啟動之後指派 IPv4 位址，請參閱 [將次要 IP 位址指派給執行個體](instance-secondary-ip-addresses.md#assign-secondary-ip-address)。

------
#### [ Console ]

**若要在啟動時指派私有 IPv4 位址**  
請遵循該程序來[啟動執行個體](ec2-launch-instance-wizard.md)。當您設定[網路設定](ec2-instance-launch-parameters.md#liw-network-settings)時，請展開**進階網路組態**，然後輸入**主要 IP** 的值。

------
#### [ AWS CLI ]

**若要在啟動時指派私有 IPv4 位址**  
請使用 `--private-ip-address` 選項並搭配 [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) 命令。

```
--private-ip-addresses 10.251.50.12
```

若要讓 Amazon EC2 選擇 IP 位址，請忽略此選項。

------
#### [ PowerShell ]

**若要在啟動時指派私有 IPv4 位址**  
使用 [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) cmdlet 搭配 `-PrivateIpAddress` 參數。

```
-PrivateIpAddress 10.251.50.12
```

若要讓 Amazon EC2 選擇 IP 位址，請忽略此參數。

------

## 檢視主要 IPv4 位址。
<a name="view-instance-ipv4-addresses"></a>

公有 IPv4 地址會顯示為主控台中網路介面的屬性，但會透過 NAT 映射至主要私有 IPv4 地址。因此，如果您檢查執行個體上網路介面的屬性 (例如，透過 `ifconfig` (Linux) 或 `ipconfig` (Windows))，則不會顯示公有 IPv4 地址。

------
#### [ Console ]

**若要檢視執行個體的 IPv4 位址**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇**執行個體**。

1. 選取執行個體。

1. 在**聯網**索引標籤中，尋找**公有 IPv4 位址**和**私有 IPv4 位址**。

1. (選用) **聯網**索引標籤也包含執行個體的網路介面和彈性 IP 位址。

------
#### [ AWS CLI ]

**若要檢視執行個體的主要 IPv4 位址**  
使用 [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) 命令。

```
aws ec2 describe-instances \
    --instance-ids i-1234567890abcdef0 \
    --query "Reservations[].Instances[].PrivateIpAddress" \
    --output text
```

以下為範例輸出。

```
10.251.50.12
```

------
#### [ PowerShell ]

**若要檢視執行個體的主要 IPv4 位址**  
使用 [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html) cmdlet。

```
(Get-EC2Instance `
    -InstanceId i-1234567890abcdef0).Instances.PrivateIpAddress
```

以下為範例輸出。

```
10.251.50.12
```

------

## 使用執行個體中繼資料來檢視 IPv4 位址
<a name="view-instance-ipv4-addresses-imds"></a>

可以透過擷取執行個體中繼資料來取得執行個體的 IPv4 位址。如需詳細資訊，請參閱[使用執行個體中繼資料管理您的 EC2 執行個體](ec2-instance-metadata.md)。

**若要使用執行個體中繼資料來檢視 IPv4 位址**

1. 連線到您的執行個體。如需詳細資訊，請參閱[連線至 EC2 執行個體](connect.md)。

1. 請執行下列其中一個命令：

------
#### [ IMDSv2 ]

**Linux**  
透過 Linux 執行個體執行下面的命令。

   ```
   TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
   && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/local-ipv4
   ```

**Windows**  
透過 Windows 執行個體中執行以下命令。

   ```
   [string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} `
       -Method PUT -Uri http://169.254.169.254/latest/api/token
   ```

   ```
   Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} `
       -Method GET -Uri http://169.254.169.254/latest/meta-data/local-ipv4
   ```

------
#### [ IMDSv1 ]

**Linux**  
透過 Linux 執行個體執行下面的命令。

   ```
   curl http://169.254.169.254/latest/meta-data/local-ipv4
   ```

**Windows**  
透過 Windows 執行個體中執行以下命令。

   ```
   Invoke-RestMethod http://169.254.169.254/latest/meta-data/local-ipv4
   ```

------

1. 使用下列其中一個命令來存取公有 IP 位址。如果有與執行個體相關聯的彈性 IP 位址，命令會傳回彈性 IP 位址。

------
#### [ IMDSv2 ]

**Linux**  
透過 Linux 執行個體執行下面的命令。

   ```
   [ec2-user ~]$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
   && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/public-ipv4
   ```

**Windows**  
透過 Windows 執行個體中執行以下命令。

   ```
   [string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} `
       -Method PUT -Uri http://169.254.169.254/latest/api/token
   ```

   ```
   Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} `
       -Method GET -Uri http://169.254.169.254/latest/meta-data/public-ipv4
   ```

------
#### [ IMDSv1 ]

**Linux**  
透過 Linux 執行個體執行下面的命令。

   ```
   curl http://169.254.169.254/latest/meta-data/public-ipv4
   ```

**Windows**  
透過 Windows 執行個體中執行以下命令。

   ```
   Invoke-RestMethod http://169.254.169.254/latest/meta-data/public-ipv4
   ```

------

# 管理 EC2 執行個體的 IPv6 地址
<a name="working-with-ipv6-addresses"></a>

如果已建立 VPC 和子網與 IPv6 CIDR 區塊的關聯，您可以在啟動期間或之後將 IPv6 地址指派給執行個體。您可以在主控台中透過**執行個體**頁面或**網路介面**頁面存取執行個體的 IPv6 位址。下列任務會設定執行個體的 IP 位址。若要改為設定網路介面的 IP 位址，請參閱 [管理網路介面的 IP 位址：](managing-network-interface-ip-addresses.md)。

**Topics**
+ [將 IPv6 地址指派給執行個體](#assign-ipv6-address)
+ [檢視執行個體的 IPv6 位址](#view-ipv6-addresses)
+ [使用執行個體中繼資料來檢視 IPv6 位址](#view-ipv6-addresses-imds)
+ [從執行個體取消指派 IPv6 地址](#unassign-ipv6-address)

## 將 IPv6 地址指派給執行個體
<a name="assign-ipv6-address"></a>

您可以指定子網路 IPv6 位址範圍中的 IPv6 位址，或讓 Amazon EC2 為您選擇一個。此地址會指派給主要網路介面。請注意，下列執行個體類型不支援 IPv6 地址：C1、M1、M2、M3 和 T1。

------
#### [ Console ]

**若要在啟動時指派 IPv6 位址**  
請遵循該程序來[啟動執行個體](ec2-launch-instance-wizard.md)。當您設定[網路設定](ec2-instance-launch-parameters.md#liw-network-settings)時，請選擇**自動指派 IPv6 IP **的選項。如果沒有看到此選項，則選取的子網路沒有相關聯的 IPv6 CIDR 區塊。

**在啟動之後指派 IPv6 地址**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇 **Instances** (執行個體)。

1. 選取執行個體，然後選取 **Actions (動作)**、**Networking (聯網)**、**Manage IP addresses (管理 IP 地址)**。

1. 展開網路介面。在 **IPv6 addresses (IPv6 地址)** 下選擇 **Assign new IP address (指派新 IP 地址)**。

1. 輸入子網路範圍中的 IPv6 位址，或將欄位保留空白，讓 Amazon EC2 為您選擇 IPv6 位址。如果沒有看到此選項，則執行個體子網路沒有相關聯的 IPv6 CIDR 區塊。

1. 選擇**儲存**。

------
#### [ AWS CLI ]

**若要在啟動時指派 IPv6 位址**  
請使用 `--ipv6-addresses` 選項並搭配 [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) 命令。下列範例會指派兩個 IPv6 位址。

```
--ipv6-addresses Ipv6Address=2001:db8::1234:5678:1.2.3.4 Ipv6Address=2001:db8::1234:5678:5.6.7.8
```

若要讓 Amazon EC2 選擇 IPv6 位址，請改用 `--ipv6-address-count` 選項。下列範例會指派兩個 IPv6 位址。

```
--ipv6-address-count 2
```

**在啟動之後指派 IPv6 地址**  
使用 [assign-ipv6-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/assign-ipv6-addresses.html) 命令。下列範例會指派兩個 IPv6 位址。

```
aws ec2 assign-ipv6-addresses \ 
    --network-interface-id eni-1234567890abcdef0 \
    --ipv6-addresses 2001:db8::1234:5678:1.2.3.4 2001:db8::1234:5678:5.6.7.8
```

若要讓 Amazon EC2 選擇 IPv6 位址，請改用 `--ipv6-address-count` 選項。下列範例會指派兩個 IPv6 位址。

```
aws ec2 assign-ipv6-addresses \
    --network-interface-id eni-1234567890abcdef0 \
    --ipv6-address-count 2
```

------
#### [ PowerShell ]

**若要在啟動時指派 IPv6 位址**  
使用 [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) cmdlet 搭配 `-Ipv6Address` 參數。下列範例會指派兩個 IPv6 位址。

```
-Ipv6Address $ipv6addr1,$ipv6addr2
```

定義 IPv6 位址，如下所示。

```
$ipv6addr1 = New-Object Amazon.EC2.Model.InstanceIpv6Address
$ipv6addr1.Ipv6Address = "2001:db8::1234:5678:1.2.3.4"
$ipv6addr2 = New-Object Amazon.EC2.Model.InstanceIpv6Address
$ipv6addr2.Ipv6Address = "2001:db8::1234:5678:5.6.7.8"
```

若要讓 Amazon EC2 選擇 IPv6 位址，請改用 `-Ipv6AddressCount` 參數。下列範例會指派兩個 IPv6 位址。

```
-Ipv6AddressCount 2
```

**在啟動之後指派 IPv6 地址**  
使用 [Register-EC2Ipv6AddressList](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2Ipv6AddressList.html) cmdlet。下列範例會指派兩個 IPv6 位址。

```
Register-EC2Ipv6AddressList `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -Ipv6Address "2001:db8::1234:5678:1.2.3.4","2001:db8::1234:5678:5.6.7.8"
```

若要讓 Amazon EC2 選擇 IPv6 位址，請改用 `-Ipv6AddressCount` 參數。下列範例會指派兩個 IPv6 位址。

```
Register-EC2Ipv6AddressList `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -Ipv6AddressCount 2
```

------

## 檢視執行個體的 IPv6 位址
<a name="view-ipv6-addresses"></a>

您可檢視執行個體的 IPv6 位址。

------
#### [ Console ]

**若要檢視執行個體的 IPv6 位址**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇**執行個體**。

1. 選取實例。

1. 在 **Networking (聯網)** 標籤上，找出 **IPv6 addresses (IPv6 地址)**。

------
#### [ AWS CLI ]

**若要檢視執行個體的 IPv6 位址**  
使用 [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) 命令。

```
aws ec2 describe-instances \
    --instance-ids i-1234567890abcdef0 \
    --query "Reservations[*].Instances[].Ipv6Address" \
    --output text
```

以下為範例輸出。

```
2001:db8::1234:5678:1.2.3.4
```

------
#### [ PowerShell ]

**若要檢視執行個體的 IPv6 位址**  
使用 [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html) cmdlet。

```
(Get-EC2Instance `
    -InstanceId i-1234567890abcdef0).Instances.Ipv6Address
```

以下為範例輸出。

```
2001:db8::1234:5678:1.2.3.4
```

------

## 使用執行個體中繼資料來檢視 IPv6 位址
<a name="view-ipv6-addresses-imds"></a>

連線至執行個體後，可以使用執行個體中繼資料來擷取 IPv6 位址。首先，必須從 `http://169.254.169.254/latest/meta-data/network/interfaces/macs/` 中取得執行個體的 MAC 位址。

------
#### [ IMDSv2 ]

**Linux**  
透過 Linux 執行個體執行下面的命令。

```
TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
&& curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

**Windows**  
透過 Windows 執行個體執行下面的 cmdlet。

```
[string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} `
    -Method PUT -Uri http://169.254.169.254/latest/api/token
```

```
Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} `
    -Method GET -Uri http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

------
#### [ IMDSv1 ]

**Linux**  
透過 Linux 執行個體執行下面的命令。

```
curl http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

**Windows**  
透過 Windows 執行個體中執行下列 cmdlet。

```
Invoke-RestMethod -Uri http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

------

## 從執行個體取消指派 IPv6 地址
<a name="unassign-ipv6-address"></a>

您可以隨時從執行個體取消指派 IPv6 地址。

------
#### [ Console ]

**從執行個體取消指派 IPv6 地址**

1. 在 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇 **Instances** (執行個體)。

1. 選取執行個體，然後選取 **Actions (動作)**、**Networking (聯網)**、**Manage IP addresses (管理 IP 地址)**。

1. 展開網路介面。在 **IPv6 addresses (IPv6 地址)** 下，選擇 IPv6 地址旁的 **Unassign (取消指派)**。

1. 選擇**儲存**。

------
#### [ AWS CLI ]

**從執行個體取消指派 IPv6 地址**  
使用 [unassign-ipv6-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/unassign-ipv6-addresses.html) 命令。

```
aws ec2 unassign-ipv6-addresses \ 
    --network-interface-id eni-1234567890abcdef0 \
    --ipv6-addresses 2001:db8::1234:5678:1.2.3.4
```

------
#### [ PowerShell ]

**從執行個體取消指派 IPv6 地址**  
使用 [Unregister-EC2Ipv6AddressList](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2Ipv6AddressList.html) cmdlet。

```
Unregister-EC2Ipv6AddressList `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -Ipv6Address 2001:db8::1234:5678:1.2.3.4
```

------

# EC2 執行個體的次要 IP 位址
<a name="instance-secondary-ip-addresses"></a>

指派給網路介面的第一個 IPv4 位址稱為主要 IP 位址。次要 IP 位址是指派給網路介面的其他 IPv4 位址。如需詳細資訊，請參閱[多個 IP 地址](using-instance-addressing.md#multiple-ip-addresses)。

也可以向執行個體指派多個 IPv6 位址。如需詳細資訊，請參閱[管理 EC2 執行個體的 IPv6 地址](working-with-ipv6-addresses.md)。

**Topics**
+ [將次要 IP 位址指派給執行個體](#assign-secondary-ip-address)
+ [設定作業系統以使用次要 IP 位址](#StepTwoConfigOS)
+ [從執行個體中取消指派次要 IP 位址](#unassign-secondary-ip-address)

## 將次要 IP 位址指派給執行個體
<a name="assign-secondary-ip-address"></a>

可以在啟動執行個體時或在執行個體執行之後，將次要 IP 位址指派給執行個體的網路介面。

------
#### [ Console ]

**若要在啟動時指派次要 IP 位址**

1. 請遵循該程序來[啟動執行個體](ec2-launch-instance-wizard.md)。配置[網路設定](ec2-instance-launch-parameters.md#liw-network-settings)時，請展開**進階網路組態**。

1. 針對**次要 IP**，選擇**自動指派**，然後輸入要為 Amazon EC2 指派的 IP 位址數量。或者，選擇**手動指派**並輸入 IPv4 位址。

1. 完成其餘步驟以啟動執行個體。

**若要在啟動後指派次要 IP 位址**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇 **Instances** (執行個體)。

1. 選取執行個體，然後選取 **Actions (動作)**、**Networking (聯網)**、**Manage IP addresses (管理 IP 地址)**。

1. 展開網路介面。

1. 若要新增 IPv4 位址，請在 **IPv4 位址**下，選擇**指派新的 IP 位址**。輸入子網路範圍中的 IPv4 位址，或將欄位保留空白，讓 Amazon EC2 為您選擇一個。

1. 選擇**儲存**。

------
#### [ AWS CLI ]

**若要在啟動時指派次要 IP 位址**  
請使用 `--secondary-private-ip-addresses` 選項並搭配 [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) 命令。

```
--secondary-private-ip-addresses 10.251.50.12
```

若要讓 Amazon EC2 選擇 IP 位址，請改用 `--secondary-private-ip-address-count` 選項。下列範例會指派一個次要 IP 位址。

```
--secondary-private-ip-address-count 1
```

或者，可以建立網路介面。如需詳細資訊，請參閱[為您的 EC2 執行個體建立網路介面](create-network-interface.md)。

**若要在啟動後指派次要 IP 位址**  
使用具有 `--private-ip-addresses` 選項的 [assign-private-ip-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/assign-private-ip-addresses.html) 命令。

```
aws ec2 assign-private-ip-addresses \
    --network-interface-ids eni-1234567890abcdef0 \
    --private-ip-addresses 10.251.50.12
```

若要讓 Amazon EC2 選擇 IPv4 位址，請改用 `--secondary-private-ip-address-count` 參數。下列範例會指派一個 IPv4 位址。

```
aws ec2 assign-private-ip-addresses \
    --network-interface-ids eni-1234567890abcdef0 \
    --secondary-private-ip-address-count 1
```

------
#### [ PowerShell ]

**若要在啟動時指派次要 IP 位址**  
您必須建立網路介面。如需詳細資訊，請參閱[為您的 EC2 執行個體建立網路介面](create-network-interface.md)。

**若要在啟動後指派次要 IP 位址**  
使用具有 `-PrivateIpAddress` 參數的 [Register-EC2PrivateIpAddress](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2PrivateIpAddress.html) cmdlet。

```
Register-EC2PrivateIpAddress `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -PrivateIpAddress 10.251.50.12
```

若要讓 Amazon EC2 選擇 IPv4 位址，請改用 `-SecondaryPrivateIpAddressCount` 參數。下列範例會指派一個 IPv4 位址。

```
Register-EC2PrivateIpAddress `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -SecondaryPrivateIpAddressCount 1
```

------

## 設定作業系統以使用次要 IP 位址
<a name="StepTwoConfigOS"></a>

在將次要 IP 位址指派給執行個體之後，必須在執行個體上設定作業系統，以識別其他私有 IPv4 位址。

**Linux 執行個體**
+ 如果您使用的是 Amazon Linux，ec2-net-utils 套件可以為您處理此步驟。套件會設定您在執行個體執行時所連接的額外網路介面、在 DHCP 租賃續約期間重新整理輔助 IPv4 地址，以及更新相關路由規則。根據您的系統，可以使用下列其中一個命令來立即重新整理介面清單：`sudo systemctl restart systemd-networkd` (AL2023) 或 `sudo service network restart` (Amazon Linux 2)。可以使用下列命令來檢視最新清單：`ip addr li`。如果您需要手動控制網路組態，則可以移除 ec2-net-utils 套件。如需更多資訊，請查看[使用 ec2-net-utils 設定您的網路介面](https://docs.aws.amazon.com/linux/al2/ug/ec2-net-utils.html)。
+ 如果您使用的是其他 Linux 發行版本，請參閱 Linux 發行版本的文件。搜尋有關設定額外網路介面和輔助 IPv4 地址的資訊。如果執行個體在相同的子網上有兩個或以上的介面，請搜尋有關使用路由規則暫時處理非對稱路由的資訊。

**Windows 執行個體**  
如需詳細資訊，請參閱[為 Windows 執行個體設定次要私有 IPv4 地址](config-windows-multiple-ip.md)。

## 從執行個體中取消指派次要 IP 位址
<a name="unassign-secondary-ip-address"></a>

如果不再需要次要 IP 位址，您可以從執行個體或網路介面中取消指派。從網路介面取消指派輔助私有 IPv4 地址時，也會取消關聯彈性 IP 地址 (若其存在)。

------
#### [ Console ]

**從執行個體取消指派輔助私有 IPv4 地址**

1. 在 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇 **Instances** (執行個體)。

1. 選取執行個體，然後選取**動作**、**聯網**、**管理 IP 地址**。

1. 展開網路介面。在 **IPv4 地址**下，為要取消指派的 IPv4 地址選擇**取消指派**。

1. 選擇**儲存**。

------
#### [ AWS CLI ]

**若要取消指派次要私有 IP 位址**  
使用 [unassign-private-ip-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/unassign-private-ip-addresses.html) 命令。

```
aws ec2 unassign-private-ip-addresses \
    --network-interface eni-1234567890abcdef0\
    --private-ip-addresses 10.251.50.12
```

------
#### [ PowerShell ]

**若要取消指派次要私有 IP 位址**  
使用 [Unregister-EC2PrivateIpAddress](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2PrivateIpAddress.html) cmdlet。

```
Unregister-EC2PrivateIpAddress `
    -NetworkInterface eni-1234567890abcdef0 `
    -PrivateIpAddress 10.251.50.12
```

------

# 為 Windows 執行個體設定次要私有 IPv4 地址
<a name="config-windows-multiple-ip"></a>

您可以指定執行個體的多個私有 IPv4 地址。將輔助私有 IPv4 地址指派給執行個體之後，必須設定執行個體的作業系統，以辨識輔助私有 IPv4 地址。

**注意**  
這些說明是以 Windows Server 2022 為基礎。根據 Windows 執行個體的作業系統，這些步驟的實作可能會不同。

**Topics**
+ [先決條件](#prereq-steps)
+ [步驟 1：在您的執行個體上設定靜態 IP 定址](#step1)
+ [步驟 2：設定您的執行個體的次要私有 IP 地址](#step2)
+ [步驟 3：設定應用程式使用次要私有 IP 地址](#step3)

## 先決條件
<a name="prereq-steps"></a>
+ 將次要私有 IPv4 地址指派給執行個體的網路介面。您可以在啟動執行個體時或在執行個體執行之後，指派次要私有 IPv4 地址。如需詳細資訊，請參閱[將次要 IP 位址指派給執行個體](instance-secondary-ip-addresses.md#assign-secondary-ip-address)。

## 步驟 1：在您的執行個體上設定靜態 IP 定址
<a name="step1"></a>

若要讓 Windows 執行個體使用多個 IP 地址，您必須設定執行個體使用靜態 IP 定址，而不是 DHCP 伺服器。

**重要**  
當您在執行個體上設定靜態 IP 定址時，IP 地址必須完全符合主控台、CLI 或 API 中所顯示的 IP 位址。如果您不正確地輸入這些 IP 地址，執行個體可能會變成無法存取。

**在 Windows 執行個體上設定靜態 IP 定址**

1. 連線到您的執行個體。

1. 執行下列步驟，尋找執行個體的 IP 地址、子網遮罩和預設閘道地址：

   1. 在 PowerShell 中執行下列命令：

     ```
     ipconfig /all
     ```

     檢閱輸出並記下網路介面的 **IPv4 地址**、**子網路遮罩**、**預設閘道**和 **DNS 伺服器**值。輸出應類似以下範例：

     ```
     ...
     
     Ethernet adapter Ethernet 4:
     
        Connection-specific DNS Suffix  . : us-west-2.compute.internal
        Description . . . . . . . . . . . : Amazon Elastic Network Adapter #2
        Physical Address. . . . . . . . . : 02-9C-3B-FC-8E-67
        DHCP Enabled. . . . . . . . . . . : Yes
        Autoconfiguration Enabled . . . . : Yes
        Link-local IPv6 Address . . . . . : fe80::f4d1:a773:5afa:cd1%7(Preferred)
        IPv4 Address. . . . . . . . . . . : 10.200.0.128(Preferred)
        Subnet Mask . . . . . . . . . . . : 255.255.255.0
        Lease Obtained. . . . . . . . . . : Monday, April 8, 2024 12:19:29 PM
        Lease Expires . . . . . . . . . . : Monday, April 8, 2024 4:49:30 PM
        Default Gateway . . . . . . . . . : 10.200.0.1
        DHCP Server . . . . . . . . . . . : 10.200.0.1
        DHCPv6 IAID . . . . . . . . . . . : 151166011
        DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-2D-67-AC-FC-12-34-9A-BE-A5-E7
        DNS Servers . . . . . . . . . . . : 10.200.0.2
        NetBIOS over Tcpip. . . . . . . . : Enabled
     ```

1. 在 PowerShell 執行以下命令開啟**網路和共用中心**：

   ```
   & $env:SystemRoot\system32\control.exe ncpa.cpl
   ```

1. 開啟網路介面 (區域連線或乙太網路) 的內容 (右鍵) 選單，然後選擇**內容**。

1. 選擇**網際網路通訊協定第 4 版 (TCP/IPv4)**、**內容**。

1. 在**網際網路通訊協定第 4 版 (TCP/IPv4) - 內容**對話方塊中，選擇**使用下列 IP 地址**，並輸入下列值，然後選擇**確定**。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/config-windows-multiple-ip.html)
**重要**  
如果您將 IP 地址設定為目前 IP 地址以外的任何值，則會中斷與執行個體的連線。  
![\[IP 地址\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/images/windows-ip-static.png)

您將會中斷與 Windows 執行個體的 RDP 連線數秒，而執行個體會從使用 DHCP 轉換成靜態定址。執行個體會保留先前的 IP 地址資訊，但現在此資訊是靜態的，且並非透過 DHCP 管理。

## 步驟 2：設定您的執行個體的次要私有 IP 地址
<a name="step2"></a>

在您設定 Windows 執行個體的靜態 IP 定址之後，即可準備第二個私有 IP 地址。

**設定次要 IP 地址**

1. 在 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選取 **Instances (執行個體)**，然後選取您的執行個體。

1. 在 **Networking (聯網)** 標籤上，記下輔助 IP 地址。

1. 連線到您的執行個體。

1. 在 Windows 執行個體上，選擇**開始**、**控制台**。

1. 選擇**網路和網際網路**、**網路和共用中心**。

1. 選取網路介面 (區域連線或乙太網路)，然後選取**內容**。

1. 在**區域連線內容**頁面上，選擇**網際網路通訊協定第 4 版 (TCP/IPv4)**、**內容**、**進階**。

1. 選擇 **Add (新增)**。

1. 在 **TCP/IP 地址**對話方塊中，針對 **IP 地址**輸入輔助私有 IP 地址。針對**子網遮罩**，輸入您在[步驟 1：在您的執行個體上設定靜態 IP 定址](#step1)中於主要私有 IP 地址輸入的相同子網遮罩，然後選擇**新增**。  
![\[TCP/IP 地址對話方塊\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/images/windows-ip-add.png)

1. 確認 IP 地址設定，然後選擇**確定**。  
![\[IP 設定標籤\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/images/windows-ip-advanced-tcpip.png)

1. 選擇**確定**、**關閉**。

1. 若要確認次要 IP 位址已新增至作業系統，請在 PowerShell 執行 `ipconfig /all` 命令。輸出應類似以下內容：

   ```
   Ethernet adapter Ethernet 4:
   
      Connection-specific DNS Suffix  . :
      Description . . . . . . . . . . . : Amazon Elastic Network Adapter #2
      Physical Address. . . . . . . . . : 02-9C-3B-FC-8E-67
      DHCP Enabled. . . . . . . . . . . : No
      Autoconfiguration Enabled . . . . : Yes
      Link-local IPv6 Address . . . . . : fe80::f4d1:a773:5afa:cd1%7(Preferred)
      IPv4 Address. . . . . . . . . . . : 10.200.0.128(Preferred)
      Subnet Mask . . . . . . . . . . . : 255.255.255.0
      IPv4 Address. . . . . . . . . . . : 10.200.0.129(Preferred)
      Subnet Mask . . . . . . . . . . . : 255.255.255.0
      Default Gateway . . . . . . . . . : 10.200.0.1
      DHCPv6 IAID . . . . . . . . . . . : 151166011
      DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-2D-67-AC-FC-12-34-9A-BE-A5-E7
      DNS Servers . . . . . . . . . . . : 10.200.0.2
      NetBIOS over Tcpip. . . . . . . . : Enabled
   ```

## 步驟 3：設定應用程式使用次要私有 IP 地址
<a name="step3"></a>

您可以設定任何應用程式使用輔助私有 IP 地址。例如，如果您的執行個體在 IIS 上執行網站，即可設定 IIS 使用輔助私有 IP 地址。

**設定 IIS 使用輔助私有 IP 地址**

1. 連線到您的執行個體。

1. 開啟 Internet Information Services (IIS) 管理員。

1. 在**連線**窗格中，展開**網站**。

1. 開啟您網站的內容 (右鍵) 選單，然後選擇**編輯繫結**。

1. 在**網站繫結**對話方塊中，針對**類型**，選擇 **http**、**編輯**。

1. 在**編輯網站繫結**對話方塊中，針對 **IP 地址**，選取輔助私有 IP 地址。(根據預設，每個網站都接受來自所有 IP 地址的 HTTP 請求)。  
![\[IP 地址\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/images/windows-ip-iis-site-binding.png)

1. 選擇**確定**、**關閉**。