1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Transit Gatewayについて学んだことをまとめてみる

1
Posted at

Transit Gateway

用語

アタッチメント

  • VPC 等を Transit Gateway とアタッチ
  • アタッチメントには、/28などの小さなCIDRの専用サブネットを推奨

ルートテーブル

  • Transit Gateway が持つ経路情報
  • 複数作成可能

アソシエーション(アソシエイト、関連付け)

  • アタッチメント(VPC など)をルートテーブルに紐づける
  • 関連付けられたルートテーブルを参照してパケットを送信する = 送信方向のルーティング
  • 1つのルートテーブルにしかアソシエイトできない

プロパゲーション(プロパゲート、伝播)

  • アタッチメントが持つ CIDR(例:10.0.0.0/16)をルートテーブルに広告する(アドバタイズする、書き込む)
  • プロパゲーションされたルートテーブルの内容を参照してパケットが送信される = 経路広告(受信方向の経路配布)
  • 複数のルートテーブルにプロパゲート可能(複数のルートテーブルを経由して受信できる)
  • プロパゲートしなくても、手動で任意のルートを追加可能(スタティックルート)

概念

機能

  • 同一リージョン内の VPC 集約(中央ハブ)
  • 異なるリージョン間の接続は、Transit Gatewayどうしをピアリングする必要がある(Inter-region peering)
  • 同一リージョンの Transit Gateway もピアリング可能(intra-region peering)
  • IPv4/v6 の両方をサポート

アソシエーションとプロパゲーション

  • 利用(送信)=アソシエイト
  • 配布(広告)=プロパゲート
    → 両者を分離することでより柔軟なネットワーク制御が可能
    例)
    • スポーク VPC 同士は通信させない
    • Shared VPC だけが全スポークにアクセス
      → プロパゲートを複数に許すことで実現

Spoke-RT
VPC-Spoke-A、VPC-Spoke-B、VPC-Spoke-C をアソシエーション

CIDR
VPC-Shared

Shared-RT
VPC-Shared をアソシエーション

CIDR
VPC-Spoke-A
VPC-Spoke-B
VPC-Spoke-C

Transit Gateway Connect

  • SD‑WAN 機器と AWS を GRE + BGP でつなげるようにする
    • VPN を使わないので帯域幅が広い
    • GRE で高速
GREとは AWS初学者向けに「Generic Routing Encapsulation (GRE)」について、AWSの文脈で解説します。

Generic Routing Encapsulation (GRE) とは?

「Generic Routing Encapsulation (GRE)」は、一言でいうと**「ある種類のデータを、別の種類のデータの中に入れて運ぶための技術」**です。これを「カプセル化」(データの包装)と呼びます。

もう少し具体的に説明しましょう。
インターネットの世界では、データが目的地まで届くために「IPアドレス」という住所情報を使ってルーティング(経路選択)されます。しかし、時にはIPアドレスだけでは扱えない特殊なデータや、特定のネットワーク(例えば会社内ネットワーク)のデータを、別のネットワーク(例えばインターネット)を介して安全に、または特定のルールで運びたい場合があります。

GREは、**「トンネル」**を掘るようなイメージで考えるとわかりやすいです。

  • トンネルを掘る前: 自分のデータ(例えば、特定のルールで動かしたい会社のネットワークパケット)があります。
  • GREでカプセル化: そのデータをそのままインターネットに流すと、うまく扱われなかったり、情報が足りなかったりします。そこで、そのデータ全体を「別の新しいIPパケット」という箱に詰め込みます。これがGREによるカプセル化です。まるで、大事な手紙(元のデータ)を封筒(GREヘッダ)に入れて、さらにその封筒を大きめの輸送箱(新しいIPパケット)に入れるようなものです。
  • トンネルを通す: 新しい箱に詰められたデータは、通常のIPパケットとしてインターネット上を流れます。
  • トンネルの出口: 目的地のサーバーやルーターに到達すると、箱が開封され(カプセル化解除)、元のデータが取り出されて処理されます。

この「トンネル」のおかげで、間に挟まれたインターネットからは、単なるIPパケットとして見えるだけで、その中身が何であるか(特別なルールを持つデータであることなど)を意識せずにデータを運ぶことができるようになります。GRE自体にはデータの暗号化機能はありません。

AWSにおけるGREの役割の変化

以前のAWSでは、オンプレミス(自社データセンター)とAWSクラウドを接続する主要なサービスとして、AWS Site-to-Site VPN(インターネットVPN接続で暗号化もされる)や、AWS Direct Connect(専用線接続)がありました。これらの接続では、GREが直接利用される機会はあまり多くありませんでした。

しかし、近年、企業ネットワークの主流となりつつある**SD-WAN(ソフトウェア定義型広域ネットワーク)**という技術が普及し、AWSとSD-WANデバイスをより柔軟に連携させたいというニーズが高まりました。ここでGREの重要性が増しました。

