

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

# 使用 Amazon ECS 雙堆疊端點
<a name="dual-stack-endpoint"></a>

Amazon ECS 雙堆疊端點支援透過網際網路通訊協定第 4 版 (IPv4) 與第 6 版 (IPv6) 向 Amazon ECS 發出請求。如需所有 Amazon ECS 端點的清單，請參閱 AWS 一般參考中的 [Amazon ECS endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/ecs-service.html)。

使用 REST API 等同於使用端點名稱 (URI) 直接存取 Amazon ECS 端點。Amazon ECS 僅支援區域雙堆疊端點名稱，亦即指定的名稱必須包含區域。

雙堆疊端點名稱使用以下命名慣例：`ecs.region.api.aws`。

使用 AWS Command Line Interface (AWS CLI) 和 AWS SDKs時，您可以使用參數或旗標來變更為雙堆疊端點。您也可以直接指定雙堆疊端點來覆寫組態檔中的 Amazon ECS 端點。

下列各節說明如何使用來自 AWS CLI、 AWS SDKs 和 REST API 的雙堆疊端點。

**Topics**
+ [從 使用雙堆疊端點 AWS CLI](#dual-stack-endpoints-cli)
+ [從 AWS SDKs 使用雙堆疊端點](#dual-stack-endpoints-sdks)
+ [從 REST API 使用雙堆疊端點](#dual-stack-endpoints-examples-rest-api)

## 從 使用雙堆疊端點 AWS CLI
<a name="dual-stack-endpoints-cli"></a>

本節提供用於向雙堆疊端點提出請求的 AWS CLI 命令範例。如需安裝 AWS CLI 或更新至最新版本的詳細資訊，請參閱《 第 2 版使用者指南》中的[安裝或更新至最新版本 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)的 。 *AWS Command Line Interface *

若要使用雙堆疊端點，您可以將 `config` `use_dualstack_endpoint``true`檔案中的組態值設定為 AWS CLI ，讓 將`ecs` AWS CLI 命令提出的所有 Amazon ECS 請求導向指定區域的雙堆疊端點。您可以在 `config` 檔案或命令中使用 `--region` 選項指定區域。如需 組態檔案的詳細資訊 AWS CLI，請參閱[《 第 2 版使用者指南》中的組態和登入資料檔案設定 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)。 *AWS Command Line Interface *

如果您想要針對特定 AWS CLI 命令使用雙堆疊端點，您可以使用下列其中一種方法：
+ 您可以將任何 `ecs` 命令的 `--endpoint-url` 參數設定為 `https://ecs.aws-region.api.aws` 或 `http://ecs.aws-region.api.aws`，以在每個命令中使用雙堆疊端點。

  下列範例命令會列出所有可用的叢集，且該請求將使用雙堆疊端點。

  ```
  $ aws ecs list-clusters --endpoint-url https://ecs.aws-region.api.aws
  ```
+ 您可以在 AWS Config 檔案中設定個別的設定檔。例如，您可以建立一個設定檔，將 `use_dualstack_endpoint` 設為 `true`，再建立另一個設定檔不設定 `use_dualstack_endpoint`。當您執行命令時，必須依據是否要使用雙堆疊端點來指定所要使用的設定檔。

## 從 AWS SDKs 使用雙堆疊端點
<a name="dual-stack-endpoints-sdks"></a>

本節提供如何使用 AWS SDKs 存取雙堆疊端點的範例。

------
#### [ AWS SDK for Java 2.x ]

下列範例顯示如何使用 AWS SDK for Java 2.x指定 `us-east-1` 區域的雙堆疊端點。

```
Region region = Region.US_EAST_1
EcsClient client = EcsClient.builder().region(region).dualstackEnabled(true).build();
```

------
#### [ 適用於 Go 的 AWS SDK ]

下列範例顯示如何使用 適用於 Go 的 AWS SDK指定 `us-east-1` 區域的雙堆疊端點。

```
sess := session.Must(session.NewSession())
svc := ecs.New(sess, &aws.Config{
    Region: aws.String(endpoints.UsEast1RegionID),
    Endpoint: aws.String("https://ecs.us-east-1.api.aws")
})
```

------

如需詳細資訊，請參閱 *AWS SDKs and Tools Reference Guide* 中的 [Dual-stack and FIPS endpoints](https://docs.aws.amazon.com/sdkref/latest/guide/feature-endpoints.html)。

## 從 REST API 使用雙堆疊端點
<a name="dual-stack-endpoints-examples-rest-api"></a>

使用 REST API 時，您可以透過在請求中指定雙堆疊端點，直接存取該端點。下列範例使用雙堆疊端點，列出 `us-east-1` 區域中的所有 Amazon ECS 叢集。

```
POST / HTTP/1.1
Host: ecs.us-east-1.api.aws
Accept-Encoding: identity
Content-Length: 2
X-Amz-Target: AmazonEC2ContainerServiceV20141113.ListClusters
X-Amz-Date: 20150429T170621Z
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS

{}
```