COLUMN
2025年版AWS Privatelinkを上手に使ってスマートに通信するコツ
![]() |
こんにちは、白鳥です。 |
---|
昨年のre:Invent 2024前後でAWS Privatelinkの大幅なアップデートがありました。これまでの用途に加えて、ネットワークのアーキテクチャを見直すこともできるため、最新仕様の解説と、新たに使えるようになったアーキテクチャ例を見ていきたいと思います。
想定する読者
- AWS Privatelinkの最新仕様を理解したい方
- AWS Privatelinkをスマートに使いこなしたい方
AWS Privatelinkを利用した通信の設計・構築のご相談について、NTT東日本のクラウドエンジニアがお応えしますので、お気軽にお問い合わせください!
目次:
- AWS Privatelinkの概要と基本仕様
- AWS Privatelinkで使われるVPCエンドポイントについて
- インターフェースVPCエンドポイント
- Gateway LoadBalancer VPCエンドポイント
- リソースVPCエンドポイント
- サービスネットワークVPCエンドポイント
- AWS Privatelinkにおけるエンドポイントサービス
- AWSのマネージドサービスや公開されているSaaS製品へのアクセス
- エンドポイントサービス
- Resource Gateway
- VPC Lattice サービスネットワークとの接続
- AWS Privatlinkを使用したリファレンスアーキテクチャ
- アーキテクチャ①:AWSマネージドサービスへの接続や、SaaSへの接続
- アーキテクチャ②:UDPを使用した共通アプリケーションへの接続
- アーキテクチャ③:データベースの共有
- アーキテクチャ④:複数のVPCにまたがるサービスへの接続
- アーキテクチャ⑤:CIDRが重複している空間での双方向接続
- 用途別のVPCエンドポイントの使い分け
- まとめ
AWS Privatelinkの概要と基本仕様
AWS Privatelinkの基本について振り返りたいと思います。
AWS Privatelinkは、複数の説明方法がありますが、VPCのリソースから外部のリソースに対して高可用性を保ったままプライベートに接続する、片方向の接続となります。
一つのコンポーネントだけではなく、通信元となるコンシューマーのVPCにあるVPCエンドポイントと、通信先となるプロバイダーのエンドポイントサービスの組み合わせがAWS Privatelinkとなります。図にするとこのような形になります。
VPCエンドポイントやエンドポイントサービスにはいくつかの種類がありますが、共通して以下のような機能を持っています。
- コンシューマーからプロバイダーへの片方向の通信
- コンシューマー側は接続先ごとにVPCエンドポイントを作成し、エンドポイントサービスに接続
- IPv4/IPv6/デュアルスタックに対応(一部のAWSのサービスへの接続はIPv4のみ)
- コンシューマーとプロバイダー間でCIDR範囲が重複していても通信可能
- 10Gbpsまで利用可能で、一部のVPCエンドポイントでは100Gbpsまで自動スケールする
コンシューマー側とプロバイダー側でそれぞれの機能を簡単に見ていきます。
AWS Privatelinkを利用した通信の設計・構築のご相談について、NTT東日本のクラウドエンジニアがお応えしますので、お気軽にお問い合わせください!
AWS Privatelinkで使われるVPCエンドポイントについて
AWS Privatelinkにおけるコンシューマー側のVPCで使われるVPCエンドポイントは4種類あります。
- インターフェースVPCエンドポイント
- Gateway LoadBalancer VPCエンドポイント
- Resource VPCエンドポイント
- サービスネットワークVPCエンドポイント
それぞれ見ていきましょう
インターフェースVPCエンドポイント
インターフェースVPCエンドポイントは、VPCのENIを通じて提供されるインターフェースです。
TCPまたはUDPが利用でき、VPC間の接続や、AWSのマネージドサービスへのプライベート接続を実現します。
インターフェースVPCエンドポイントを作成すると、プライベートDNS名が2つ作成され、リージョンレベルのDNS名と、アベイラビリティーゾーンレベルのDNS名が作成されます。
エンドポイントサービスに接続する際に、各アベイラビリティーゾーンにインターフェースVPCエンドポイントを作成した場合、次のような挙動になります。
リージョンレベルのDNS名を指定した場合、ラウンドロビンでインターフェースが選択されます。

