ルーティング・BGP -BGPとは?-


BGPの特徴

  • Autonomous Systems(AS; 自律システム)間の経路交換のために作られたプロトコル。
  • Routing Typeはパスベクター(Path Vector)アルゴリズム
  • MetricはASの数をHOP数としたMetricを使用するが、その他にも経路情報に付加されたPath属性(Path Attribute)に基づいて柔軟に経路選択を行うことが可能。
  • パスリスト(AS番号)に基づくループフリーなルーティング環境を作成できる。
  • Routingが変更された時のみ差分情報のみをUpdate
  • BGPはTCP上で実行される(ポート179番)ため、信頼性の高いサービスに基づいて動作する。
  • Administrative DistanceはEBGPが20、IBGPが200。
  • BGP Version4からCIDR(Classless Inter Domain Routing)をサポートする。

※ASとは、単一の技術管理組織に基づくルータの集まり。ASが相互接続された状態がインターネット。0~65535までの番号で、プライベートとして64512~65535が使用可能。

AS番号割り当て機関
・日本:JPNIC (http://www.nic.ad.jp/)
・アジア太平洋地域:APNIC (http://www.apnic.net/)
・ヨーロッパ:RIPE-NCC (http://www.ripe.net/)
・南北アメリカ、カリブ海沿岸諸国、アフリカ:ARIN (http://www.arin.net/)

 

BGP:パスベクターアルゴリズム

BGPは目的のNetworkに到達するために経由するAS情報を経路情報として交換します。

上図の例だと、AS400の192.168.1.0/24のNetworkがAS100に届くまでに経由するASがAS300、AS200を経由するので、AS100にある経路情報は[192.168.1.0/24はAS200-AS300-AS400]となります。
また、ASパスを参照してそのリストに自身のAS番号が含まれていた場合、その経路を受け取らないことでループを回避することが出来ます。

内部BGP(iBGP)と外部BGP(eBGP)

  • 外部BGP(eBGP):異なるASのピア間で使用する。
    ピアを確立するルータのインタフェースが、必ず直接接続(同一ネットワーク)されている必要があります。ただしeBGPマルチホップを行うことにより回避可能です(詳細は後述)。
  • 内部BGP(iBGP):同じASに属するピア間で使用する。
    eBGPのように直接接続である必要はありません。 IGPによりネットワーク到達可能性が確保されていればピアを確立することが出来ます。
    また、iBGPで学習した経路情報は、iBGPピアへは広告しません。

内部BGP(iBGP)について問題点...

iBGPはBGPルータ同士が直接接続している必要はなく、離れていてもピアを確立することが可能です。
ただし、iBGPで得た経路は他のiBGPルータに伝搬されないため全てのiBGPルータとフルメッシュでピアを確立する必要があります。

解決策は…

(1)ルートリフレクタ(RR)
BGPルータをルートリフレクタにすることでiBGPで学習した経路を他のiBGPルータにアドバダイズ出来るようになります。
そうすることによって各iBGPルータはルートリフレクタとだけピアを確立すれば良いわけです。
当然、1つのAS内で複数のルートリフレクタを指定することも可能です。

 

(2)BGPコンフェデレーション
1つのASを複数のサブASに分けることにより、iBGPフルメッシュを穏和することが可能です。
各サブAS内はフルメッシュで構成し、サブAS間をeBGPで接続することにより実現できます。
サブAS間のeBGP接続は実際にはiBGPルーティングと同じ動き(後述するパス属性など)をします。

関連記事

メールマガジン

ネットワ-ク初心者のみなさま。
ネットワークの基礎知識を疎かにすることは
大変危険です!!

「初心者にも理解できるネットワーク技術」

これを読めばネットワークの基礎が分かる!!
ネットワーク関連の仕事に就きたいとお考えの学生の方や、ネットワークに興味があって転職を考えている社会人の方、まずは登録してみてください。

もちろん無料です!!

↓メールマガジン購読はこちら↓

メールアドレス: