Amazon VPC内のEC2などからAmazon S3やAWSの各種サービスへアクセスするとき、必ずしもインターネットを経由する必要はありません。
AWSには、VPCとAWSサービスをプライベートに接続するためのVPCエンドポイント(VPC Endpoint)という仕組みがあります。
VPCエンドポイントを利用すると、インターネットゲートウェイ(IGW)やNAT Gatewayを経由せず、VPCから対応するAWSサービスへアクセスできます。
しかし、VPCエンドポイントを学習すると、
- Gateway型とInterface型は何が違う?
- S3にはどちらを使う?
- AWS PrivateLinkとは何?
- Interface EndpointではなぜENIが作成される?
- NAT Gatewayとは何が違う?
- Endpoint Policyは何のために使う?
といった疑問が出てきます。
最初に結論を整理すると、SAA学習では次のように覚えると分かりやすいでしょう。
Gateway Endpoint
主にAmazon S3とAmazon DynamoDBへのプライベートアクセスに利用する。
Interface Endpoint
AWS PrivateLinkを利用し、対応するさまざまなAWSサービスへプライベートに接続する。
本記事では、VPCエンドポイントの基本からGateway型・Interface型の違い、ルートテーブル・ENI・Private DNS・Endpoint Policy、NAT Gatewayとの違いまで初心者向けに解説します。
📚 SAA試験対策ボックス
| 試験頻出度 | ★★★★★ |
|---|---|
| 重要度 | ★★★★★ |
| 関連分野 | VPC / S3 / DynamoDB / AWS PrivateLink / NAT Gateway / データ保護 |
| 重要キーワード | VPC Endpoint / Gateway Endpoint / Interface Endpoint / PrivateLink / ENI / Private DNS / Endpoint Policy |
この記事で覚えること
- VPCエンドポイントを使う目的
- Gateway EndpointとInterface Endpointの違い
- S3・DynamoDBとGateway Endpointの関係
- Interface EndpointとAWS PrivateLinkの関係
- Interface EndpointでENIが作成される理由
- VPCエンドポイントとNAT Gatewayの違い
- Endpoint Policyによるアクセス制御
- プライベート接続によるデータ保護の考え方
VPCエンドポイントとは?
VPCエンドポイントとは、VPCと対応するAWSサービスやエンドポイントサービスをプライベートに接続するための仕組みです。
例えば、プライベートサブネットに配置されたEC2からAmazon S3へアクセスするケースを考えてみましょう。
VPCエンドポイントを利用しない構成では、要件やネットワーク構成によってNAT Gatewayなどを利用してS3のパブリックエンドポイントへアクセスすることがあります。
Private EC2
↓
NAT Gateway
↓
Internet Gateway
↓
Amazon S3
これに対してVPCエンドポイントを利用すると、
Private EC2
↓
VPC Endpoint
↓
Amazon S3
という構成にできます。
この場合、S3へアクセスするためにNAT GatewayやInternet Gatewayを経由する必要がありません。
重要ポイント
VPCエンドポイントは、VPCから対応サービスへプライベートにアクセスするための仕組みです。
なぜVPCエンドポイントを使うのか?
VPCエンドポイントを利用する代表的な理由は、次の3つです。
① インターネット経由を避けられる
対応するAWSサービスへの通信をプライベートに行えるため、対象サービスへアクセスするためだけにインターネット接続経路を用意する必要がなくなります。
② プライベートサブネットからAWSサービスへアクセスできる
EC2をプライベートサブネットへ配置したまま、S3や対応するAWSサービスへアクセスできます。
③ アクセス経路を限定できる
VPCエンドポイントやサービス側のリソースポリシーなどを組み合わせることで、データへアクセスできる経路を限定できます。
これはデータ保護やガバナンスの観点でも重要です。
VPCエンドポイントの種類
VPCエンドポイントには複数の種類がありますが、SAA学習で特に重要なのが、
- Gateway Endpoint
- Interface Endpoint
です。
まず大まかな違いを整理しましょう。

