技術3課の杉村です。AWS Transit Gateway(以下、Transit GatewayまたはTGW)やDirect Connect Gateway利用時には、ASN(AS番号)を設定しなければいけません。 でも、ASNって設定する箇所がたくさんあって、訳が分からなくなってしまいますよね。 Transit Gateway, Virtual Private Gateway(VGW), Direct Conenct Gateway, Virtual Interface(VIF)...など。 今回はそれを整理します。
1. そもそもASN(AS番号)って?
ASNとは、ASに一意に振られる番号です。 ASとは、BGPという経路制御プロトコルの制御単位であり、ネットワークのカタマリです。 BGPについては詳しいことはインターネットを検索すればたくさんの記事が出てきますので、そちらをご参照ください。
簡単に言うとBGPでは、異なるASに所属するルーター同士がBGPピアというペアになって、経路情報を交換しあいます。 ルーターはお隣のBGPピアに経路情報を渡すとき、AS_PATHという属性の先頭に自分のAS番号を付与してから渡します。 ルーターが経路情報をBGPから受け取ったとき、このAS_PATHに自分のAS番号が含まれている場合、「あ、自分のASの情報だ。ならいらないね。」と判断して、その経路情報を破棄します。 (これにより経路情報のループを防いでいます)
- BGPはAS間で経路情報を交換するプロトコルである
- ASN(AS番号)はASに一意に振られる番号である
- 受け取った経路情報のAS_PATHに自分のASN(AS番号)が含まれている場合、その経路情報を破棄する
という仕組みを理解してみてください。
2. Transit GatewayやDirect ConnectのAS番号
BGPの仕組みとして「受け取った経路情報のAS_PATHに自分のASN(AS番号)が含まれている場合、その経路情報を破棄する」という仕様があるので、専用線やVPN接続を利用するときにはASN(AS番号)はどうも重複してはいけなさそうなことは分かると思います。 Transit Gateway利用パターンとDirect Connect Gateway(VGW)のパターンを図に整理してみました。
2-1. Transit Gatewayパターン
図のように、各コンポーネント間でBGPによる経路交換が行われているため、ASN(AS番号)は重複してはいけません。
トランジットゲートウェイ を 1 つ以上の Direct Connect ゲートウェイに関連付ける場合、トランジットゲートウェイ およびその Direct Connect ゲートウェイで使用される自律システム番号 (ASN) は異なる値である必要があります。たとえば、トランジットゲートウェイ と Direct Connect ゲートウェイの両方にデフォルトの ASN 64512 を使用すると、関連付けのリクエストは失敗します。
異なるリージョンにある複数の トランジットゲートウェイ に接続する場合は、それぞれの トランジットゲートウェイ に一意の ASN を使用します。
2-2. Direct Connect Gateway(VGW)パターン
Transit Gatewayを使わないDirect Connect Gatewayのパターンですが、図のように、Virtual Private Gateway(VGW)のASN(AS番号)は考慮しなくてよいです。(同じ番号でも、違う番号でもよい)
Direct Connect Gatewayは対向ルーター(BGP ピア)に経路情報を広報するとき、経路を自身の ASN(AS番号)のみで広報します。よってオンプレミス側の機器では VGW 個々の ASN については認識しません。 どうやら、Direct Connect GatewayとVGWの間では、BGPとは違う仕組みで経路交換が行われているようです。
Q.Direct Connect Gateway と仮想プライベートゲートウェイ用に異なるプライベート ASN を使用できますか? はい。Direct Connect Gateway と仮想プライベートゲートウェイ用に異なるプライベート ASN を使用できます。受信する Amazon 側の ASN はプライベート仮想インターフェイスの関連付けに依存することに注意してください。
Q.Direct Connect Gateway と仮想プライベートゲートウェイ用に同一のプライベート ASN を使用できますか? はい。Direct Connect Gateway と仮想プライベートゲートウェイ用に同一のプライベート ASN を使用できます。受信する Amazon 側の ASN はプライベート仮想インターフェイスの関連付けに依存することに注意してください。
杉村 勇馬 (記事一覧)
サーバーワークス → 株式会社G-gen 執行役員CTO
2021 Japan APN Ambassadors / 2021 APN All AWS Certifications Engineers
マルチAWSアカウント管理運用やネットワーク関係のAWSサービスに関するブログ記事を過去に執筆。
2021年09月から株式会社G-genに出向、Google Cloud(GCP)が専門に。G-genでもGoogle Cloud (GCP) の技術ブログを執筆中。