🎯 結論ファースト:この記事でわかること

ルーティングポリシーとは

AWSとオンプレミス間の通信経路を決定するルール。VIF種別(パブリック/プライベート/トランジット)で異なるポリシーが適用される

BGPコミュニティとは

経路情報に「タグ(ラベル)」を付けて、伝搬範囲や優先度を制御する仕組み。宅配便の配送ラベルのようなもの

スコープコミュニティ

パブリック VIF 用。ルート広告の範囲を「ローカル/大陸/グローバル」の3段階で指定できる

ローカルプリファレンス

プライベート/トランジット VIF 用。戻りトラフィックの経路優先度を「高/中/低」で制御できる


たとえ話:国際宅配便センターで理解する BGP

BGP のルーティングポリシーとコミュニティタグは、国際宅配便の仕分けシステムとそっくりです。

📦 国際宅配便センターの仕分けシステム

あなたの会社から荷物を発送するとき、伝票に「配送範囲」や「優先度」のラベルを貼りますよね。
BGP コミュニティも同じ考え方です。ネットワーク経路に「どこまで届けるか」「どのルートを優先するか」のラベルを貼ることで、通信の流れを制御します。

🏢

あなたの会社(荷物の発送元)

オンプレミスデータセンター

🚛

専用配送トラック(専用回線)

Direct Connect 接続

🏷️

配送ラベル(範囲・優先度)

BGP コミュニティタグ

📋

配送ルール(仕分け基準)

ルーティングポリシー


VIF の種類とルーティングポリシーの違い

Direct Connect の 仮想インターフェイス(VIF)は3種類。それぞれルーティングポリシーと使えるBGPコミュニティが異なります。

パブリック VIF

AWS パブリックサービスへ接続

S3、DynamoDB、EC2パブリックIPなど、パブリックエンドポイントへの接続に使用。

📦 たとえ:「一般の宅配便窓口」に荷物を出す感覚。届け先は公開された住所。

プライベート VIF

VPC 内リソースへ接続

VGW(仮想プライベートゲートウェイ)経由で VPC のプライベート IP に接続。

📦 たとえ:「社内専用メール便」。社外には出ない、部署間直通のルート。

トランジット VIF

Transit Gateway 経由で複数 VPC へ

Transit Gateway 経由で複数 VPC やリージョンに一括接続。

📦 たとえ:「中央集配センター」経由で全支店に届ける仕組み。


パブリック VIF のルーティングポリシー

パブリック VIF には、インバウンド(AWS へ向かう)とアウトバウンド(AWS から出る)の両方にポリシーがあります。

パブリック VIF の通信フロー

インバウンド(あなた → AWS)
🏢 オンプレミス
📡 Direct Connect
☁️ AWS パブリックサービス
アウトバウンド(AWS → あなた)
☁️ AWS パブリックサービス
📡 Direct Connect
🏢 オンプレミス
インバウンドルール

オンプレミス → AWS の条件

📦 たとえ:荷物を送るには「差出人登録」が必要

✅ パブリックIPプレフィックスを所有
✅ インターネットレジストリに登録済み
✅ 宛先は AWS パブリックプレフィックス
✅ パケットフィルタリングで発信元確認
❌ 推移的ルーティングは不可
アウトバウンドルール

AWS → オンプレミスの仕組み

📦 たとえ:AWS の配送センターがルートを自動選定

✅ AS_PATH + 最長プレフィックス一致で経路決定
✅ 全リージョン+CloudFront等のPoPからアドバタイズ
✅ 最小パス長は 3
✅ NO_EXPORT コミュニティ付きで送出
✅ ホームリージョンのルートを優先

⚠️ 重要:再アドバタイズの禁止

Direct Connect から受け取ったプレフィックスを、ネットワーク境界を越えてインターネットに再アドバタイズしてはいけません。 また、AWS はパブリック VIF で学習したお客様プレフィックスを他の Direct Connect 顧客やピアリングネットワークに再配布しません。 📦 たとえ:専用便で届いた荷物の送り状情報を、他の配送業者に流してはいけないルール。


スコープ BGP コミュニティ(パブリック VIF)

パブリック VIF でアドバタイズするプレフィックスに「配送ラベル」を貼って、AWS ネットワーク内での伝搬範囲を指定できます。

📦 配送範囲の同心円イメージ

ローカル = 同一リージョンのみ
大陸 = 同じ大陸内の全リージョン
グローバル = 全パブリックリージョン

📥 インバウンド用:あなたが付けるスコープタグ

