AWS Transit GatewayとVPCピアリングのデータ転送のコストを比較してみた

AWS Transit GatewayとVPCピアリングのデータ転送のコストを比較してみた

2026.01.30

はじめに

AWSのネットワーク設計において、VPC間の接続方式を「VPCピアリング」にするか「AWS Transit Gateway」にするか、選択に悩むケースは少なくありません。

仮に、VPCピアリングからTransit Gateway(以下、TGW)への移行を検討する際、VPCピアリングの接続数上限(最大125個)の回避や、複雑化するルート管理の簡素化といったメリットはよく語られます。また、デメリットとして「TGWアタッチメントの時間課金(固定費)」が発生する点についても、多くの記事で解説されています。

しかし、トラフィック量に比例する「データ転送コスト(変動費)」が両者で具体的にどう異なるのか、詳細に比較された記事はありませんでした。

特にTGWには、AZ(アベイラビリティーゾーン)間の転送仕様に独自の挙動があり、構成によっては予期せぬ「追加の転送コスト(AZ間転送)」が発生するケースもあります。

本記事では、クロスリージョン通信やAZ間転送を含む4つのパターンで試算を行い、そのコスト構造の違いを整理します。

前提条件と料金単価

今回の比較では、純粋に「トラフィックに応じた従量課金(データ転送・処理)」に焦点を当てます。Transit Gatewayのアタッチメントごとの時間単価もかかりますが、今回の計算からは除外します。

試算の前提条件

  • データ転送量: 往復 2GB (リクエスト 1GB / レスポンス 1GB)
  • リージョン: 東京リージョン および 大阪リージョン

適用する料金単価 (2026年1月時点)

  • TGWデータ処理料金: 0.02 USD/GB
  • AZ間転送料金: 0.01 USD/GB
    • 同一リージョン内の異なるAZ間通信に適用
    • 参考: Amazon EC2 の料金 (同一リージョン内のAZ間データ転送)
  • リージョン間転送料金: 0.09 USD/GB (東京 ⇔ 大阪)
    • EC2のデータ転送レートを適用
    • 参考: Amazon EC2 の料金 (データ転送:アジアパシフィック(東京)から他リージョンへの転送)

コスト比較まとめ

先に結論となる比較結果を記載します。
いずれのパターンにおいても、VPCピアリングの方が安価という結果になりました。TGWでは、「データ処理料金」と「構成による追加の転送料金」が発生するためです。

パターン 構成概要 VPCピアリング (往復) Transit Gateway (往復)
1 同一リージョン・同一AZ 0.00 USD (無料) 0.04 USD
2 同一リージョン・AZ間転送あり 0.02 USD 0.06 USD
3 クロスリージョン・同一AZ 0.18 USD 0.22 USD
4 クロスリージョン・AZ間転送あり 0.18 USD 0.24 USD

それぞれの内訳詳細を見ていきます。

【パターン1】同一リージョン内 (東京)・同一AZ内の通信

送信元EC2と受信先EC2、およびTGWアタッチメントがすべて同じAZにある場合です。
(例:送信元 AZ-a ⇔ 受信先 AZ-a)

VPCピアリング

構成例

  • 送信元VPC: EC2 (AZ-a)
  • 受信先VPC: EC2 (AZ-a)

同一AZ内の通信となるため、無料です。

  • 合計: 0.00 USD

Transit Gateway

構成例

  • 送信元VPC: EC2 (AZ-a)、TGWアタッチメント (AZ-a)
  • 受信先VPC: EC2 (AZ-a)、TGWアタッチメント (AZ-a)

同一AZであっても、TGWを通ることでデータ処理料金が発生します。

  • 行き: 0.02 USD (TGW処理)
  • 帰り: 0.02 USD (TGW処理)
  • 合計: 0.04 USD

【パターン2】同一リージョン内 (東京)・AZ間転送あり

送信元EC2と受信先EC2が異なるAZにある場合です。

VPCピアリング

構成例

  • 送信元VPC: EC2 (AZ-a)
  • 受信先VPC: EC2 (AZ-c)

AZ間のデータ転送のみが発生します。

  • 行き: 0.01 USD (AZ間転送)
  • 帰り: 0.01 USD (AZ間転送)
  • 合計: 0.02 USD

Transit Gateway

構成例

  • 送信元VPC: EC2 (AZ-a)、TGWアタッチメント (AZ-a, AZ-c)
  • 受信先VPC: EC2 (AZ-c)、TGWアタッチメント (AZ-a, AZ-c)
    送信元EC2からTGWへ送るため、各EC2と同じAZにアタッチメントが存在することが前提です。

