BGPのNEXT_HOP属性
BGPのNEXT_HOP属性について説明しています。
NEXT_HOP属性の定義
NEXT_HOP属性の定義は、以下のとおりです。
項目 | 説明 |
---|---|
タイプコード | 3 |
カテゴリ | 必須(Well-known mandatory) |
概略 | NLRIへのネクストホップIPアドレス |
パス属性値 | IPアドレス |
カテゴリがWell-known mandatoryの場合、すべてのBGPスピーカーでサポートが必須です。また、必ずBGPパケットのパス属性として含む必要があります。
EBGPでの動作
EBGP(External Border Gateway Protocol)で接続した際、ピアと最短で接続できる自身のインターフェースに設定されたIPアドレスをNEXT_HOP属性に入れます。

つまり、ピアのルーティングテーブルに反映してもらうゲートウェイアドレスを通知するために使います。
以下のように、BGPピアがネクストホップと同じサブネットにある時は、他のルーターのIPアドレスを使うこともあります。

上記では、AS番号64501は203.0.113.2のルーターとBGPピアではありませんが、ルーティングテーブルに従って192.0.2.0/24宛ての通信は203.0.113.2へ直接送信するようになります。
このような形態を、サードパーティのNEXT_HOP属性と言います。
IBGPでの動作
IBGP(Internal Border Gateway Protocol)で接続した際、宛先が自身が直接接続したネットワークの場合、自身のIPアドレスをNEXT_HOP属性に入れます。

EBGPで他ASから受け取った経路の場合、NEXT_HOPは変更しません。

この図で、ルーターAは203.0.113.1に直接到達はできません。その場合の到達性は、再帰的ルックアップで解決します。
もし、何等かの理由で再帰的ルックアップでもNEXT_HOP属性の示すIPアドレスに到達できない場合は、next-hop selfの設定をして、NEXT_HOP属性を自身のIPアドレスに書き換えが必要です。
「BGPのパス属性一覧」に戻る