ルーティング

BGP びーじーぴー

BGPBorder Gateway ProtocolASインターネットルーティングEGP
BGPについて教えて

簡単に言うとこんな感じ!

インターネット全体の経路制御を担う「インターネットの背骨」プロトコルだよ。各ISPや大企業のネットワーク(AS:自律システム)同士が「うちはこのIPアドレスへの経路を持ってるよ」と情報交換して、世界中の通信を繋いでるんだ!


BGPとは

BGP(Border Gateway Protocol)は、AS(Autonomous System:自律システム)間の経路情報を交換する外部ゲートウェイプロトコル(EGP)です。RFC 4271で標準化されたBGP-4が現在のインターネットの事実上の標準です。

インターネットは数万ものASの集合体で、各ISP・大企業・クラウドプロバイダーがそれぞれ1つ以上のASを持ちます。BGPは隣接するASのBGPルーター(BGPピア)間でTCPポート179番を使って接続し、保有するIPアドレスプレフィックスの情報を交換します。

OSPFなどのIGP(Interior Gateway Protocol)がASの内部で使われるのに対し、BGPはAS間(Internet)で使われます。また、AS内部での管理にも「iBGP(internal BGP)」が使われます。


eBGPとiBGPの違い

種別範囲用途
eBGP(external BGP)異なるAS間ISP間・企業-ISP間の経路交換
iBGP(internal BGP)同一AS内大規模ネットワーク内での経路配布

歴史と背景

  • 1989年:BGP-1がRFC 1105で策定
  • 1991年:BGP-2(RFC 1163)・BGP-3(RFC 1267)と改訂
  • 1994年:BGP-4がRFC 1771で標準化(CIDR・ルート集約対応)
  • 2006年:RFC 4271でBGP-4の最新統合仕様が公開
  • 現在:BGPルーティングテーブルのエントリ数は90万超(2024年)

BGPの経路選択プロセス

BGPは単純な最短距離(ホップ数)でなく、複数の属性を組み合わせて「最良経路」を選択します:

優先順位属性説明
1WeightCisco独自。ローカル設定値
2Local PreferenceAS内の優先度(大きい方が優先)
3AS_PATH経由するAS数(少ない方が優先)
4Origin経路の起源(IGP > EGP > Incomplete)
5MED複数経路への優先度ヒント
6eBGP > iBGP外部経由を優先
7IGPメトリックネクストホップへのコスト

BGPの接続確立フロー

BGPセッションの確立(TCP 179番) BGPルーター① AS 65001 BGPルーター② AS 65002 TCP接続(ポート179)→ OPEN → KEEPALIVE → UPDATE UPDATEメッセージで経路情報(NLRI)を交換 KEEPALIVEでセッション維持(デフォルト60秒ごと)

関連する規格・RFC

規格・RFC番号内容
RFC 4271BGP-4(最新統合仕様)
RFC 4760マルチプロトコルBGP(MP-BGP)
RFC 7911BGP Additional Paths

関連用語