BGPとは何か?インターネットを支える「経路制御」の要

インフラエンジニアとして現場に出ると、BGP(Border Gateway Protocol)という言葉に必ず出くわします。CCNPを取得した私も、最初にBGPの設定を任されたときは正直かなり緊張しました。それだけ重要なプロトコルです。

BGPはインターネット上の自律システム(AS)同士が経路情報を交換するためのルーティングプロトコルです。現在のインターネット全体がBGPで支えられていると言っても過言ではありません。

自律システム(AS)とAS番号を理解する

BGPを理解するうえで最初に押さえるべき概念が「自律システム(Autonomous System / AS)」です。

ASとは、単一の組織が管理するネットワークの集合体のことです。NTT、KDDI、AWSといった大手プロバイダや企業はそれぞれ固有の「AS番号」を持ち、インターネット上で識別されます。

  • パブリックAS番号:1〜64511(グローバルで一意、IANA管理)
  • プライベートAS番号:64512〜65535(組織内部での使用)

講師として受講生に説明するとき、私はよく「ASは国、BGPは国際郵便のルールブック」と例えています。国同士が郵便を届けるためにルールを決めるように、AS同士がBGPで経路情報を交換するわけです。

iBGPとeBGP:2種類のBGPを区別する

BGPには大きく2種類あります。現場ではこの区別が非常に重要です。

eBGP(External BGP)

異なるAS間で経路情報を交換する場合に使うBGPです。インターネットプロバイダ(ISP)との接続や、クラウドサービスとのDirect Connect接続などで使われます。

iBGP(Internal BGP)

同じAS内のルータ同士で経路情報を同期する場合に使います。大規模な企業ネットワークや通信キャリアの内部で使われており、実際の現場ではiBGPの設定トラブルのほうが難易度が高いことが多いです。

BGPの経路選択アルゴリズム

BGPの最大の特徴は「ポリシーベースのルーティング」です。単純なホップ数や帯域幅ではなく、さまざまな属性(アトリビュート)を使って経路を選択します。

主要な選択基準を優先順位順に挙げます:

  • Weight(Ciscoの独自属性、数値が高いほど優先)
  • Local Preference(AS内の優先度)
  • AS Path(経由するAS数が少ないほど優先)
  • MED(Multi-Exit Discriminator、隣接ASへのヒント)

実際の現場では「特定の経路を優先させたい」というポリシー変更の依頼がよく来ます。このアトリビュートの仕組みを理解していると、スムーズに対応できます。

インフラエンジニアがBGPを学ぶべき理由

「BGPなんてキャリア向けでは?」と思う方もいるかもしれません。しかし、現在はクラウド時代においてもBGPの知識は必須になっています。

  • AWS Direct ConnectではeBGPで経路をアドバタイズする設定が必要
  • Azure ExpressRoute、Google Cloud Interconnectも同様
  • オンプレミスとクラウドのハイブリッド構成では必ずBGPが絡む

講師として見ていると、CCNAを取得してクラウドエンジニアに転職した方が「BGPって言葉は聞いたことあるけど設定したことない」とおっしゃることが多い。しかし現場に出ると必ず向き合う技術です。CCNPの勉強と並行してBGPの基礎を押さえておくことを強くおすすめします。

まとめ:BGPはインフラエンジニアの必須教養

BGPはインターネット全体を支える重要なルーティングプロトコルです。AS・AS番号・iBGP/eBGPの違い・経路選択アトリビュートを理解することが第一歩です。クラウドとオンプレミスの接続が当たり前になった今、BGPはネットワーク専門家だけでなく、インフラエンジニア全員が基礎として押さえておくべき技術と言えます。

iBGPとeBGPの違い

BGPには2つの動作モードがあります。現場での設計・トラブルシューティングに直結するため、しっかり理解しておく必要があります。

  • eBGP(External BGP):異なるAS間で経路情報を交換する。インターネットプロバイダ間の接続や、企業がISPと接続する際に使用する。TTLはデフォルト1(直接接続が前提)
  • iBGP(Internal BGP):同一AS内のルーター間で経路情報を交換する。eBGPで学習した経路をAS内に伝播させるために使用。全ルーター間でフルメッシュのセッションが必要(または RouteReflectorを使用)

Cisco機器でのBGP基本設定

! BGPプロセスの起動(AS番号65001)
Router(config)# router bgp 65001

! eBGPネイバーの設定(相手はAS65002)
Router(config-router)# neighbor 203.0.113.1 remote-as 65002

! 自分のネットワークを広告する
Router(config-router)# network 192.168.1.0 mask 255.255.255.0

! BGPの確認コマンド
Router# show bgp summary
Router# show bgp neighbors
Router# show ip bgp

BGPのパス選択:経路の優先度を決めるアトリビュート

BGPは複数の経路がある場合、アトリビュート(属性)を使ってベストパスを選択します。現場での経路制御に使われる代表的なアトリビュートを紹介します。

  • Local Preference:同一AS内で使用。値が高いほど優先される。デフォルト100
  • AS Path:経由するASの数。短いほど優先される。最も基本的な経路選択基準
  • MED(Multi-Exit Discriminator):隣接ASに対してどのパスを使ってほしいかを伝える。値が低いほど優先
  • Weight:Cisco独自のアトリビュート。ルーター単位でローカルに設定。値が高いほど優先。他ルーターには伝播しない

BGPが使われる現場の場面

CCNPのルーティング領域でBGPが出てきますが、実際に現場でBGPを設定する場面はどのようなものでしょうか?

  • ISP接続の冗長化:2つのISPに接続してBGPで経路制御し、一方のISP障害時に自動切り替えする構成
  • データセンター間接続:拠点間をWAN回線で接続し、BGPで経路制御する大規模ネットワーク
  • AWS Direct Connect:AWSとのプライベート接続でBGPを使って経路情報を交換する
  • フリーランス・上流SE向け案件:BGPを扱える上位エンジニアは案件単価も高く、需要が安定している

まとめ:BGPの要点整理

  • BGPはAS間で経路情報を交換するEGP(外部ゲートウェイプロトコル)
  • eBGP(AS間)とiBGP(AS内)の違いを正確に理解する
  • アトリビュートによる経路制御が設計の核心(Local Pref・AS Path・MED・Weight)
  • 現場での用途はISP接続冗長化・DC間接続・AWS Direct Connectなど

BGPはCCNPレベルの技術ですが、概念を理解しておくだけでも上位エンジニアとの会話やトラブルシューティングで大きく役立ちます。まずiBGP・eBGPの違いとAS番号の概念をしっかり押さえることから始めましょう。

ABOUT ME
たから
サラリーマンをしながら開業して経営やってます。 今年、本業で独立・別事業を起業予定です。 ◆経験:IT講師/インフラエンジニア/PM/マネジメント/採用/運用・保守・構築・設計 ◆取得資格:CCNA/CCNP/LPIC-1/AZ-900/FE/サーティファイC言語 ◆サイドビジネス:アパレル事業/複数のWEBメディアを運営