| 比較項目 | Gateway Endpoint | Interface Endpoint |
|---|---|---|
| 代表的な接続先 | S3 / DynamoDB | PrivateLink対応サービス |
| 仕組み | ルートテーブルを利用 | ENIを作成 |
| プライベートIP | エンドポイントENIを作成しない | ENIにプライベートIPを割り当て |
| Security Group | エンドポイント自体には設定しない | 設定可能 |
| AWS PrivateLink | 使用しない | 使用する |
| 料金 | Gateway Endpoint自体の追加料金なし | エンドポイント時間・データ処理などの料金が発生 |
Gateway Endpointとは?
Gateway Endpointは、Amazon S3とAmazon DynamoDBへのプライベートアクセスに利用できるVPCエンドポイントです。
Gateway Endpointでは、エンドポイントを作成して対象となるVPCのルートテーブルへ関連付けます。
例えば、プライベートサブネット内のEC2からS3へアクセスする場合を考えます。
VPC
│
├─ Private Subnet
│ │
│ └─ EC2
│
├─ Route Table
│ │
│ └─ S3 → Gateway Endpoint
│
└─ Gateway Endpoint
│
↓
Amazon S3
Gateway Endpointを関連付けたルートテーブルには、対象サービスへの経路が追加されます。
EC2からS3への通信は、この経路を利用してGateway Endpointへ送られます。
Gateway EndpointではPrefix Listが使われる
Gateway Endpointのルートでは、S3やDynamoDBのIPアドレスを1つずつ指定するわけではありません。
AWSが管理するPrefix List(プレフィックスリスト)を宛先として利用します。
イメージとしては、
Destination
S3 Prefix List
↓
Target
VPC Endpoint
というルートが作成されます。
AWS側でサービスのIPアドレスが変更された場合でも、AWS管理プレフィックスリストを利用することで、利用者が個々のIPアドレスを管理する必要を減らせます。
📘 SAA試験ポイント
S3 / DynamoDB + Route Tableという組み合わせが問題文に登場したら、Gateway Endpointを思い出しましょう。
Gateway Endpointは無料?
Gateway Endpoint自体には、追加の時間料金やデータ処理料金はありません。
そのため、プライベートサブネットのEC2からS3へ大量のデータを転送する構成では、NAT Gatewayを経由する構成と比較してコスト面でも有利になる場合があります。
もちろん、S3やEC2など利用する各サービス自体の料金や、構成に応じたデータ転送料金は別途考える必要があります。
📘 SAAでよくある要件
「プライベートサブネットのEC2からS3へアクセスしたい。インターネット経由を避け、NAT Gatewayのコストも削減したい」
この場合は、S3 Gateway Endpointが有力な選択肢です。
Interface Endpointとは?
Interface Endpointは、AWS PrivateLinkを利用して、対応するAWSサービスやエンドポイントサービスへプライベートに接続するVPCエンドポイントです。
Gateway Endpointとの大きな違いは、Interface Endpointを作成すると、選択したサブネットにENI(Elastic Network Interface)が作成されることです。
Private EC2
│
│ Private IP
▼
Interface Endpoint
│
│ ENI
│ Private IP
▼
AWS PrivateLink
│
▼
AWS Service
EC2から見ると、VPC内に存在するプライベートIPアドレスへアクセスするような構成になります。
Interface EndpointとENIの関係
Interface Endpointを理解するうえで、ENIは非常に重要です。
Interface Endpointを作成すると、指定したサブネットごとにエンドポイントネットワークインターフェイスが作成されます。
そのENIにはサブネットのIPアドレス範囲からプライベートIPアドレスが割り当てられます。
VPC 10.0.0.0/16
Private Subnet
10.0.1.0/24
EC2
10.0.1.10
│
↓
Interface Endpoint ENI
10.0.1.x
│
↓
AWS PrivateLink
│
↓
AWS Service
このため、Gateway Endpointのようにルートテーブルへサービス向けの経路を追加する方式とは仕組みが異なります。
Gateway Endpoint
Route Tableで覚える
Interface Endpoint
ENI + Private IPで覚える
Interface EndpointではSecurity Groupを設定できる
Interface EndpointのENIには、Security Groupを関連付けることができます。
例えばHTTPSを利用するサービスへアクセスする場合、
EC2
│
│ TCP 443
▼
Security Group
│
▼
Interface Endpoint ENI
のように、Interface Endpointへの通信をSecurity Groupで制御できます。
Security Groupはステートフルなアクセス制御であり、必要な通信だけをInterface Endpointへ許可できます。
AWS PrivateLinkとは?
Interface Endpointを理解するためには、AWS PrivateLinkも押さえておきましょう。
AWS PrivateLinkは、VPCと対応するサービスをプライベートに接続するための技術です。
Interface Endpointは、このAWS PrivateLinkを利用します。
Consumer VPC
│
│ Interface Endpoint
▼
AWS PrivateLink
│
▼
Service
通信のためにパブリックIPアドレスやInternet Gateway、NAT Gatewayを必須としないことが大きな特徴です。
Private DNSとは?
Interface Endpointでは、Private DNSも重要です。
対応するAWSサービスではPrivate DNSを有効にすることで、通常利用しているAWSサービスのDNS名を、VPC内からInterface EndpointのプライベートIPアドレスへ名前解決できるようになります。
概念的には、
EC2
↓
AWSサービスのDNS名
↓
Route 53 Resolver
↓
Interface Endpointの
Private IP
↓
ENI
↓
AWS PrivateLink
↓
AWS Service
となります。
これにより、アプリケーション側で接続先URLを大きく変更せずに、Interface Endpointを利用できるケースがあります。
📘 SAA試験ポイント
Interface Endpoint + Private DNS + ENI + PrivateLink
この関係をまとめて理解しておきましょう。
Gateway型とInterface型の通信経路を比較
ここまでの内容を1つの図として考えると、次のようになります。