VPC を Transit Gateway にアタッチしても、Transit Gateway のアタッチメントが存在しないアベイラビリティーゾーンのリソースは、Transit Gateway に到達できません。
https://docs.aws.amazon.com/ja_jp/vpc/latest/tgw/tgw-vpc-attachments.html

TGWを経由する場合、TGWのデータ処理料金に加え、AZ間転送を伴う通信となるためAZ間転送料金も発生します。

  • 行き: 0.02 USD (TGW処理) + 0.01 USD (AZ間転送)
  • 帰り: 0.02 USD (TGW処理) + 0.01 USD (AZ間転送)
  • 合計: 0.06 USD

TGWのAZアフィニティとAZ間転送の仕組み

Transit Gatewayには「AZアフィニティ(AZ固定)」という性質があり、デフォルトでは「トラフィックが入ってきたAZと同じAZのアタッチメント(ENI)からパケットを送出する」という挙動をとります。

デフォルトでは、Transit Gateway はアベイラビリティーゾーンのアフィニティを維持します。つまり、同じアベイラビリティーゾーンを使用して、トランジットゲートウェイに入った場所からトラフィックを転送します。
https://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/inline-traffic-inspection-third-party-appliances/transit-gateway-asymmetric-routing.html

以下の図は、AWS公式ドキュメントにあるトラフィックフローの例です。

1-transit-gateway-traffic-flow (2)
引用: AWS Transit Gateway トラフィックフローと非対称ルーティング

この性質により、送信元と宛先が異なるAZにある場合、以下のようにVPC内部でAZ間転送が発生します。

  1. 行き (②→③→④)
    • ② (EC2 → TGW): 送信元EC2 (AZ1) から、同じAZ1にあるTGWアタッチメントへ送信されます。
    • ③ (TGW → ENI): TGWはAZアフィニティにより、宛先VPCの「AZ1のENI(TGWアタッチメント)」へパケットを送出します。
    • ④ (ENI → EC2): 宛先EC2は「AZ2」にあるため、VPC内のルーティングで「AZ1のENI」から「AZ2のEC2」へ転送されます。ここでAZ間転送料金が発生します。
  2. 帰り (⑥→⑦→⑧)
    • ⑥ (EC2 → TGW): 宛先EC2 (AZ2) から、同じAZ2にあるTGWアタッチメントへ返信されます。
    • ⑦ (TGW → ENI): TGWは入ってきたAZを維持するため、戻り先VPCの「AZ2のENI」へパケットを送出します。
    • ⑧ (ENI → EC2): 送信元EC2は「AZ1」にあるため、VPC内のルーティングで「AZ2のENI」から「AZ1のEC2」へ転送されます。ここでもAZ間転送料金が発生します。

このように、TGW自体がAZをまたぐのではなく、TGWが出した先のENI(TGWアタッチメント)からターゲットEC2へ届くまでの過程でAZ間転送コストが掛かります。

【パターン3】クロスリージョン (東京⇔大阪)・同一AZ内の通信

各リージョンにおいて、EC2とTGWアタッチメントが同じAZにある場合です。

VPCピアリング

構成例

  • 東京: EC2 (ap-northeast-1a)
  • 大阪: EC2 (ap-northeast-3a) または (ap-northeast-3c)

クロスリージョンのVPCピアリングにおいては、課金仕様上、「同一AZ」や「AZ間転送」という区別は存在しません。
宛先がどのAZにあるEC2であっても、すべて「リージョン間転送」として一括りになります。

  • 行き: 0.09 USD (リージョン間転送)
  • 帰り: 0.09 USD (リージョン間転送)
  • 合計: 0.18 USD

Transit Gateway

構成例

  • 東京: EC2 (ap-northeast-1a)、TGWアタッチメント (1a)
  • 大阪: EC2 (ap-northeast-3a)、TGWアタッチメント (3a)

通信経路

  • EC2 (ap-northeast-1a) → TGW VPCアタッチメント (1a) → TGW(東京) → TGWピアリングアタッチメント(東京) → TGWピアリングアタッチメント(大阪) → TGW(大阪) → TGW VPCアタッチメント (3a) → EC2 (ap-northeast-3a)

TGWは東京の「1a」から入った通信を、大阪の「3a」のTGW VPCアタッチメントへ届けます。
大阪側では、TGW VPCアタッチメント(3a)からEC2(3a)への通信となるため、同一AZ扱いとなりAZ間転送料金は発生しません。

  • 行き: 0.02 USD (TGW処理) + 0.09 USD (リージョン間転送) = 0.11 USD
  • 帰り: 0.02 USD (TGW処理) + 0.09 USD (リージョン間転送) = 0.11 USD
  • 合計: 0.22 USD

