ネットワークエンジニアであればBGPの経路決定プロセスの把握は必須となっています。トラブル時に慌てずに対処できるように理解しておきましょう!
BGPの経路決定プロセス順序
①「ネクストホップ到達性」
まずは、ネクストホップへのネットワーク到達性があることが大前提となります。「show ip route」のルーティングテーブルに経路情報が無い場合はその経路はベストパスに選ばれません。
②「weight」
シスコルータ独自のパラメータです。より大きなウェイトを持つパスが選ばれます。設定されているルータに対してローカルに割り当てられます。
③「ローカルプリファレンス」
ウェイト値までが同じだった場合、より大きなローカルプリファレンスを持つ経路が優先されます。ローカルプリファレンスのデフォルト値は100です。
④「ローカル生成経路」
ローカルプリファレンスまでがおなじであった場合は、network または aggregate によって、あるいは IGP からの再配布によってローカルに生成された経路が優先されます。
network コマンドや redistribute コマンドによるローカル パスのほうが、aggregate-address コマンドによるローカル集約より優先されます。
⑤「ASパス」
次に、より短いASパスを持つ経路が優先されます。
⑥「起源タイプ」
次に、より低いオリジンタイプが優先されます。IGP<EGP<INCONPLETE
⑦「MED」
より低いMED値を持つ経路が優先されます。デフォルト値は0。
⑧「EBGPとIBGP」
EBGP>IBGPの順序で優先される。
⑨「最も近いIGP近隣ルータ経由で到達可能な経路」
BGP ネクストホップへの最小の IGP メトリックを持つパスが優先される。
⑩「マルチパス」
マルチパスが BGP マルチパス用にルーティング テーブルでインストールされる必要があるかどうか判断される。
⑪「先に受信したパス(最も古いパス)」
両方のパスが外部のときは、先に受信したパス(最も古いパス)が優先されます。
⑫「最小のルータ ID 」
最小のルータ ID を持つ BGP ルータから送られたルートが優先されます。
⑬「最小のクラスタ リスト長を持つパス 」
発信元 ID またはルータ ID が複数のパスで同じ場合は、最小のクラスタ リスト長を持つパスが優先されます。
⑭「最小の隣接ルータ アドレスから送られたパス」
最小の隣接ルータ アドレスから送られたパスが優先されます。
このアドレスは BGP ネイバー設定で使用されている IP アドレスです。
まとめ
仕事的にはだいたい⑦のMED値あたりまでのところで経路制御するケースが多いです。いつでも参照できるようにブックマーク(お気に入り)をオススメします!