BGP
インターネットを構成する組織(AS)同士が、経路情報を交換するためのルーティングプロトコル。経路情報の交換にTCPを使う。
イマシルちゃんの解説
インターネットは、プロバイダや大学、大企業みたいな、たくさんの「組織のネットワーク」がつながってできてるんだ。
組織の中の道案内はRIPやOSPFにまかせて、
「うちの組織から、あの組織へはこう行けるよ」って、組織と組織の間で道を教え合うのがBGPなんだよ。
インターネット全体の道案内を支える、とっても大事なプロトコルなんだ!
より深い解説
定義
BGP(Border Gateway Protocol)は、AS(Autonomous System:自律システム)の間で経路情報を交換するルーティングプロトコルで、EGP(Exterior Gateway Protocol)の代表である。現在使われているのはBGP-4(RFC 4271)。経路情報の交換にはTCPのポート179番を使う。
ASは、1つの組織が一貫した方針で運用するネットワークのまとまりで、AS番号で識別される。
パスベクトル型
BGPはパスベクトル型のプロトコルで、経路情報に、その経路が通ってきたASの番号の並び(AS_PATH)を含める。受け取った経路のAS_PATHに自分のAS番号が含まれていれば、ループしていると判断して捨てる。
経路の選び方
BGPは、最短の経路を機械的に選ぶのではなく、経路に付けられたパス属性をもとに、組織の方針(ポリシー)に従って経路を選ぶ。
| 主なパス属性 | 意味 |
|---|---|
| LOCAL_PREF | 自分のASから出ていくときに、どの経路を優先するか。AS内で共有する |
| AS_PATH | 通ってきたASの並び。短いほど優先される |
| MED | 隣のASに対して、自分のASへどの入口から入ってほしいかを伝える |
| NEXT_HOP | 次に送る先のルータのアドレス |
eBGPとiBGP
| 種類 | 相手 |
|---|---|
| eBGP | 異なるASのルータ |
| iBGP | 同じAS内のルータ |
iBGPで受け取った経路は、ほかのiBGPの相手に転送しないという決まりがある(ループ防止のため)。そのため、iBGPではAS内のすべてのルータ同士を接続する(フルメッシュ)か、ルートリフレクタを使う必要がある。
経路情報の送り方
BGPは、最初の接続時に経路表の全体を送り、その後は変化があったときの差分だけを送る。接続が生きていることは、定期的な KEEPALIVE メッセージで確かめる。インターネット全体の経路は数十万にのぼるため、定期的に全体を送り直すRIPのような方式は使えない。
実際の試験ではここに出る!
- ネットワークスペシャリスト 令和7年度 春期 午前Ⅱ 問10
- ネットワークスペシャリスト 令和7年度 春期 午後Ⅰ 問1
- ネットワークスペシャリスト 令和6年度 春期 午前Ⅱ 問1
- ネットワークスペシャリスト 令和5年度 春期 午前Ⅱ 問7
- ネットワークスペシャリスト 令和4年度 春期 午前Ⅱ 問3
- ネットワークスペシャリスト 令和4年度 春期 午前Ⅱ 問11
- ネットワークスペシャリスト 令和3年度 春期 午前Ⅱ 問8
- ネットワークスペシャリスト 令和元年度 秋期 午前Ⅱ 問5
- ネットワークスペシャリスト 平成30年度 秋期 午前Ⅱ 問5