Transit Gateway Connect と GRE

AWSが提供するTransit Gateway(AWS上のネットワークの交通整理をするハブ)には、SD-WAN製品との統合を強化するための機能として「Transit Gateway Connect」があります。このTransit Gateway Connectで、GREが重要な役割を担います。

Transit Gateway Connect と GRE の連携の仕組み:

  1. SD-WANアプライアンスとの接続: オンプレミスや他のクラウド環境にあるSD-WANデバイス(ルーターや専用ソフトウェアが動くサーバー)とAWS Transit Gatewayの間で、まずは通常のIP接続(Direct ConnectやSite-to-Site VPN経由)を確立します。
  2. GREトンネルの確立: そのIP接続の上に、GREを使って「トンネル」を確立します。
  3. BGPによるルーティング: このGREトンネルの中で、**BGP(ルーティングプロトコル)**という仕組みを使って、ネットワークの経路情報(「このIPアドレスはここにあるよ」という情報)を動的に交換します。

この仕組みにより、SD-WANデバイスとAWS Transit Gatewayの間で、ネットワークの経路情報を自動的に学習し、最適な経路で通信できるようになります。

なぜAWSとSD-WANの接続にGREを使うのか?

  • 動的ルーティングの実現: GREトンネル内でBGPを利用することで、ネットワークの変更があった場合に、手動で設定し直すことなく、自動的に経路情報が更新されます。これにより、運用負荷が軽減され、ネットワークの可用性が向上します。
  • 柔軟なネットワーク設計: SD-WANは非常に柔軟なネットワーク構築を可能にする技術です。GREを使うことで、このSD-WANの柔軟性をAWS環境に持ち込み、より複雑で最適化されたルーティング戦略を実現できます。
  • AWS Direct ConnectやVPNの補完: AWS Direct ConnectやSite-to-Site VPNは基本的な接続を提供しますが、その上にGREトンネルを構築することで、SD-WANの高度なルーティングやポリシー制御(特定のトラフィックを優先するなど)をAWS側に拡張することができます。Transit Gateway Connectの場合、GREトンネルの上にさらにIPsec(暗号化技術)を重ねて、セキュアな通信を実現することが推奨されています。

このように、GREはSD-WANのような最新のネットワーク技術とAWSを連携させる上で、非常に重要な「縁の下の力持ち」として機能しているのです。


ミニ用語集

  • BGP (Border Gateway Protocol): インターネット上でルーター同士が「このネットワークへ行くにはどういう経路を通ればいいか」という情報を交換するために使われる、標準的なルーティングプロトコルです。大規模なネットワークで動的な経路選択を実現します。
  • SD-WAN (Software-Defined Wide Area Network): ソフトウェアの力で広域ネットワーク(WAN)を柔軟に制御・管理する技術です。例えば、どの通信回線(インターネット、専用線など)を使うか、どのアプリケーションのトラフィックを優先するかなどを、集中管理システムで設定できます。
  • Transit Gateway: AWSが提供する、複数のAmazon VPC(仮想プライベートクラウド)やオンプレミスネットワーク、AWSアカウント間の接続をシンプルかつ効率的に管理できるネットワークハブサービスです。複雑なネットワーク接続を一元化できます。
  • カプセル化: データを別のデータ構造(「箱」や「封筒」のようなもの)の中に包み込む技術です。これにより、元のデータとは異なるプロトコルやネットワーク上でデータを伝送できるようになります。
  • IPsec (Internet Protocol Security): インターネットプロトコル(IP)の通信を暗号化し、改ざん防止や認証機能を提供する技術です。主にVPN接続でデータの安全性を確保するために使われます。

※注意: AIの生成結果は必ずしも正しくありません(誤りを含む可能性があります)。
重要な判断は、AWS公式ドキュメント等の一次情報で確認してください。

制限

ENI(アタッチメント) 不足での疎通 NG

  • VPCをまたいだ通信時、同一AZにENIがあればそのENIに対して通信する
  • 戻りの通信は、送信先リソースと同じAZのENI経由で帰ってくる
  • 送信先が別AZの場合、別AZにENIが存在しないと戻り通信が不通になる
    アタッチメント時、すべてのAZにTGWのENIをつけること(必須)

ENI のアタッチ

  • AZ内の、1つのサブネットにのみアタッチ可能

MTU

  • Transit Gateway の MTU は 8500
  • VPC peering (同⼀リージョン) の MTUは 9001
    →VPC peeringからTransit Gatewayに移行すると、パケットがドロップする可能性あり

参考文献

(AWS Summit Tokyo 2019) Transit Gateway Deep Dive アーキテクチャガイド

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?