

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

# 閘道端點
<a name="gateway-endpoints"></a>

閘道 VPC 端點不需要您的 VPC 有網際網路閘道或 NAT 裝置，就可以提供與 Amazon S3 和 DynamoDB 的可靠連線。閘道端點不使用 AWS PrivateLink，與其他類型的 VPC 端點不同。

Amazon S3 和 DynamoDB 支援閘道端點和介面端點。如需選項的比較，請參閱下列內容：
+ [Amazon S3 的 VPC 端點類型](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html#types-of-vpc-endpoints-for-s3)
+ [Amazon DynamoDB 的 VPC 端點類型](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/privatelink-interface-endpoints.html#types-of-vpc-endpoints-for-ddb)

**定價**  
使用閘道端點不需額外付費。

**Topics**
+ [概要](#gateway-endpoint-overview)
+ [路由](#gateway-endpoint-routing)
+ [安全](#gateway-endpoint-security)
+ [IP 地址類型](#gateway-endpoint-ip-address-type)
+ [DNS 記錄 IP 類型](#gateway-endpoint-dns-record-ip-type)
+ [適用於 Amazon S3 的端點](vpc-endpoints-s3.md)
+ [DynamoDB 的端點](vpc-endpoints-ddb.md)

## 概要
<a name="gateway-endpoint-overview"></a>

您可以透過公有服務端點或透過閘道端點來存取 Amazon S3 和 DynamoDB。此概觀會比較這些方法。

**透過網際網路閘道進行存取**  
下圖顯示執行個體如何透過其公有服務端點存取 Amazon S3 和 DynamoDB。從公有子網中的執行個體到 Amazon S3 或 DynamoDB 的流量會路由到 VPC 的網際網路閘道，然後路由至該服務。私有子網中的執行個體無法將流量傳送到 Amazon S3 或 DynamoDB，因為根據定義，私有子網沒有通往網際網路閘道的路由。若要讓私有子網路中的執行個體將流量傳送到 Amazon S3 或 DynamoDB，您需要將 NAT 裝置新增到公有子網路，並將私有子網路中的流量路由到 NAT 裝置。當 Amazon S3 或 DynamoDB 的流量周遊網際網路閘道時，不會離開 AWS 網路。

![流量會透過網際網路閘道離開您的 VPC，但會保留在 AWS 網路中。](http://docs.aws.amazon.com/zh_tw/vpc/latest/privatelink/images/without-gateway-endpoints.png)


**透過閘道端點進行存取**  
下圖顯示執行個體如何透過閘道端點來存取 Amazon S3 和 DynamoDB。從您的 VPC 到 Amazon S3 或 DynamoDB 的流量會路由至閘道端點。每個子網路由表都必須有一個路由，該路由會使用服務的字首清單，將目的地為該服務的流量傳送到閘道端點。如需詳細資訊，請參閱《*Amazon VPC 使用者指南*》中的 [AWS受管字首清單](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-aws-managed-prefix-lists.html)。

![來自 VPC 的流量會路由至閘道端點。](http://docs.aws.amazon.com/zh_tw/vpc/latest/privatelink/images/gateway-endpoints.png)


## 路由
<a name="gateway-endpoint-routing"></a>

建立閘道端點時，您可以為啟用的子網選擇 VPC 路由表。下列路由會自動新增至您選取的每個路由表。目的地是 所擁有服務的字首清單， AWS 而目標是閘道端點。


| 目標 | Target | 
| --- | --- | 
| {{prefix\_list\_id}} | {{gateway\_endpoint\_id}} | 

**考量事項**
+ 您可以查看我們新增到路由表中的端點路由，但無法修改或刪除它們。若要將端點路由新增至路由表，請將其與閘道端點建立關聯。當您取消路由表與閘道端點的關聯或刪除閘道端點時，我們會刪除端點路由。
+ 與閘道端點相關聯的路由表關聯的子網中的所有執行個體會自動使用閘道端點來存取服務。與這些路由表沒有關聯的子網中的執行個體會使用公有服務端點，而不是閘道端點。
+ 路由表可以同時具有到 Amazon S3 的端點路由和到 DynamoDB 的端點路由。您可以在多個路由表中擁有相同服務 (Amazon S3 或 DynamoDB) 的端點路由。您不能在單一路由表中擁有相同服務 (Amazon S3 或 DynamoDB) 的多個端點路由。
+ 我們會使用最具體且符合流量的路由，從而判斷如何路由流量 (最長的字首相符)。對於具有端點路由的路由表，這意味著以下內容：
  + 如果有一個路由將所有網際網路流量 (0.0.0.0/0) 傳送至網際網路閘道，則該端點路由對於目的地為當前區域中的服務 (Amazon S3 或 DynamoDB) 的流量具有優先權。目的地為不同 的流量 AWS 服務 會使用網際網路閘道。
  + 目的地為不同區域中服務 (Amazon S3 或 DynamoDB) 的流量會前往網際網路閘道，因為字首清單是特定於某個區域。
  + 如果有一個路由會為相同區域中的服務 (Amazon S3 或 DynamoDB) 指定確切的 IP 地址範圍，則該路由優先於端點路由。

## 安全
<a name="gateway-endpoint-security"></a>

當執行個體透過閘道端點存取 Amazon S3 或 DynamoDB 時，會使用其公有端點來存取服務。這些執行個體的安全群組必須允許進出服務的流量。以下是傳出規則範例。其會參照服務的[字首清單](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-aws-managed-prefix-lists.html) ID。


| 目標 | 通訊協定 | 連接埠範圍 | 
| --- | --- | --- | 
| {{prefix\_list\_id}} | TCP | 443 | 

這些執行個體之子網路的網路 ACL 也必須允許進出服務的流量。以下是傳出規則範例。您無法在網路 ACL 規則中參照字首清單，但可以從服務的字首清單中取得服務的 IP 地址範圍。


| 目標 | 通訊協定 | 連接埠範圍 | 
| --- | --- | --- | 
| {{service\_cidr\_block\_1}} | TCP | 443 | 
| {{service\_cidr\_block\_2}} | TCP | 443 | 
| {{service\_cidr\_block\_3}} | TCP | 443 | 

## IP 地址類型
<a name="gateway-endpoint-ip-address-type"></a>

IP 地址類型會決定哪個字首清單與您的路由表相關聯。

**為閘道端點啟用 IPv6 的要求**
+ 閘道端點的 IP 地址類型必須與閘道端點的子網路相容，如下所述：
  + **IPv4** – 將服務的 IPv4 字首清單新增至您的路由表。
  + **IPv6** – 將服務的 IPv6 字首清單新增至您的路由表。只有當所有選取的子網都是 IPv6 子網時，才支援此選項。
  + **Dualstack** – 將服務的 IPv4 字首清單新增至您的路由表，並將服務的 IPv6 字首清單新增至您的路由表。只有當所有選取的子網都具有 IPv4 和 IPv6 地址範圍時，才支援此選項。

## DNS 記錄 IP 類型
<a name="gateway-endpoint-dns-record-ip-type"></a>

根據預設，閘道端點會根據您呼叫的服務端點傳回 DNS 記錄。如果您使用 IPv4 服務端點建立閘道端點，例如 `s3.us-east-2.amazonaws.com`，Amazon S3 會將 A 記錄傳回用戶端，而且路由表中的所有子網路都會使用 IPv4。

相反地，如果您使用雙堆疊服務端點建立閘道端點，例如 `s3.dualstack.us-east-2.amazonaws.com`，Amazon S3 會將 A 和 AAAA 記錄傳回給用戶端，而路由表中的子網路會使用 IPv4 和 IPv6。

**注意**  
對於目錄儲存貯體或 S3 Express One Zone，資料平面的閘道端點將`s3express-use2-az1.dualstack.us-east-2.amazonaws.com`分別為 `s3express-use2-az1.us-east-2.amazonaws.com`和 。

DNS 記錄 IP 類型會影響流量路由到您的用戶端的方式。如果您使用 IPv4 服務端點建立閘道端點，然後呼叫雙堆疊服務端點，則使用 AAAA 記錄的流量不會透過閘道端點路由。如果存在流量，則會透過 IPv6-compatible路徑捨棄或路由流量。如果您使用服務定義的 DNS 記錄 IP 類型，請確定您的服務可以處理來自多個服務端點的變數呼叫。

您可以自訂 DNS 記錄 IP 類型，以選擇針對特定端點傳回哪些記錄，而不是[服務定義的](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DnsOptionsSpecification.html)預設 DNS 記錄 IP 類型設定。下表顯示支援的 DNS 記錄 IP 類型和傳回的記錄類型：


| DNS 記錄 IP 類型 | 傳回的記錄類型 | 
| --- | --- | 
| IPv4 | A | 
| IPv6 | AAAA | 
| 雙堆疊 | A 和 AAAA | 
| 服務定義 | 記錄取決於服務端點 | 

若要選擇 DNS 記錄 IP 類型，您必須使用端點服務的相容 IP 地址類型。下表顯示閘道端點的每個 IP 地址類型支援的 DNS 記錄 IP 類型：


| IP 地址類型 | 支援的 DNS 記錄 IP 類型 | 
| --- | --- | 
| IPv4 | IPv4，服務定義\* | 
| IPv6 | IPv6，服務定義\* | 
| 雙堆疊 | IPv4、IPv6、雙堆疊、服務定義\* | 

\* 代表預設 DNS 記錄 IP 類型。

**注意**  
 若要使用閘道端點服務定義以外的 DNS 記錄 IP 類型，您必須在 VPC 設定中允許 `enableDnsSupport`和 `enableDnsHostnames` 屬性。

您無法變更 DynamoDB 閘道端點的 DNS 記錄 IP 類型。DynamoDB 僅支援服務定義的 DNS 記錄 IP 類型。

界面端點的 DNS 記錄 IP 類型行為不同。如需詳細資訊，請參閱[介面端點的 DNS 記錄 IP 類型](privatelink-access-aws-services.md#aws-services-dns-record-ip-type)。