アベイラビリティーゾーンレベルのDNS名を使用した場合、当該のアベイラビリティーゾーンのインターフェースVPCエンドポイントに接続します。

プロバイダーがVPC内部のリソースの場合、プロバイダー側はNLBを利用します。先日のアップデートでNLBが不要になったアナウンスがありましたが、それは後述するリソースVPCエンドポイントを使用しての接続となりますので、インターフェースVPCエンドポイントを使用してプロバイダー側のVPCへ接続する場合は、引き続きNLBが必要になります。

アクセス制御にはセキュリティグループと、一部のAWSサービスに接続する際に、エンドポイントポリシーと呼ばれるポリシーを記述して制御することも可能です。
Gateway LoadBalancer VPCエンドポイント
Gateway LoadBalancerを経由して、UTMなどのネットワーク仮想アプライアンスでトラフィックを検査したい場合に、Gateway LoadBalancer VPCエンドポイントを使用します。

トラフィック検査を有効にするため、各サブネットのルートテーブルをGateway LoadBalancer VPCエンドポイントを使用するように設定します。
リソースVPCエンドポイント
NLBを使用しないVPCのリソースへの接続はこちらのリソースVPCエンドポイントを使用します。TCPのみの接続となり、UDPでは接続できません。リソースVPCエンドポイントとResource Gatewayを接続しますが、リソースVPCエンドポイントとResource Gatewayの少なくとも1つのアベイラビリティーゾーンが重複している必要があります。
また、リソースVPCエンドポイントはIPv4の場合、接続先ごとに/28の倍数個(つまり16の倍数個)のIPアドレスを使用しますので、サブネットのIPアドレス数には注意が必要です。
リソースVPCエンドポイントのアクセス制御にはセキュリティグループが使用可能です。
サービスネットワークVPCエンドポイント
サービスネットワークVPCエンドポイントはVPC Latticeのサービスネットワークに接続する場合に使用します。VPC Latticeでは、VPCをサービスネットワークに関連付ける方法とサービスネットワークVPCエンドポイントの2つがありますが、サービスネットワークVPCエンドポイントを使用する場合、VPC外部のリソースからの接続も可能になるため、状況に応じて使い分けができます。このあたりはVPC Latticeの概念を理解する必要がありますが、今回は省略したいと思います。

AWS Privatelinkを利用した通信の設計・構築のご相談について、NTT東日本のクラウドエンジニアがお応えしますので、お気軽にお問い合わせください!
AWS Privatelinkにおけるエンドポイントサービス
それでは、プロバイダー側のエンドポイントサービスで使われるコンポーネントについて理解したいと思います。
AWSのマネージドサービスや公開されているSaaS製品へのアクセス
Amazon S3等のマネージドサービスや、AWS Marketplaceで公開されているSaaS製品のアクセスの場合、エンドポイントサービスはAWSやSaaS事業者側で管理されますので、特に意識せずに接続することができます。

エンドポイントサービス
エンドポイントサービスは、プロバイダー側のトラフィック受信に関する設定と、接続先のリソースの関連付けを行います。
インターフェースVPCエンドポイントや、Gateway LoadBalancer VPCエンドポイントを使用する場合、エンドポイントサービスを作成する必要があります。該当するNetwork LoadBalancerやGateway LoadBalancerと関連付けて使用します。デフォルトは同一リージョン内からのみの接続となりますが、クロスリージョンアクセスを有効にすると、リージョン間のトラフィックを受けることができます。
コンシューマー側がVPCエンドポイントを作成した際に接続の許可を行うことで、コンシューマーとプロバイダーを接続することができます。
Resource Gateway
Network LoadBalancerやGateway LoadBalancerが使用できないサービス(例えば、単独のEC2やRDSなど)への接続にはこのResource Gatewayを使用します。Resource Gatewayを作成するためには、サブネットで/28ブロックが必要です。
接続先の管理には、Resource Configurationを使用します。接続先のIPアドレスやARNなどを指定します。執筆時時点では、ARNはRDSのみ使用できます。
受け入れられるポート範囲もこちらで指定します。
VPC Lattice サービスネットワークとの接続
VPC Latticeとの接続の場合、Resource Configurationを使って、VPC Latticeのサービスネットワークと関連付けます。ターゲットとなるサービスは複数組み合わせることができます。

