

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# EBS Direct 的服务端点 APIs
<a name="using-endpoints"></a>

*端点*是用作 Amazon Web 服务入口点的 URL。EBS Direct APIs 支持以下终端节点类型：
+ IPv4 端点
+ 同时 IPv4 支持和的双栈端点 IPv6

当您发出请求时，您可以指定要使用的端点和区域。如果您未指定终端节点，则默认使用该 IPv4 终端节点。要使用不同的端点类型，您必须在请求中指定。有关如何执行此操作的示例，请参阅[指定端点](#examples)。

有关区域的更多信息，请参阅《*Amazon EC2 用户指南*》中的[区域和可用区](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/using-regions-availability-zones.html)。有关 EBS direct 的终端[节点列表 APIs，请参阅 APIs中的 EBS 直接](https://docs.amazonaws.cn/general/latest/gr/ebs-service.html#ebs_direct_apis)终端节点。*Amazon Web Services 一般参考*

**Topics**
+ [IPv4 端点](#ipv4)
+ [双栈（IPv4 和 IPv6）端点](#ipv6)
+ [指定端点](#examples)

## IPv4 端点
<a name="ipv4"></a>

IPv4 端点仅支持 IPv4 流量。 IPv4 终端节点适用于所有区域。

EBS Direct 仅 APIs 支持可用于发出请求的区域 IPv4 终端节点。您必须将区域指定为端点名称的一部分。端点名称使用以下命名约定：
+ `ebs.region.amazonaws.com.cn`

例如，北京区域的 IPv4 终端节点名称为`ebs.cn-northwest-1.amazonaws.com.cn`。

**定价**  
您无需为使用同一地区的 IPv4 终端节点在 EBS 直接 API 和 Amazon EC2 实例之间直接传输数据付费。但是，如果有中间服务，例如 Amazon PrivateLink 终端节点、NAT 网关或 Amazon VPC 传输网关，则需要向您收取相关费用。

## 双栈（IPv4 和 IPv6）端点
<a name="ipv6"></a>

双栈端点同时支持 IPv4 和 IPv6 流量。双堆栈端点适用于所有区域。

要使用 IPv6，必须使用双堆栈终端节点。当您向双栈终端节点发出请求时，终端节点 URL 会解析为 IPv6 或 IPv4 地址，具体取决于您的网络和客户端使用的协议。

EBS Direct 仅 APIs 支持区域双栈终端节点，这意味着您必须在终端节点名称中指定区域。双堆栈端点名称使用以下命名约定：
+ `ebs.region.api.amazonwebservices.com.cn`

例如，北京区域的双堆栈端点名称为 `ebs.cn-northwest-1.api.aws`。

**定价**  
在相同区域使用双堆栈端点时，EBS 直接 API 和 Amazon EC2 实例之间直接传输数据是免费的。但是，如果有中间服务，例如 Amazon PrivateLink 终端节点、NAT 网关或 Amazon VPC 传输网关，则需要向您收取相关费用。

## 指定端点
<a name="examples"></a>

本节提供了一些在发出请求时如何指定端点的示例。

------
#### [ Amazon CLI ]

以下示例显示如何使用 Amazon CLI为北京区域指定端点。
+ **双堆栈**

  ```
  aws ebs list-snapshot-blocks --snapshot-id snap-0987654321 --starting-block-index 1000 --endpoint-url https://ebs.cn-northwest-1.api.amazonwebservices.com.cn
  ```
+ **IPv4**

  ```
  aws ebs list-snapshot-blocks --snapshot-id snap-0987654321 --starting-block-index 1000 --endpoint-url https://ebs.cn-northwest-1.amazonaws.com.cn
  ```

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

以下示例显示如何使用 Amazon SDK for Java 2.x为北京区域指定端点。
+ **双堆栈**

  ```
  AwsClientBuilder.EndpointConfiguration config = new AwsClientBuilder.EndpointConfiguration("https://ebs.cn-northwest-1.api.amazonwebservices.com.cn", "cn-northwest-1");
  AmazonEBS ebs = AmazonEBSClientBuilder.standard()
      .withEndpointConfiguration(config)
      .build();
  ```
+ **IPv4**

  ```
  AwsClientBuilder.EndpointConfiguration config = new AwsClientBuilder.EndpointConfiguration("https://ebs.cn-northwest-1.amazonaws.com.cn", "cn-northwest-1");
  AmazonEBS ebs = AmazonEBSClientBuilder.standard()
      .withEndpointConfiguration(config)
      .build();
  ```

------
#### [ Amazon SDK for Go ]

以下示例显示如何使用 适用于 Go 的 Amazon SDK为北京区域指定端点。
+ **双堆栈**

  ```
  sess := session.Must(session.NewSession())
  svc := ebs.New(sess, &aws.Config{
      Region: aws.String(endpoints.CnNorth1RegionID),
      Endpoint: aws.String("https://ebs.cn-northwest-1.api.amazonwebservices.com.cn")
  })
  ```
+ **IPv4**

  ```
  sess := session.Must(session.NewSession())
  svc := ebs.New(sess, &aws.Config{
      Region: aws.String(endpoints.CnNorth1RegionID),
      Endpoint: aws.String("https://ebs.cn-northwest-1.amazonaws.com.cn")
  })
  ```

------