プレフィックスをAWSのどの範囲に伝搬させるかを指定

コミュニティタグ 配送範囲 📦 たとえ
7224:9100 📍ローカルリージョンのみ 「県内配送限定」ラベル
7224:9200 🗺️同一大陸内の全リージョン 「国内全域配送」ラベル
7224:9300 🌍全パブリックリージョン 「国際配送OK」ラベル
タグなし 🌍デフォルト:グローバル ラベルなし = 全世界に届く

📤 アウトバウンド用:AWS が付けてくるタグ

AWSから受け取るルートには、発信元の位置を示すタグが自動で付与されます

📍

7224:8100

同一リージョン発

🗺️

7224:8200

同一大陸・別リージョン発

🌍

タグなし

別の大陸から発信

💡 活用ポイント

アウトバウンドのコミュニティタグを使って、自社ルーター側でフィルタリングが可能です。 たとえば「ローカルリージョン発のルートだけ受け入れる」といった制御ができます。


NO_EXPORT BGP コミュニティ

パブリック VIF の全ルートに自動適用される、セキュリティ上の重要な仕組みです。

NO_EXPORT とは

「この経路情報は外部に出すな」という印

AWS は、パブリック VIF で顧客にアドバタイズするすべてのルートに NO_EXPORT コミュニティタグを付けます。

これにより、受け取った経路情報を自社ネットワークの外に漏らさないようにする仕組みです。

📦 たとえ

「社外秘」スタンプ付きの内部配送伝票

配送センター(AWS)から届いた荷物の伝票に「社外秘:この伝票情報を他社に渡してはいけません」のスタンプが押されているイメージ。

あなたの社内(AS内)では使えるが、他の配送業者(AS)には転送できません。

🚨 インバウンドも同様

AWS は、パブリック VIF から受信したすべてのお客様ルートも NO_EXPORT タグ付きとして扱います。 つまり、あなたのプレフィックスは AWS ネットワーク内でのみ使われ、他の顧客やインターネットには伝搬されません。双方向の保護です。


プライベート/トランジット VIF のルーティングポリシー

プライベート VIF とトランジット VIF では、パブリック VIF とは異なる評価順序で経路が決定されます。

📊 経路選択の優先順位(上位ほど優先)

プレフィックス長

最長一致が最優先

ローカルプリファレンス

BGPコミュニティで制御

AS_PATH 長

経由ASが少ない方を優先

MED

非推奨(低優先)

ECMP

全属性同一なら負荷分散

📦 たとえ:配送ルートの選び方

① まず「一番近い配送先」(プレフィックス長)を選ぶ → ② 次に「VIP指定」(ローカルプリファレンス)を確認 → ③ 「経由する中継拠点が少ないルート」(AS_PATH)を選ぶ → ④ 同じ条件ならMEDで微調整 → ⑤ それでも同じなら全ルートに荷物を分散(ECMP)


BGP ローカルプリファレンス(LOCAL_PREF)とは

Direct Connect の BGP コミュニティに進む前に、BGP の基本属性である LOCAL_PREF の仕組みを理解しましょう。

📦 たとえ:配送ルートの「お気に入り度」スコア

あなたの会社から同じ届け先に荷物を送るルートが3つあるとします。 それぞれのルートに「お気に入り度」のスコアを付けて、スコアが一番高いルートを常に使うようにする — これが LOCAL_PREF です。

たとえば、高速道路ルートに「300点」、一般道ルートに「200点」、山道ルートに「100点」と付ければ、常に高速道路が選ばれます。高速道路が通行止めになったら、次に点数が高い一般道が自動で使われます。

📐 LOCAL_PREF の 4つの基本仕様

🔢

数値範囲

0 ~ 4,294,967,295
(32ビット符号なし整数)

⬆️

優先ルール

値が大きいほど優先度が高い
300 > 200 > 100

🏠

有効範囲

自AS内でのみ有効
隣接ASには伝播されない

⚙️

デフォルト値

通常 100
明示的に設定しない場合の初期値

📊 LOCAL_PREF による経路選択の仕組み

同じ宛先 10.0.0.0/16 へのルートが3本ある場合

ルート A
300
✅ 採用
ルート B
200
待機
ルート C
100
待機

→ 値が最大のルート A(300)が常に選択される。A が落ちたら B に自動切替。

⚖️ LOCAL_PREF と AS_PATH はどちらが優先?

🏷️

LOCAL_PREF

値 300 のルート
AS_PATH 長: 3

先に評価 → 勝ち
🛤️

AS_PATH

値 100 のルート
AS_PATH 長: 1(短い)

