$$$$
BGP(Border Gateway Protocol)は、インターネット全体のルーティングを管理するための主要なプロトコルです。BGPの基本的な仕組みを理解するためには、AS(Autonomous System, 自律システム)を中心とした構造を押さえる必要があります。
1. AS(自律システム)とは?
AS(Autonomous System:自律システム)は、1つのネットワーク管理者または組織によって一貫したポリシーで管理されているネットワークの集合体です。簡単に言えば、ASは1つの組織、ISP(インターネットサービスプロバイダー)、企業などのネットワーク単位を表します。
ASにはそれぞれ固有のAS番号が割り当てられており、これが他のASと区別されるための識別子となります。AS番号はインターネット全体で一意であり、インターネット上で他のASとルーティング情報を交換する際に使われます。
2. BGPとASの関係
BGPは、AS間でルーティング情報を交換するプロトコルです。ASごとに異なるポリシーを持ち、他のASとの間で経路情報を交換することによって、インターネット全体のデータ通信を管理します。BGPはその特性から、外部BGP(eBGP)と内部BGP(iBGP)に分かれています。
外部BGP (eBGP)
- eBGPは、異なるAS間でルーティング情報を交換する際に使用されます。たとえば、2つのISPがそれぞれ異なるASを管理している場合、BGPピアリングを行い、経路情報を交換します。
- eBGPの特徴として、デフォルトでピア(隣接ルーター)は直接接続されていることが前提です。つまり、物理的に隣接するルーター間でピアリングが行われます。
内部BGP (iBGP)
- iBGPは、同じAS内のルーター同士でルーティング情報を交換するために使用されます。同じAS内にある複数のルーターが、外部から受け取った経路情報を共有するためにiBGPを使います。
- iBGPはAS内部での経路情報の共有を目的としており、デフォルトでピアは物理的に直接接続されている必要はありません。
3. BGPの仕組みと経路選択
BGPは、経路ベクタ型ルーティングプロトコルです。経路ベクタとは、ネットワークに到達するための経路情報と、その経路がどのASを通過するかの情報をベクタ(リスト)として扱うという意味です。具体的な動作を説明します。
経路情報の交換
- BGPピアリングの確立:
異なるAS間でBGPピアリング(隣接関係)を確立します。ルーター間でピアリングが成立すると、経路情報の交換が始まります。 - 経路広告:
ルーターは、到達可能なネットワークの情報をBGPメッセージとして他のピアに広告(アドバタイズ)します。このとき、経路のベクタには、通過するAS番号がリストとして追加されます。 - 経路選択:
ルーターは複数の経路情報を受け取った場合、BGPの経路選択基準に基づいて最適な経路を選択します。主な基準は以下の通りです:
- 最も短いASパス: 通過するASの数が少ない経路が優先されます。
- オリジンタイプ: 経路の起源に基づいて優先順位が付けられます(例:IGPよりEGPが優先される)。
- メトリック(MED): 同一のASから受け取った経路間で、コストが低い経路が優先されます。
- 経路フィルタリング:
BGPでは、ポリシーベースの経路制御が可能です。経路フィルタリングを使って、特定の経路を許可したり、拒否したりすることができます。これにより、AS管理者は自分のネットワークポリシーに従って経路を制御できます。
経路ベクタ例
例えば、あるネットワーク 192.168.10.0/24
に到達するための経路が次のように広告されたとします。
経路ベクタ: AS100 → AS200 → AS300
この情報を受け取ったルーターは、192.168.10.0/24
に到達するために AS100 → AS200 → AS300 を通過することがわかります。
4. BGPのポリシーベース制御
BGPは他のルーティングプロトコルとは異なり、ポリシーベースルーティングが強力な特徴です。つまり、AS管理者はどの経路をどのように広告し、どの経路を受け入れるかを自由に制御できます。これにより、インターネット上の経路選択に強い柔軟性が生まれます。
ポリシーの適用例
- 経路の広告制御:
あるASが特定のピアリング相手に対して、全てのネットワークを広告せず、一部のネットワークだけを広告することができます。これにより、トラフィックが特定の経路を経由するように調整できます。 - 経路の受信制御:
BGPで受信する経路情報をフィルタリングし、特定の経路を受け入れないように設定することも可能です。例えば、信頼できないASからの経路情報を受け入れないようにすることで、セキュリティの向上を図ることができます。 - Local Preference:
Local Preference(ローカルプリファレンス)は、同一AS内で経路の優先順位を設定するための属性です。例えば、同じ宛先に複数の経路が存在する場合、Local Preferenceの値が高い方が優先されます。
5. BGPとASの役割を考えたインターネット全体の構造
BGPを使ってインターネット全体を見渡すと、ASのネットワークは以下のような階層構造を持っています:
Tier 1 ISP:他のネットワークに一切依存せず、グローバルな接続を提供できる大規模なプロバイダー。通常、相互に無料でピアリングを行います。
Tier 2 ISP:Tier 1に依存してインターネット接続を提供するプロバイダー。上位のプロバイダーとピアリングしつつ、自身の顧客にも接続を提供します。
Tier 3 ISP:ローカルまたは中小規模のISPで、Tier 2やTier 1のプロバイダーを通じてインターネット接続を提供します。
このようにして、インターネット全体は複数のASが相互に接続し、BGPを使ってルーティング情報を交換することで成り立っています。
まとめ
- AS(自律システム)は、1つの管理者によって一貫したポリシーで運営されているネットワークの集合体で、BGPを使って他のASとルーティング情報を交換します。
- BGPは、外部BGP(eBGP)と内部BGP(iBGP)に分かれ、インターネット全体のルーティングを管理するための重要なプロトコルです。
- BGPの強力な特徴は、ポリシーベースルーティングが可能であり、AS管理者は広告する経路や受け入れる経路を自由に制御できることです。
- Tier構造を通じて、インターネットは無数のASが相互接続し、BGPを通じてルーティング情報を交換して、インターネット全体の通信が成り立っています。
BGPとASを中心にしたインターネットのルーティング体系が理解しやすくなったでしょうか?