AWS Privatlinkを使用したリファレンスアーキテクチャ
それでは、AWS Privatelinkを使用したリファレンスアーキテクチャを見ていきたいと思います。
アーキテクチャ①:AWSマネージドサービスへの接続や、SaaSへの接続

AWSの各種マネージドサービスや、Marketplaceで公開されているSaaSとのプライベート接続には、インターフェースVPCエンドポイントを利用した接続を行います。接続先ごとにインターフェースVPCエンドポイントを作成します
アーキテクチャ②:UDPを使用した共通アプリケーションへの接続

UDPを利用した場合、インターフェースVPCエンドポイントを利用します。コンシューマーとして複数のVPCを使うこともできます。
TCPの場合は、転送量が多い場合はインターフェースVPCエンドポイントを使い、転送量が少ない場合や、HTTPベースでの細かな制御が必要な場合はサービスネットワークVPCエンドポイントを使うことをおすすめします。
アーキテクチャ③:データベースの共有

データベースの専用アカウントがあり、データベースを複数のサービスやシステムで共有する場合、リソースVPCエンドポイントを使用します。この場合はRDSのケースですが、DNSで公開されるサービスであればNATゲートウェイを中継して外部のデータベースサービスなどにも共有が可能です。
アーキテクチャ④:複数のVPCにまたがるサービスへの接続

下部の接続先が複数のEC2/ECS/EKS/Lambdaなど複数のアーキテクチャからなるサービスであったり、パスやHTTPのヘッダ情報などで細やかな制御を行ったりしたい場合は、サービスネットワークVPCエンドポイントを使用します。サービスネットワークVPCエンドポイントを使用するか、VPCを一つずつ関連付けてVPC Latticeのネットワークを作るかはアプリケーションの特性に合わせて検討されることをおすすめします。
アーキテクチャ⑤:CIDRが重複している空間での双方向接続

あまり推奨されない構成かもしれませんが、CIDR範囲が重複しているVPC間での双方向接続も、双方でAWS Privatelinkを利用することで接続することができるようになります。しかし、それぞれの通信経路が異なるため、通信経路が異なっても不具合を起こさないような考慮が必要です。
用途別のVPCエンドポイントの使い分け
これまでのリファレンスアーキテクチャも含め、利用するVPCエンドポイントをまとめます。
- 横にスクロールします
接続先 | プロトコル | VPCエンドポイントのタイプ |
---|---|---|
AWSのマネージドサービス | TCP | インターフェースVPCエンドポイント |
MarketplaceのPrivateLink Ready パートナーサービス | TCP/UDP | インターフェースVPCエンドポイント |
ネットワーク仮想アプライアンスやGateway Load Balancerで公開されているSaaS | TCP/UDP | Gateway LoadBalancer VPCエンドポイント |
NLBで接続するサービス | TCP/UDP | インターフェースVPCエンドポイント |
UDP指定のサービス | UDP | インターフェースVPCエンドポイント |
TCP(特にHTTP/HTTPS)で細かい制御が必要なサービス | TCP | サービスネットワークVPCエンドポイント |
その他VPCのリソース | TCP | リソースVPCエンドポイント |
AWS Privatelinkを利用した通信の設計・構築のご相談について、NTT東日本のクラウドエンジニアがお応えしますので、お気軽にお問い合わせください!
まとめ
AWS Privatelinkも出た当初に比べると多くの接続先が増え、選択基準が難しいと思うことも多いかもしれませんが、重複しないIPアドレス設計の制約から解放されるメリットもあります。AWS Privatelinkを上手に使ってスマートに通信を行っていきましょう。
NTT東日本では、AWSの構築保守だけではなく、ネットワーク設計なども含めたエンドツーエンドでのソリューション提供をおこなっております。
経験値豊かなメンバーがご担当させていただきますので、是非お気軽にお問い合わせください!
RECOMMEND
その他のコラム
相談無料!プロが中立的にアドバイスいたします
クラウド・AWS・Azureでお困りの方はお気軽にご相談ください。