評価されない

LOCAL_PREF は AS_PATH よりも先に評価される。LOCAL_PREF で決着がつけば AS_PATH は参照されない。

🏠 「ローカル」の意味:自分の AS 内だけで有効

LOCAL_PREF は名前のとおり「ローカル(自AS内)」の優先度設定です。BGP の UPDATE メッセージで隣接 AS に送られることはありません。 つまり、あなたの社内ルーターの間では共有されますが、ISP や AWS のルーターには直接伝わりません。

📦 たとえ:社内の配送マニュアルに「このルートを優先で使え」と書いてあるイメージ。社外の配送業者にはそのマニュアルは渡されません。


コミュニティタグ vs 自社 LOCAL_PREF:制御の方向が逆

Direct Connect のトラフィック制御には2つの手段があります。名前は似ていますが、制御するトラフィックの方向がまったく逆です。

🔄 2つの制御手段と、それぞれの方向

戻りトラフィック制御

コミュニティタグを AWS に送る

あなたがプレフィックスをアドバタイズする際に BGP コミュニティ属性(7224:7100/7200/7300)を付けて AWS に送信します。AWS はそのタグを受け取り、自ネットワーク内で対応する LOCAL_PREF 値に変換します。

☁️ AWS 🏢 あなた
📦 たとえ:配送センター(AWS)に「返送するときはこのルートを優先してください」という依頼シールを貼る
送信トラフィック制御

自社ルーターで LOCAL_PREF を設定

あなたのルーター上で、AWS から受信したルートに対して LOCAL_PREF 値を設定します。この値は自分の AS 内でのみ有効で、eBGP 境界を越えて AWS には一切伝わりません。

🏢 あなた ☁️ AWS
📦 たとえ:自社の配送マニュアルに「荷物を出すときはこのトラックを優先で使え」と書く

🎯 両方を組み合わせて「往復」を完全制御

冗長化された Direct Connect 環境では、両方を組み合わせて使うのが基本です

🏢 あなた
自社 LOCAL_PREF で制御
☁️ AWS
🏢 あなた
コミュニティタグで制御
☁️ AWS

片方だけでは片道分しか制御できないことに注意

📋 詳細比較表

観点 コミュニティタグ 自社ルーターの LOCAL_PREF
制御するトラフィックの向き AWS → あなた(戻り) あなた → AWS(送り)
設定する場所 アドバタイズするプレフィックスに付与 自社ルーターの BGP ポリシー
誰のルーティングを変えるか AWS 側の経路選択 自社側の経路選択
伝播するか BGP UPDATE で AWS に届く eBGP 境界を越えない
具体的な値 7224:7100 / 7200 / 7300 0〜4,294,967,295(自由に設定)
📤

実例:送信トラフィックを制御

東京と大阪に Direct Connect 接続がある場合、自社ルーターで東京経由のルートに高い LOCAL_PREF を設定します。

自社ルーター設定例:
route-map DX-TOKYO-IN permit 10
  set local-preference 300

route-map DX-OSAKA-IN permit 10
  set local-preference 100
📥

実例:戻りトラフィックを制御

AWS からの戻りトラフィックも東京経由にしたい場合、コミュニティタグを付けてプレフィックスをアドバタイズします。

自社ルーター設定例:
route-map DX-TOKYO-OUT permit 10
  set community 7224:7300

route-map DX-OSAKA-OUT permit 10
  set community 7224:7100

⚠️ よくある間違い

「自社ルーターで LOCAL_PREF を高く設定すれば、AWS からの戻りトラフィックも制御できる」と思われがちですが、これは誤りです。 自社の LOCAL_PREF は eBGP 境界を越えて AWS には伝わらないため、戻り方向には一切影響しません。 戻りトラフィックを制御するには、必ずコミュニティタグを使用してください。


ローカルプリファレンス BGP コミュニティ

プライベート VIF・トランジット VIF で使えるコミュニティタグ。戻りトラフィックの優先経路を制御します。

🏷️ ローカルプリファレンス コミュニティタグ一覧

アドバタイズするプレフィックスに付けて、AWS からの戻りトラフィックの経路を指定

コミュニティタグ 優先度 用途 📦 たとえ
7224:7100 🔽 低 バックアップ経路 「通常便」ラベル:急がない荷物用
7224:7200 ➡️ 中 標準経路 / 負荷分散 「速達」ラベル:通常の優先ルート
7224:7300 🔼 高 プライマリ経路 「最優先便」ラベル:最速ルートで配送

💡 ポイント