最も重要なのは、Gateway型とInterface型ではプライベート接続を実現する仕組みそのものが異なることです。
Gateway EndpointとInterface Endpointの違い
| 項目 | Gateway Endpoint | Interface Endpoint |
|---|---|---|
| 代表的なサービス | S3 / DynamoDB | PrivateLink対応サービス |
| 通信方式 | Route Table | ENI |
| Private IP | エンドポイントENIなし | あり |
| Security Group | エンドポイントには設定しない | 設定可能 |
| Private DNS | Interface型とは仕組みが異なる | 重要 |
| AWS PrivateLink | 使用しない | 使用する |
| エンドポイントポリシー | 利用可能 | サービスが対応している場合に利用可能 |
| 料金 | エンドポイント自体に追加料金なし | 料金あり |
VPCエンドポイントとNAT Gatewayの違い
SAAでは、VPCエンドポイントとNAT Gatewayの使い分けも重要です。
NAT Gatewayは、プライベートサブネット内のリソースからVPC外のパブリックな宛先へアウトバウンド通信を行うために利用できます。
Private EC2
↓
NAT Gateway
↓
Internet Gateway
↓
Internet
一方、VPCエンドポイントは、対応する特定のサービスへプライベートに接続するために利用します。
Private EC2
↓
VPC Endpoint
↓
AWS Service
| 項目 | VPC Endpoint | NAT Gateway |
|---|---|---|
| 主な目的 | 対応サービスへのプライベート接続 | プライベートサブネットから外部へのアウトバウンド接続 |
| Internet Gateway | 対象サービスへの通信では不要 | インターネットアクセスでは必要 |
| 接続先 | 対応するAWSサービスなど | インターネット上の幅広い宛先 |
| アクセス制御 | Endpoint Policyなどを利用可能 | ルートやSecurity Group、NACLなどで設計 |
📘 SAAの判断方法
インターネット全般へアクセス
→ NAT Gateway
対応するAWSサービスへプライベートアクセス
→ VPC Endpoint
Endpoint Policyとは?
VPCエンドポイントでは、対応する場合にEndpoint Policyを設定できます。
Endpoint Policyは、VPCエンドポイントを経由してどのリソースやアクションへアクセスできるのかを制御するためのポリシーです。
例えばS3 Gateway Endpointで、
EC2
↓
VPC Endpoint
↓
Bucket-A → 許可
Bucket-B → 許可しない
のように、エンドポイントを通じて利用できるS3リソースを限定する設計が可能です。
注意
Endpoint Policyだけですべてのアクセス権限が決まるわけではありません。
IAM PolicyやS3 Bucket Policyなど、他のアクセス制御も合わせて評価されます。
S3 Bucket PolicyとVPC Endpointを組み合わせる
データ保護・ガバナンスの観点では、S3 Bucket PolicyとVPC Endpointを組み合わせたアクセス制御も重要です。
例えば、機密データを保存したS3バケットに対して、
Private EC2
↓
指定VPC Endpoint
↓
S3 Bucket
というアクセス経路のみを許可する設計を検討できます。
S3のBucket Policyでは、VPC Endpointに関する条件キーを利用してアクセス元を制限できます。
これにより、認証・認可だけでなく、「どのネットワーク経路からデータへアクセスできるか」まで制御できます。
VPCエンドポイントがデータ保護に有効な理由
① パブリックな経路への依存を減らせる
対応サービスへの通信でInternet GatewayやNAT Gatewayを必須としない構成にできます。
② アクセス経路を制限できる
Endpoint Policyやサービス側のリソースポリシーを組み合わせることで、許可するアクセス経路を限定できます。
③ Private Subnetを維持できる
AWSサービスへアクセスするためだけにEC2へPublic IPを付与する必要がありません。
④ 最小権限設計と組み合わせられる
IAM Policy、Endpoint Policy、Bucket Policyなどを組み合わせることで、ID・リソース・ネットワーク経路の複数レイヤーからアクセスを制御できます。
データガバナンスで考える多層アクセス制御
例えば、機密データを保存するS3バケットを考えてみましょう。
IAM Policy
↓
「誰がアクセスできる?」
VPC Endpoint Policy
↓
「このエンドポイント経由で何を許可する?」
S3 Bucket Policy
↓
「このバケットはどこからのアクセスを許可する?」
Amazon S3
↓
Data
このように、AWSでは複数のアクセス制御を組み合わせてデータを保護できます。
IAM
誰が何をできるか
VPC Endpoint
どのプライベート経路を利用するか
Resource Policy
対象リソースが誰・どこからのアクセスを受け入れるか
Interface Endpointは高可用性も考える
Interface Endpointは指定したサブネットにENIを作成します。
高可用性が求められる構成では、複数のアベイラビリティーゾーンを考慮してInterface Endpointを配置することが重要です。
VPC
AZ-a
└─ Private Subnet
└─ Interface Endpoint ENI
AZ-c
└─ Private Subnet
└─ Interface Endpoint ENI
のように、利用するAZごとにエンドポイントネットワークインターフェイスを配置する設計を検討します。
🔥 SAAでよくある判断パターン
パターン① Private EC2からS3へプライベートアクセス
要件:
- Internet Gatewayを経由したくない
- NAT Gatewayを使いたくない
- コストを抑えたい
答えの候補:Gateway Endpoint for Amazon S3
パターン② Private EC2からDynamoDBへアクセス
答えの候補:Gateway Endpoint for DynamoDB
パターン③ Private EC2からPrivateLink対応AWSサービスへ接続
問題文に、
- PrivateLink
- ENI
- Private IP
- Private DNS
などが登場した場合は、Interface Endpointを考えます。
パターン④ S3への通信でNAT Gatewayコストを削減したい
Before
EC2
↓
NAT Gateway
↓
S3
After
EC2
↓
Gateway Endpoint
↓
S3
答えの候補:S3 Gateway Endpoint
パターン⑤ S3バケットへのアクセス経路を特定VPC Endpointに限定したい
答えの候補:
- VPC Endpoint
- Endpoint Policy
- S3 Bucket Policy
などを要件に応じて組み合わせます。
パターン⑥ Private Subnetから一般的なWebサイトへアクセスしたい
VPC Endpointは一般的なインターネットアクセスを提供するものではありません。
答えの候補:NAT Gateway
⚠ 初心者が間違えやすいポイント
① VPC Endpointを使えばインターネット全体へアクセスできる
誤りです。
VPC Endpointは、対応するAWSサービスやエンドポイントサービスなどへの接続に利用します。
② Gateway EndpointとInterface Endpointは同じ仕組み
誤りです。
Gateway Endpointはルートテーブルを利用する方式で、Interface EndpointはENIとAWS PrivateLinkを利用します。
③ S3へプライベート接続するなら必ずInterface Endpoint
誤りです。
S3ではGateway Endpointを利用できます。
要件によってはS3のInterface Endpointを利用するケースもありますが、SAAではまずGateway Endpointの代表的な用途としてS3を理解しておくことが重要です。
④ Interface Endpointはルートテーブルへサービス経路を追加して利用する
Gateway Endpointと混同しています。
Interface EndpointではENIとプライベートIPアドレスを利用して接続します。
⑤ VPC Endpointを使えばIAMは不要
誤りです。
VPC Endpointはネットワーク接続の仕組みです。
AWSサービスに対する認証・認可ではIAMなどのアクセス制御が引き続き重要です。
⑥ Endpoint Policyを設定すればBucket Policyは無視される
誤りです。
Endpoint Policyだけでアクセス可否が決まるわけではありません。
IAM PolicyやResource Policyなど、関係するポリシーを含めてアクセスが評価されます。
Gateway型とInterface型の覚え方
Gateway Endpoint
「S3・DynamoDBへの道をルートテーブルに作る」
- S3
- DynamoDB
- Route Table
- Prefix List
- Gateway Endpoint自体は追加料金なし
Interface Endpoint
「VPC内にAWSサービスへのプライベートな入口を作る」
- ENI
- Private IP
- Security Group
- Private DNS
- AWS PrivateLink
VPC Endpoint・NAT Gateway・Internet Gatewayを整理
| サービス | 目的 | 代表的な用途 |
|---|---|---|
| Internet Gateway | VPCとインターネット間の通信 | Public Subnetのインターネット接続 |
| NAT Gateway | Private Subnetから外部へのアウトバウンド通信 | OSアップデートや外部Web APIへのアクセスなど |
| Gateway Endpoint | 対応サービスへのプライベート接続 | S3 / DynamoDB |
| Interface Endpoint | PrivateLinkを利用したプライベート接続 | PrivateLink対応AWSサービスなど |
🔥 SAA試験頻出ポイント
- VPC Endpointは対応サービスへのプライベート接続に利用する
- Gateway Endpointの代表例はS3とDynamoDB
- Gateway EndpointではRoute Tableが重要
- Gateway EndpointではAWS管理Prefix Listが利用される
- Gateway Endpoint自体に追加料金はない
- Interface EndpointはAWS PrivateLinkを利用する
- Interface EndpointではENIが作成される
- ENIにはPrivate IPが割り当てられる
- Interface EndpointにはSecurity Groupを関連付けられる
- Interface EndpointではPrivate DNSが重要
- VPC EndpointとNAT Gatewayは目的が異なる
- Endpoint Policyでエンドポイント経由のアクセスを制御できる
- S3 Bucket Policyと組み合わせてアクセス経路を制限できる
- Interface Endpointは高可用性を考慮して複数AZへの配置を検討する
まとめ
VPCエンドポイントは、VPCから対応するAWSサービスなどへプライベートに接続するための重要なネットワーク機能です。
特にSAAでは、Gateway EndpointとInterface Endpointの違いを明確に理解しておきましょう。
Gateway Endpoint
S3 / DynamoDB
↑
Gateway Endpoint
↑
Route Table
↑
EC2
Interface Endpoint
AWS Service
↑
AWS PrivateLink
↑
Interface Endpoint
ENI / Private IP
↑
EC2
Gateway Endpoint
S3 / DynamoDB + Route Table
Interface Endpoint
PrivateLink + ENI + Private IP + Security Group + Private DNS
さらに、VPCエンドポイントは単なる通信経路としてだけではなく、Endpoint PolicyやS3 Bucket Policyなどと組み合わせることで、「誰がアクセスできるか」だけでなく「どの経路からデータへアクセスできるか」まで制御するために利用できます。
SAAでは、Gateway型・Interface型の名称だけを暗記するのではなく、「接続先は何か」「Route TableかENIか」「NAT Gatewayを使う必要があるのか」「どのようにデータへのアクセスを制限するのか」を要件から判断できるようにしておきましょう。





