🔥

4. Transit Gateway

2023/05/23に公開

Transit Gateway

VPC や Direct Connect と接続できる中央ハブ的なサービス


https://aws.amazon.com/jp/transit-gateway/
https://aws.amazon.com/jp/transit-gateway/faqs/

BlackBelt

https://d1.awsstatic.com/webinars/jp/pdf/services/20191113_AWS-BlackBelt_Transit_Gateway.pdf

実はリージョナルサービス

Transit Gateway はリージョナルサービスなので複数リージョンの VPC や Direct Connect を接続する場合ピアリングの作業が必要
このピアリングは IPv4, v6 が通過可能で別アカウントにも設置可能
※ルートテーブルはリージョン間で共有されないので、お互いに自分のリージョンに対するルートを登録する必要がある
https://docs.aws.amazon.com/ja_jp/vpc/latest/tgw/tgw-peering.html

ルートの伝播

  1. オンプレミスネットワーク間で伝播されたルート: VPN / Direct Connect に接続した際、BGPを使用して TGW - オンプレミス間で伝播される
  2. VPC 間で伝播されたルート: VPC 上で IP アドレス設定を変更すると自動的に反映される

※ CIDR が同一の VPC はアタッチできない

SD-WAN アプライアンスとの連携

AWS Transit Gateway Connect という機能でできる
GRE トンネルと BGP の動的ルーティングをサポート

https://docs.aws.amazon.com/ja_jp/vpc/latest/tgw/tgw-connect.html

Direct Connect との接続 (暗号化)

Direct Connect - Transit Gateway - VPC での通信の暗号化方法

  • Transit Gateway がない場合(Direct Connect - VPC)は パブリック VIF にして Site-to-Site VPN にする
  • Direct Connect がない場合(Site-to-Site VPN - Transit Gateway - VPC)は Site-to-Site VPN の接続先を Transit Gateway にする

結論これ
https://dev.classmethod.jp/articles/whitepaper-translate-jpn-vpc-connectivity-options-01/

https://docs.aws.amazon.com/ja_jp/whitepapers/latest/aws-vpc-connectivity-options/network-to-amazon-vpc-connectivity-options.html

Transit VIF を使用した Transit Gateway への直接接続ではなく、パブリック VIF を使用し Site-to-Site VPN で接続、その VPN を Transit Gateway に対して接続する

MACsec (MAC Security)

データセンターから Direct Connect ロケーションまでのデータを暗号化する (レイヤ2トラフィック)

https://docs.aws.amazon.com/ja_jp/directconnect/latest/UserGuide/encryption-in-transit.html

Transit Gateway Appliance mode

EC2 インスタンスが存在している AZ がどこにあるか」によって決まっています。つまり AZ-1a に存在している EC2 インスタンスが取る経路は AZ-1a に存在している GWLB とそのアプライアンスへとつながる( AZ-1c に存在している EC2 インスタンスが取る経路は AZ-1c に通信される

他AZに対して通信する際に非対称ルーティングが発生する
→通信がドロップされる
TGW Attachment に行きと同じAZを通るようにする設定
https://blog.serverworks.co.jp/aws-transit-gateway-appliance-mode

→非対称ルーティングになっちゃうときに使う
 →複数VPC、複数AZがあって、他VPC,他AZに通信するときにTGWの仕様で同一AZに対してルーティングをするから
行き:A → A, 帰り:B → B ×非対称ルーティング
*設定箇所:共有VPCの TGW アタッチメント

アカウント共有

Transit Gateway と同一リージョンで行う必要アリ
※ AWS Resource Access Manager (AWS RAM) もリージョナルサービス

  1. Transit Gateway を AWS RAM と共有する
     ※この時 Organizations ではリソース共有を有効化しておく
  2. AWS RAM で Transit Gateway のリソース共有を承認する
  3. 共有しているアカウントで Transit Gateway アタッチメントを作成する
  4. Transit Gateway の所有者アカウントでアタッチメントの承諾をする

https://aws.amazon.com/jp/premiumsupport/knowledge-center/transit-gateway-sharing/

ロギング

Transit Gateway Flow Logs を使用することで Transit Gateway を通過する IP トラフィック情報をキャプチャできる (VPC Flow Logs の Transit Gateway 版)

出力先は以下3つ

  • Amazon CloudWatch Logs
  • Amazon S3
  • Kinesis Data Firehose

https://docs.aws.amazon.com/ja_jp/vpc/latest/tgw/tgw-flow-logs.html

Discussion