ローカルプリファレンスは AS_PATH より先に評価されます。つまり、AS_PATH を長くするプリペンドよりも、このコミュニティタグの方が経路制御に効果的です。 デフォルト(タグなし)では、同じリージョンの Direct Connect ロケーションが 7224:7200(中)相当で優先されます。

🔄 Active/Active パターン

複数の接続に同じコミュニティタグを付けて負荷分散。 障害時は残りの接続に自動フェイルオーバー。

接続A 7224:7200
接続B 7224:7200

📦 たとえ:2台のトラックに同じ「速達」ラベル → 荷物を均等に積み分け

⚡ Active/Passive パターン

プライマリに高優先度、バックアップに低優先度を付けてフェイルオーバー構成。

Primary 7224:7300
Backup 7224:7100

📦 たとえ:メイントラック故障時だけ予備トラックが出動


ASN(自律システム番号)の注意点

パブリック VIF での BGP ピアリング時に知っておくべき ASN の仕様です。

パブリック ASN を使う場合

所有権の検証あり

あなたが所有するパブリック ASN を使用可能。AWS が所有権を検証します。ASN(1~2147483647)とロング ASN(1~4294967295)の両方に対応。

📦 たとえ:正式な「事業者コード」を使って配送ネットワークに参加。

プライベート ASN を使う場合

7224 に置換される

プライベート ASN(64512~65534、4200000000~4294967294)を使用可能。ただし、AWS が外部にアドバタイズする際にプライベート ASN は AWS の ASN(7224)に置き換えられます。

⚠️ AS_PATH プリペンドも削除されるため、外部に対する経路制御には効果がありません。

⚠️ AWS 側の BGP ASN

パブリック VIF の AWS 側 BGP ピアリングでは ASN 7224 が使われます。あなたのルーターの ASN は 7224 以外を設定する必要があります。 また、コミュニティ値 7224:1~7224:65535 は Direct Connect によって予約済みです。


ECMP(等コストマルチパス)の条件

プライベート/トランジット VIF で ECMP(複数経路による負荷分散)が有効になる条件を図解します。

ECMP が有効になるケース

ローカルプリファレンスタグなしで、以下のすべてが同一の場合に自動で負荷分散されます。

・プレフィックス長が同じ
・AS_PATH 長が同じ
・MED 値が同じ
・同一リージョンのDXロケーションからの経路
📍

リージョンの関連付けが影響

Direct Connect ロケーションには「ホームリージョン」が紐づいています。AWS はデフォルトで同一リージョンの DX ロケーションを優先します。

📦 たとえ:
東京の集配センターからの荷物は
東京の配送拠点を優先的に使う。
大阪の拠点は「同条件なら次の候補」。

チートシート:BGP コミュニティタグ早見表

📋 全 BGP コミュニティタグ まとめ

パブリック VIF:インバウンド スコープ

7224:9100 ローカルリージョン
7224:9200 大陸内リージョン
7224:9300 グローバル(全リージョン)

パブリック VIF:アウトバウンド 発信元

7224:8100 同一リージョン発
7224:8200 同一大陸・別リージョン発
タグなし 他の大陸から発信

プライベート/トランジット VIF:ローカルプリファレンス

7224:7100 低(バックアップ用)
7224:7200 中(標準 / 負荷分散用)
7224:7300 高(プライマリ用)

その他の重要な値

NO_EXPORT パブリックVIF全ルートに自動付与
ASN 7224 AWS 側の BGP ピアリング ASN
7224:1~65535 Direct Connect 予約済み


よくある質問(FAQ)

Q. スコープタグを付けないとどうなる?

デフォルトでグローバル(全パブリックリージョン)に伝搬されます。特定リージョンだけに限定したい場合は必ずタグを付けましょう。

Q. ローカルプリファレンスはパブリック VIF で使える?

いいえ。ローカルプリファレンス(7224:7100/7200/7300)はプライベート VIF とトランジット VIF 専用です。パブリック VIF ではスコープコミュニティを使います。

Q. Active/Active で 1 本が落ちたらどうなる?

同じコミュニティタグが付いた残りのアクティブな接続間で ECMP による負荷分散が継続されます。ホームリージョンに関係なく自動でフェイルオーバーします。

Q. プライベート ASN で AS_PATH プリペンドは効く?

AWS 内部では効きますが、AWS が外部にアドバタイズする際にプライベート ASN は 7224 に置換され、プリペンドは削除されます。外部への経路制御には効果がありません。

Created by SSuzuki1063

AWS SAP Learning Resources