TGWのデータ処理料金は「VPCアタッチメントからTGWに入る際」に発生し、「TGWピアリング接続からTGWに入る際(受信側)」には発生しません。

データ処理料金は、ピアリングアタッチメントから Transit Gateway に送信されるデータには適用されません。
https://aws.amazon.com/jp/transit-gateway/pricing/

そのため、片道の通信で処理料金が2倍になることはありませんが、往復通信の場合は「行き(東京側)」と「帰り(大阪側)」のそれぞれの始点で処理料金が発生します。

【パターン4】クロスリージョン (東京⇔大阪)・AZ間転送あり

各リージョンにおいて、EC2とTGWアタッチメントが異なるAZにある場合です。
(TGWの経路選択により、宛先EC2とは異なるAZのアタッチメントが使用されるケース)

VPCピアリング

パターン3と同様です。

  • 合計: 0.18 USD

Transit Gateway

構成例

  • 東京: EC2 (ap-northeast-1a)、TGWアタッチメント (1a, 1c)
  • 大阪: EC2 (ap-northeast-3c)、TGWアタッチメント (3a, 3c)
    送信元EC2からTGWへ送るため、各EC2と同じAZにアタッチメントが存在することが前提です。

【ここでのAZ間転送とは?】

東京と大阪の間の通信(リージョン間転送)とは別に、「大阪に到着した後、大阪のVPC内部で発生するAZ間の移動」を指します。

  1. 東京 (始点): EC2(1a)からデータを送信します。
  2. リージョン間: 東京から大阪へ転送されます。
  3. 大阪TGW (分岐点): TGWが出口となるアタッチメントを選択します。
    • TGW ピアリング経由ではAZが固定されないため、TGWはランダムに選びます。ここでは、宛先とは異なる「大阪3a」が選ばれたとします。
  4. 大阪VPC (ズレの発生): データは「3a」のアタッチメントに到着しましたが、宛先のEC2は「大阪3c」にいます。
  5. VPC内転送 (追加コスト): データを届けるために、VPC内部で「3a」から「3c」への移動が必要となり、AZ間転送が発生します。

このように、クロスリージョンの場合、「リージョン間転送」に加えて、着地したVPC内での「AZ間転送」が乗ってくる可能性があり、その場合は二重で転送コストがかかる形になります。

  • 行き: 0.02 USD (TGW処理) + 0.09 USD (リージョン間転送) + 0.01 USD (着側VPC内でのAZ間転送) = 0.12 USD
  • 帰り: 0.02 USD (TGW処理) + 0.09 USD (リージョン間転送) + 0.01 USD (発側VPC内でのAZ間転送) = 0.12 USD
  • 合計: 0.24 USD

マルチアカウント環境における請求先の注意点

TGWをマルチアカウント環境(RAM共有)で利用する場合、データ処理料金(0.02 USD/GB)の請求先が往路と復路で異なる点に注意が必要です。

AWSの仕様として、データ処理料金はTGWの所有者ではなく、「トラフィックを送信したVPCの所有者」に請求されます。

Transit Gateway のデータ処理料金: (...) データ処理料金は、トラフィックを Transit Gateway に送信する VPC 所有者に請求されます。
https://aws.amazon.com/jp/transit-gateway/pricing/

今回の試算のような「VPC A(アカウントA)」と「VPC B(アカウントB)」間の通信の場合、請求先は以下のようになります。

  • 行きの通信(VPC A → VPC B)
    • VPC Aからデータが送信されるため、「アカウントA(送信元)」に請求されます。
  • 帰りの通信(VPC B → VPC A)
    • 戻りのパケットはVPC Bから送信されるため、「アカウントB(受信先)」に請求されます。

つまり、往復の通信コストを送信元がすべて負担するのではなく、「受信側も戻りのトラフィック分の処理料金を負担する」という構造になります。

おわりに

純粋な通信コストの観点だけで比較すると、やはりVPCピアリングの安さが際立つ結果となりました。
特に、同一リージョン・同一AZ間の通信が「無料」になる点は、大規模なデータ転送を行うシステムにおいて無視できないメリットです。

一方で、Transit GatewayにはフルメッシュになりがちなVPC間接続をハブ&スポーク型に集約し、運用管理を劇的に簡素化できるという強力なメリットがあります。

TGWへの移行を検討する際は、アタッチメントの時間料金(固定費)だけに目を向けるのではなく、今回試算したような「データ処理料金」や「隠れたAZ間転送コスト」による変動費の増加分も加味した上で、移行すべきか検討してみてください。

この記事をシェアする

FacebookHatena blogX

関連記事