はじめに
S3用のVPCエンドポイントでインターフェイス型を選択できるようになって、どちらを使用するか迷ったことがあるので、ゲートウェイ型との違いを、まとめたいと思います。
VPCエンドポイント2種の違い
インターフェイス型 | ゲートウェイ型 | |
---|---|---|
経路 | awsネットワーク経由 | awsネットワーク経由 |
オンプレ環境からの使用※1 | 可能 | 不可 |
ピアリング先からの使用※1 | 可能 | 不可 |
料金 | 有料 | 無料 |
使用されるIPアドレス※2 | プライベートIP | パブリックIP |
アクセス制限 | SG+エンドポイントポリシー | エンドポイントポリシー |
アクセス方法※3 | エンドポイントのDNS名を追加で使用 | S3のUriのみで可 |
作成時の紐付け対象 | サブネット | ルートテーブル |
※1.オンプレ環境及びVPCピアリング先からの使用
ゲートウェイ型ではIGWなどと同様に、ピアリング先のVPCにあるゲートウェイを使用することはできません。
※2.使用されるIPアドレスの違い
- インターフェイス型はサブネット毎にENI(Elastic Network Interface)が作成され、ENIにプライベートIPが割り振られる為、対象サービスにはプライベートIPでアクセスします。
- ゲートウェイ型はVPCエンドポイントにパブリックIPが割り振られる為、対象サービスにはパブリックIPでアクセスします。(ただしインターネットには出ません。AWSネットワーク内で完結します。)
※3.アクセス方法の違い
#インターフェイス型
#エンドポイントのDNS名: *.vpce-xxxxxx.s3.us-east-1.vpce.amazonaws.com
aws s3 ls s3://my-bucket/ --region us-east-1 --endpoint-url https://bucket.vpce-xxxxxx.s3.us-east-1.vpce.amazonaws.com
#ゲートウェイ型
aws s3 ls s3://my-bucket/ --region us-east-1
使い分け
本題の使い分けに関しては、下記3点を基準に考えていくのがいいと感じました。
用途 | 型 |
---|---|
オンプレや他のVPCから使用したい場合 | インターフェイス型 |
無料で使用したい場合 | ゲートウェイ型 |
プライベートIPでアクセスしたい場合 | インターフェイス型 |
最後に
今回インターフェイス型とゲートウェイ型のVPCエンドポイントの違いを確認しましたが、
プライベートIPを使用してバケットポリシーにてアクセス制御したい等の特別な要件がない限り、勉強用としては基本的に無料で使用することができるゲートウェイ型を使うのがいいと感じました。
なお、プライベートIPはVPCエンドポイントに紐づているサブネット毎のENIから確認することができます。