Cisco NCS 5000 シリーズ ルータの BGP コンフィギュレーション ガイド、IOS XR リリース 6.0.x
「BGP の実装」
「BGP の実装」

目次

「BGP の実装」

ボーダー ゲートウェイ プロトコル(BGP)は、自律システム間にループフリーのドメイン間ルーティングを作成可能なエクステリア ゲートウェイ プロトコル(EGP)です。自律システムは、単一の技術管理に基づくルータのまとまりです。自律システム内のルータは、複数の内部ゲートウェイ プロトコル(IGP)を使用して自律システム内のルーティング情報を交換し、EGP を使用して自律システム外でパケットをルーティングします。

このモジュールでは、BGP の概念および設定情報を示しています。

リリース

変更内容

リリース 6.0

この機能が導入されました。

BGP 機能の概要

BGP はトランスポート プロトコルとして TCP を使用します。2 台の BGP ルータが互いの間に TCP 接続を形成し(ピア ルータ)、接続パラメータを開いて確認するためにメッセージを交換します。

BGP ルータはネットワーク到達可能性情報を交換します。この情報は、主に、宛先ネットワークに到達するためにルートで経由する必要のあるフル パス(BGP 自律システム番号)を示します。この情報は、ループ フリーである自律システムや、ルーティング動作に制限が適用されるルーティング ポリシーを表すグラフの作成に役立ちます。

TCP 接続を確立して BGP ルーティング情報を交換している 2 台のルータは、ピアまたはネイバーと呼ばれます。BGP ピアは最初に BGP ルーティング テーブル全体を交換します。この交換の後、ルーティング テーブルが変更されたとき差分更新が送信されます。BGP は BGP テーブルのバージョン番号を保存します。これはすべての BGP ピアで同一です。ルーティング情報の変更によって BGP がテーブルを更新するたびに、バージョン番号は変更されます。BGP ピア間の接続が維持されていることを確認するキープアライブ パケットが送信され、エラーまたは特殊な状態に応じて通知パケットが送信されます。


(注)  


VPNv4、VPNv6 および VPN ルーティング/転送(VRF)のアドレス ファミリは、今後のリリースでサポートされる予定です。

BGP ルーティングの有効化

BGP ルーティングをイネーブルにし、BGP ルーティング プロセスを設定するには、次の作業を実行します。BGP ネイバーの設定は、BGP ルーティングのイネーブル化の一部として含まれています。


(注)  


BGP ルーティングをイネーブルにするには、1 つ以上のネイバーおよび 1 つ以上のアドレス ファミリを設定する必要があります。address family コマンドおよび remote as コマンドを使用して、リモート AS とアドレス ファミリの両方を持つ 1 つ以上のネイバーをグローバルに設定する必要があります。


はじめる前に

BGP はルータ ID(設定済みループバック アドレスなど)を取得できなければなりません。1 つ以上のアドレス ファミリを BGP ルータ コンフィギュレーションに設定する必要があり、同じアドレス ファミリをネイバーの下にも設定する必要があります。


(注)  


ネイバーが外部 BGP(eBGP)ピアとして設定されている場合は、route-policy コマンドを使用して、インバウンドおよびアウトバウンドのルート ポリシーをネイバー上に設定する必要があります。


手順の概要

    1.    configure

    2.    route-policyroute-policy-name

    3.    end-policy

    4.    commit

    5.    configure

    6.    router bgpas-number

    7.    bgp router-idip-address

    8.    address-family {ipv4 | ipv6} unicast

    9.    exit

    10.    neighborip-address

    11.    remote-asas-number

    12.    address-family {ipv4 | ipv6} unicast

    13.    route-policyroute-policy-name {in | out}

    14.    commit


手順の詳細
    ステップ 1   configure
    ステップ 2   route-policyroute-policy-name


    例:
    RP/0/RP0/CPU0:router(config)# route-policy drop-as-1234
      RP/0/RP0/CPU0:router(config-rpl)# if as-path passes-through '1234' then
      RP/0/RP0/CPU0:router(config-rpl)# apply check-communities
      RP/0/RP0/CPU0:router(config-rpl)# else
      RP/0/RP0/CPU0:router(config-rpl)# pass
      RP/0/RP0/CPU0:router(config-rpl)# endif
      

    (任意)ルート ポリシーを作成し、ルート ポリシー コンフィギュレーション モードを開始します。このモードではルート ポリシーを定義できます。

    ステップ 3   end-policy


    例:
    RP/0/RP0/CPU0:router(config-rpl)# end-policy

    (任意)ルート ポリシーの定義を終了し、ルート ポリシー コンフィギュレーション モードを終了します。

    ステップ 4   commit
    ステップ 5   configure
    ステップ 6   router bgpas-number


    例:
    RP/0/RP0/CPU0:router(config)# router bgp 120

    BGP AS 番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

    ステップ 7   bgp router-idip-address


    例:
    RP/0/RP0/CPU0:router(config-bgp)# bgp router-id 192.168.70.24

    指定したルータ ID で、ローカル ルータを設定します。

    ステップ 8   address-family {ipv4 | ipv6} unicast

    例:
    RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast

    IPv4 または IPv6 のいずれかのアドレス ファミリを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

    このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

    ステップ 9   exit


    例:
    RP/0/RP0/CPU0:router(config-bgp-af)# exit

    現在のコンフィギュレーション モードを終了します。

    ステップ 10   neighborip-address


    例:
    RP/0/RP0/CPU0:router(config-bgp)# neighbor 172.168.40.24

    BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

    ステップ 11   remote-asas-number


    例:
    RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 2002

    ネイバーを作成し、リモート自律システム番号を割り当てます。

    ステップ 12   address-family {ipv4 | ipv6} unicast

    例:
    RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast

    IPv4 または IPv6 のいずれかのアドレス ファミリを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

    このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

    ステップ 13   route-policyroute-policy-name {in | out}

    例:
    RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy drop-as-1234 in

    (任意)指定したポリシーを着信 IPv4 ユニキャスト ルートに適用します。

    ステップ 14   commit

    BGP のイネーブル化:例

    次に、BGP をイネーブルにする例を示します。

      prefix-set static
         2020::/64,
         2012::/64,
         10.10.0.0/16,
         10.2.0.0/24
      end-set
      
      route-policy pass-all
        pass
      end-policy
      route-policy set_next_hop_agg_v4
        set next-hop 10.0.0.1  
      end-policy
      
      route-policy set_next_hop_static_v4
        if (destination in static) then
          set next-hop 10.1.0.1
        else
          drop
        endif
      end-policy
      
      route-policy set_next_hop_agg_v6
        set next-hop 2003::121
      end-policy
      
      route-policy set_next_hop_static_v6
        if (destination in static) then
           set next-hop 2011::121
        else
           drop
        endif
      end-policy
      
      router bgp 65000
        bgp fast-external-fallover disable
        bgp confederation peers
          65001
          65002
        bgp confederation identifier 1
        bgp router-id 1.1.1.1
        address-family ipv4 unicast
          aggregate-address 10.2.0.0/24 route-policy set_next_hop_agg_v4
          aggregate-address 10.3.0.0/24 
          redistribute static route-policy set_next_hop_static_v4
        address-family ipv6 unicast
          aggregate-address 2012::/64 route-policy set_next_hop_agg_v6
          aggregate-address 2013::/64
          redistribute static route-policy set_next_hop_static_v6
       			neighbor 10.0.101.60
          remote-as 65000
          address-family ipv4 unicast
          neighbor 10.0.101.61
          remote-as 65000 
          address-family ipv4 unicast
          neighbor 10.0.101.62
          remote-as 3
          address-family ipv4 unicast
            route-policy pass-all in
            route-policy pass-all out
          neighbor 10.0.101.64
          remote-as 5
          update-source Loopback0
          address-family ipv4 unicast
            route-policy pass-all in
            route-policy pass-all out
          

    BGP タイマーの調整

    BGP は、定期実行アクティビティ(キープアライブ メッセージの送信、ネイバーがダウンしたと判断する条件となるそのネイバーからメッセージを受信しなかった期間など)を制御するために、特定のタイマーを使用します。ルータ コンフィギュレーション モードで timers bgp コマンドを使用して設定した値は、特定のネイバーでネイバー コンフィギュレーション モードで timers コマンドを使用すると上書きできます。

    BGP ネイバーにタイマーを設定するには、次の作業を実行します。

    手順の概要

      1.    configure

      2.    router bgpas-number

      3.    timers bgpkeepalive hold-time

      4.    neighborip-address

      5.    timerskeepalive hold-time

      6.    commit


    手順の詳細
      ステップ 1   configure
      ステップ 2   router bgpas-number


      例:
      RP/0/RP0/CPU0:router(config)# router bgp 123

      自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

      ステップ 3   timers bgpkeepalive hold-time


      例:
      RP/0/RP0/CPU0:router(config-bgp)# timers bgp 30 90

      すべてのネイバーのデフォルトのキープアライブ時間とデフォルトの保留時間を設定します。

      ステップ 4   neighborip-address


      例:
      RP/0/RP0/CPU0:router(config-bgp)# neighbor 172.168.40.24

      BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

      ステップ 5   timerskeepalive hold-time


      例:
      RP/0/RP0/CPU0:router(config-bgp-nbr)# timers 60 220

      (任意)BGP ネイバーのキープアライブ タイマーと保持時間タイマーを設定します。

      ステップ 6   commit

      BGP デフォルト ローカル プリファレンス値の変更

      BGP パスのデフォルト ローカル プリファレンス値を設定するには、次の作業を実行します。

      手順の概要

        1.    configure

        2.    router bgpas-number

        3.    bgp default local-preferencevalue

        4.    commit


      手順の詳細
        ステップ 1   configure
        ステップ 2   router bgpas-number


        例:
        RP/0/RP0/CPU0:router(config)# router bgp 120

        自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

        ステップ 3   bgp default local-preferencevalue


        例:
        RP/0/RP0/CPU0:router(config-bgp)# bgp default local-preference 200

        デフォルト値 100 以外のデフォルト ローカル プリファレンス値を設定します。100 より大きい値を設定して推奨度を上げるか、または 100 未満の値を設定して推奨度を低くすることができます。

        ステップ 4   commit

        BGP の MED メトリックの設定

        メトリックがまだ設定されていないルート(MED 属性が設定されていない、受信されたルート)をピアにアドバタイズするように Multi Exit Discriminator(MED)を設定するには、次の作業を実行します。

        手順の概要

          1.    configure

          2.    router bgpas-number

          3.    default-metricvalue

          4.    commit


        手順の詳細
          ステップ 1   configure
          ステップ 2   router bgpas-number


          例:
          RP/0/RP0/CPU0:router(config)# router bgp 120

          自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

          ステップ 3   default-metricvalue


          例:
          RP/0/RP0/CPU0:router(config-bgp)# default metric 10

          まだメトリックが設定されていないルート(MED 属性を持たない、受信されたルート)をピアにアドバタイズするように MED を設定する場合に使用されるデフォルトのメトリックを設定します。

          ステップ 4   commit

          BGP ウェイトの設定

          重みとは、ベストパス選択プロセスを制御するためにパスに割り当てる数値です。ほとんどのトラフィックで特定のネイバーを優先する場合、weight コマンドを使用して、そのネイバーから学習したすべてのルートに大きい重みを割り当てることができます。ネイバーから受信しルートに重みを割り当てるには、次の作業を実行します。

          手順の概要

            1.    configure

            2.    router bgpas-number

            3.    neighborip-address

            4.    remote-asas-number

            5.    address-family {ipv4 | ipv6} unicast

            6.    weightweight-value

            7.    commit


          手順の詳細
            ステップ 1   configure
            ステップ 2   router bgpas-number


            例:
            RP/0/RP0/CPU0:router(config)# router bgp 120

            自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

            ステップ 3   neighborip-address


            例:
            RP/0/RP0/CPU0:router(config-bgp)# neighbor 172.168.40.24

            BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

            ステップ 4   remote-asas-number


            例:
            RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 2002 

            ネイバーを作成し、リモート自律システム番号を割り当てます。

            ステップ 5   address-family {ipv4 | ipv6} unicast

            例:
            RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast

            IPv4 または IPv6 のいずれかのアドレス ファミリを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

            このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

            ステップ 6   weightweight-value


            例:
            RP/0/RP0/CPU0:router(config-bgp-nbr-af)# weight 41150

            ネイバーから学習したすべてのルートに重みを割り当てます。

            ステップ 7   commit

            次の作業

            新たに設定したウェイトを反映するには、clear bgp コマンドを使用します。

            BGP 最適パス計算の調整

            BGP ルータは、通常は同じ宛先に対する複数のパスを受信します。BGP の最適パス アルゴリズムは、IP ルーティング テーブルに格納し、トラフィックの転送に使用する最適なパスを決めるものです。BGP 最適パスは、次の 3 つのステップで構成されます。
            • ステップ 1:2 つのパスを比較して、いずれが優れているのかを判別します。

            • ステップ 2:すべてのパスを順に処理し、全体として最適なパスを選択するためにパスを比較する順序を決定します。

            • ステップ 3:新しい最適パスを使用するに足るだけの差が新旧の最適パスにあるかどうかを判別します。


            (注)  


            比較演算が推移的ではないため、ステップ 2 で決定された比較の順序は重要です。つまり、3 つのパス、A、B、C がある場合、A と B を比較したときに A の方が優れていて、B と C と比較したときに B の方が優れている場合、A と C を比較したときに必ずしも A が優れているとは限りません。この非推移性は、Multi Exit Discriminator(MED)は、すべてのパス間ではなく、同じネイバー自律システム(AS)からのパス間のみで比較されるために生じます。BGP 最適パス アルゴリズムその他概念的な詳細を提供します。
            デフォルトの BGP 最適パスの計算の動作を変更するには、次の作業を実行します。
            手順の概要

              1.    configure

              2.    router bgpas-number

              3.    bgp bestpath med missing-as-worst

              4.    bgp bestpath med always

              5.    bgp bestpath med confed

              6.    bgp bestpath as-path ignore

              7.    bgp bestpath compare-routerid

              8.    commit


            手順の詳細
              ステップ 1   configure
              ステップ 2   router bgpas-number


              例:
              RP/0/RP0/CPU0:router(config)# router bgp 126

              自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

              ステップ 3   bgp bestpath med missing-as-worst


              例:
              RP/0/RP0/CPU0:router(config-bgp)# bgp bestpath med missing-as-worst

              このパスを最も必要のないパスにするために、このパス内の不明 MED 属性の値は無限であると見なすように、BGP ソフトウェアに指示します。

              ステップ 4   bgp bestpath med always


              例:
              RP/0/RP0/CPU0:router(config-bgp)# bgp bestpath med always

              パスがどの自律システムから受信されたかに関係なく、すべてのパスの間でプレフィックスについて MED を比較するように、指定した自律システムの BGP スピーカーを設定します。

              ステップ 5   bgp bestpath med confed


              例:
              RP/0/RP0/CPU0:router(config-bgp)# bgp bestpath med confed

              コンフェデレーション ピアから学習したパスについて MED 値を BGP ソフトウェアで比較できるようにします。

              ステップ 6   bgp bestpath as-path ignore


              例:
              RP/0/RP0/CPU0:router(config-bgp)# bgp bestpath as-path ignore

              最適パスを選択するときに、自律システム パスの長さが無視されるように BGP ソフトウェアを設定します。

              ステップ 7   bgp bestpath compare-routerid


              例:
              RP/0/RP0/CPU0:router(config-bgp)# bgp bestpath compare-routerid

              類似パスのルータ ID を比較するように自律システムの BGP スピーカーを設定します。

              ステップ 8   commit

              BGP アドミニストレーティブ ディスタンスの設定

              アドミニストレーティブ ディスタンスは、ルーティング情報源の信頼性を示す評価基準です。通常は、値が大きいほど、信頼性の格付けが下がります。一般的にルートは複数のプロトコルによって検出されます。アドミニストレーティブ ディスタンスは、複数のプロトコルから学習したルートを区別するために使用されます。最もアドミニストレーティブ ディスタンスが低いルートが IP ルーティング テーブルに組み込まれます。BGP はデフォルトで、次に示すアドミニストレーティブ ディスタンスを使用します。
              表 1 デフォルトの BGP アドミニストレーティブ ディスタンス

              ディスタンス

              デフォルト値

              機能

              External

              20

              eBGP から学習したルートに適用されます。

              内部

              200

              iBGP から学習したルートに適用されます。

              ローカル

              200

              ルータを起点とするルートに適用されます。


              (注)  


              ディスタンスは BGP パス選択アルゴリズムに影響しませんが、BGP で学習されたルートを IP ルーティング テーブルに組み込むかどうかを左右します。


              あるルートのクラスよりも別のルートのクラスを優先するために使用できるアドミニストレーティブ ディスタンスを使用することを指定するには、次の作業を実行します。
              手順の概要

                1.    configure

                2.    router bgpas-number

                3.    address-family {ipv4 | ipv6} unicast

                4.    distance bgpexternal-distance internal-distance local-distance

                5.    commit


              手順の詳細
                ステップ 1   configure
                ステップ 2   router bgpas-number


                例:
                RP/0/RP0/CPU0:router(config)# router bgp 120

                自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                ステップ 3   address-family {ipv4 | ipv6} unicast

                例:
                RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast

                IPv4 または IPv6 のいずれかのアドレス ファミリ ユニキャストを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                ステップ 4   distance bgpexternal-distance internal-distance local-distance


                例:
                RP/0/RP0/CPU0:router(config-bgp-af)# distance bgp 20 20 200

                あるルートのクラスよりも別のルートのクラスを優先するために外部、内部、およびローカルのアドミニストレーティブ ディスタンスを設定します。値が高いほど、信頼性のランクは低くなります。

                ステップ 5   commit

                BGP バックドア ルートの指定

                通常、eBGP を介して学習されたルートは、ディスタンスを理由として IP ルーティング テーブルに組み込まれます。ただし、2 つの AS には IGP-learned バックドア ルートと eBGP-learned のルートがあります。ポリシーは、IGP-learned パスを優先パスとして使用し、IGP パスが停止しているときに eBGP-learned パスを使用するなどの内容になります。

                外部ボーダー ゲートウェイ プロトコル(eBGP)のアドミニストレーティブ ディスタンスに、ローカルにソースされた BGP ルートのアドミニストレーティブ ディスタンスを設定し、Interior Gateway Protocol(IGP)ルートよりも推奨度を低くするには、次の作業を実行します。

                手順の概要

                  1.    configure

                  2.    router bgpas-number

                  3.    address-family {ipv4 | ipv6} unicast

                  4.    network {ip-address /prefix-length | ip-address mask} backdoor

                  5.    commit


                手順の詳細
                  ステップ 1   configure
                  ステップ 2   router bgpas-number


                  例:
                  RP/0/RP0/CPU0:router(config)# router bgp 120

                  自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                  ステップ 3   address-family {ipv4 | ipv6} unicast

                  例:
                  RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast

                  IPv4 または IPv6 のいずれかのアドレス ファミリを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                  このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                  ステップ 4   network {ip-address /prefix-length | ip-address mask} backdoor

                  例:
                  RP/0/RP0/CPU0:router(config-bgp-af)# network 172.20.0.0/16 

                  指定されたネットワークを作成してアドバタイズするようにローカル ルータを設定します。

                  ステップ 5   commit

                  バックドア:例



                  ここでは、ルータ A と C、ルータ B と C が eBGP を実行しています。ルータ A および B は、IGP を実行しています(ルーティング情報プロトコル(RIP)、Enhanced Interior Gateway Routing Protocol(IGRP)、Enhanced IGRP、または Open Shortest Path First(OSPF)など)。RIP、IGRP、Enhanced IGRP、および OSPF のデフォルト ディスタンスは、それぞれ、120、100、90、および 110 です。これらの距離はすべて eBGP のデフォルト ディスタンス(20)よりも長くなります。通常は、ディスタンスの一番小さいルートが優先されます。

                  ルータ A は、160.10.0.0 に関するアップデートを、eBGP と IGP の 2 つのルーティング プロトコルから受信します。eBGP のデフォルトのディスタンスが IGP のデフォルトのディスタンスよりも低いので、ルータ A はルータ C からの eBGP-learned ルートを選択します。ルータ A にルータ B(IGP)からの 160.10.0.0 について学習させる場合は、BGP バック ドアを確立します。を参照してください

                  次の例では、ネットワーク バックドアが設定されています。

                  RP/0/RP0/CPU0:router(config)# router bgp 100
                  RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast
                  RP/0/RP0/CPU0:router(config-bgp-af)# network 160.10.0.0/16 backdoor
                  

                  ルータ A では、eBGP-learned ルートをローカルとして扱い、ディスタンス 200 で IP ルーティング テーブルに組み込みます。このネットワークは Enhanced IGRP を介しても学習しているため(ディスタンスは 90)、Enhanced IGRP ルートは、IP ルーティング テーブルに正常に組み込まれ、トラフィックの転送に使用されます。Enhanced IGRP-learned ルートが停止すると、eBGP-learned ルートが IP ルーティング テーブルに組み込まれ、トラフィックの転送に使用されます。

                  Although BGP ではネットワーク 160.10.0.0 をローカル エントリとして扱いますが、通常、ローカル エントリをアドバタイズするようにネットワーク 160.10.0.0 をアドバタイズすることはありません。

                  集約アドレスの設定

                  BGP ルーティング テーブルに集約エントリを作成するには、次の作業を実行します。

                  手順の概要

                    1.    configure

                    2.    router bgpas-number

                    3.    address-family {ipv4 | ipv6} unicast

                    4.    aggregate-addressaddress/mask-length [as-set] [as-confed-set] [summary-only] [route-policyroute-policy-name]

                    5.    commit


                  手順の詳細
                    ステップ 1   configure
                    ステップ 2   router bgpas-number


                    例:
                    RP/0/RP0/CPU0:router(config)# router bgp 120

                    自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                    ステップ 3   address-family {ipv4 | ipv6} unicast

                    例:
                    RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast

                    IPv4 または IPv6 のいずれかのアドレス ファミリを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                    このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                    ステップ 4   aggregate-addressaddress/mask-length [as-set] [as-confed-set] [summary-only] [route-policyroute-policy-name]

                    例:
                    RP/0/RP0/CPU0:router(config-bgp-af)# aggregate-address 10.0.0.0/8 as-set

                    集約アドレスを作成します。このルートにアドバタイズされたパスは、集約されるすべてのパスに含まれるすべての要素で構成された自律システム セットです。

                    • as-set キーワードで、自律システム セット パス情報および関係するパスに基づくコミュニティ情報が生成されます。

                    • as-confed-set キーワードによって、関係するパスから自律システム コンフェデレーション セット パス情報が生成されます。

                    • summary-only キーワードによって、アップデートから固有性の強いルートがすべてフィルタリングされます。

                    • route-policyroute-policy-name キーワードおよび引数は、集約ルートの属性の設定に使用されるルート ポリシーを指定します。

                    ステップ 5   commit

                    BGP の自律システム番号形式

                    自律システム番号(ASN)は、自律システム(AS)を識別するために使用されるグローバルに一意な識別子であり、これにより、AS では、ネイバー AS との間で外部ルーティング情報を交換できるようになります。一意の ASN は、BGP ルーティングで使用するために各 AS に割り当てられます。BGP では、ASN を 2 バイトの番号および 4 バイトの番号としてエンコードします。

                    BGP Multi-Instance および Multi-AS

                    Multi-AS BGP を使用すると、Multi-Instance BGP の各インスタンスに異なる AS 番号を設定できるようになります。Multi-Instance および Multi-AS BGP は次の機能を備えています。
                    • 共通ルーティング インフラストラクチャを使用して、複数のルータによって提供されるサービスを単一の IOS-XR ルータに統合するメカニズム。

                    • 異なる BGP インスタンスに異なる AF を設定することにより、AF の分離を実現するメカニズム。

                    • 複数のインスタンス間でピアリング セッション全体を分散させることによって、セッションのスケールを高めることができる手段。

                    • 個々のインスタンスに異なる BGP テーブルを伝送させることにより、プレフィックスのスケール(特に RR で)を高めることができるメカニズム。

                    • 特定の状況における BGP コンバージェンスの改善。

                    • NSR を含むすべての BGP 機能は、すべてのインスタンスに対応しています。

                    • ロードおよびコミット ルータ レベルの操作は、以前に確認または適用された構成上で実行できます。

                    [Restrictions(機能制限)]
                    • ルータは最大 4 つの BGP インスタンスをサポートします。

                    • 各 BGP インスタンスには、固有の ルータ ID が必要です。

                    • 各 BGP インスタンスで設定できるアドレス ファミリは 1 つだけです(VPNv4、VPNv6 および RT 制約は複数の BGP インスタンスで設定できます)。

                    • IPv4/IPv6 ユニキャストは、IPv4/IPv6 ラベル付きユニキャストが設定されている同じ BGP インスタンス内にある必要があります。

                    • IPv4/IPv6 マルチキャストは、IPv4/IPv6 ユニキャストが設定されている同じ BGP インスタンス内にある必要があります。

                    • 単一の BGP インスタンスに対するすべての設定変更を同時にコミットすることができます。ただし、複数のインスタンスに対する設定変更は同時にコミットできません。

                    特定の自律システムに対する複数の BGP インスタンスの設定

                    特定の自律システムに複数の BGP インスタンスを設定するには、次のタスクを実行します。単一の BGP インスタンスに対するすべての設定変更を同時にコミットすることができます。ただし、複数のインスタンスに対する設定変更は同時にコミットできません。

                    手順の概要

                      1.    configure

                      2.    router bgp as-number [instance instance name]

                      3.    commit


                    手順の詳細
                      ステップ 1   configure
                      ステップ 2   router bgp as-number [instance instance name]

                      例:
                      RP/0/RSP0/CPU0:router(config)# router bgp 100 instance inst1

                      ユーザが指定した BGP インスタンスに対し BGP コンフィギュレーション モードを開始します。

                      ステップ 3   commit

                      BGP ルーティング ドメイン コンフェデレーション

                      iBGP メッシュを削減する方法の 1 つとして、ある自律システムを複数の副自律システムに分割し、単一のコンフェデレーションにグループ化することがあげられます。外部からは、このコンフェデレーションは単一の自律システムであるかのように見えます。各自律システムは内部で完全にメッシュ化されていて、同じコンフェデレーション内の他の自律システムとの間には数本の接続があります。異なる自律システム内にあるピアは eBGP セッションを持ちますが、ルーティング情報は iBGP ピアと同様な方法で交換されます。具体的には、ネクスト ホップ、MED、およびローカル プリファレンス情報は維持されます。この機能により、自律システムすべてに対して単一の IGP を保持できます。

                      BGP のルーティング ドメイン コンフェデレーションの設定

                      BGP のルーティング ドメイン コンフェデレーションを設定するには、次の作業を実行します。これには、コンフェデレーション ID の指定と、コンフェデレーションに属す自律システムの指定を含みます。

                      ルーティング ドメイン コンフェデレーションを設定すると、自律システムを複数の自律システムに分割して、これを 1 つのコンフェデレーションにグループ化することによって、内部 BGP(iBGP)メッシュを削減することができます。それぞれの自律システムは、そのシステム自身内で完全にメッシュ化されていて、同じコンフェデレーションの別の自律システムとの接続を数個持ちます。このコンフェデレーションによりネクスト ホップおよびローカル プリファレンス情報が維持され、これにより、すべての自律システムに対して Interior Gateway Protocol(IGP)を 1 つ維持できるようになります。外部からは、このコンフェデレーションは単一の自律システムであるかのように見えます。

                      手順の概要

                        1.    configure

                        2.    router bgpas-number

                        3.    bgp confederation identifieras-number

                        4.    bgp confederation peersas-number

                        5.    commit


                      手順の詳細
                        ステップ 1   configure
                        ステップ 2   router bgpas-number


                        例:
                        RP/0/RP0/CPU0:router# router bgp 120

                        自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                        ステップ 3   bgp confederation identifieras-number


                        例:
                        RP/0/RP0/CPU0:router(config-bgp)# bgp confederation identifier 5

                        BGP コンフェデレーション ID を指定します。

                        ステップ 4   bgp confederation peersas-number


                        例:
                        RP/0/RP0/CPU0:router(config-bgp)# bgp confederation peers 1091
                          RP/0/RP0/CPU0:router(config-bgp)# bgp confederation peers 1092
                          RP/0/RP0/CPU0:router(config-bgp)# bgp confederation peers 1093
                          RP/0/RP0/CPU0:router(config-bgp)# bgp confederation peers 1094
                          RP/0/RP0/CPU0:router(config-bgp)# bgp confederation peers 1095
                          RP/0/RP0/CPU0:router(config-bgp)# bgp confederation peers 1096
                          

                        BGP 自律システムが指定された BGP コンフェデレーション ID に属することを指定します。例に示すように、複数の AS 番号を同じコンフェデレーション ID に関連付けることができます。

                        ステップ 5   commit

                        BGP コンフェデレーション:例

                        次に、コンフェデレーションのいくつかのピアを表示する設定の例を示します。このコンフェデレーションは、自律システム番号 6001、6002、および 6003 の 3 つの内部自律システムから構成されています。コンフェデレーション外の BGP スピーカーには、このコンフェデレーションは(bgp confederation identifier コマンドによって指定される)自律システム番号 666 を持つ通常の自律システムのように見えます。

                        自律システム 6001 の BGP スピーカーで、bgp confederation peers コマンドは、自律システム 6002 および 6003 からのピアを特別な eBGP ピアとしてマークします。したがって、ピア 171.16 .232.55 および 171.16 .232.56 は、ローカル プリファレンス、ネクスト ホップ、および未変更の MED をこの更新で取得します。171 .19 .69.1 のルータは通常の eBGP スピーカーであり、このピアから受け取る更新は、自律システム 666 のピアからの通常の eBGP 更新とまったく同じです。

                          router bgp 6001
                           bgp confederation identifier 666
                           bgp confederation peers 
                            6002
                            6003
                             exit
                           address-family ipv4 unicast
                            neighbor 171.16.232.55 
                            remote-as 6002
                             exit
                           address-family ipv4 unicast
                            neighbor 171.16.232.56 
                            remote-as 6003
                             exit
                           address-family ipv4 unicast
                            neighbor 171.19.69.1 
                            remote-as 777
                          
                          
                        自律システム 6002 の BGP スピーカーでは、自律システム 6001 および 6003 からのピアは特別な eBGP ピアとして設定されます。171 .17 .70.1 は通常の iBGP ピアであり、ピア 199.99.99.2 は自律システム 700 からの通常の eBGP ピアです。
                          router bgp 6002
                           bgp confederation identifier 666
                           bgp confederation peers 
                            6001
                            6003
                             exit
                           address-family ipv4 unicast
                            neighbor 171.17.70.1 
                             remote-as 6002
                             exit
                           address-family ipv4 unicast
                            neighbor 171.19.232.57 
                             remote-as 6001
                             exit
                           address-family ipv4 unicast
                            neighbor 171.19.232.56 
                             remote-as 6003
                             exit
                           address-family ipv4 unicast
                            neighbor 171.19.99.2 
                             remote-as 700
                             exit
                           address-family ipv4 unicast
                            route-policy pass-all in
                            route-policy pass-all out
                          
                          
                        自律システム 6003 の BGP スピーカーでは、自律システム 6001 および 6002 からのピアは特別な eBGP ピアとして設定されます。ピア 192 .168 .200.200 は自律システム 701 からの通常の eBGP ピアです。
                          router bgp 6003
                           bgp confederation identifier 666
                           bgp confederation peers
                            6001
                            6002
                             exit
                           address-family ipv4 unicast
                            neighbor 171.19.232.57 
                             remote-as 6001
                             exit
                           address-family ipv4 unicast
                            neighbor 171.19.232.55 
                             remote-as 6002
                             exit
                           address-family ipv4 unicast
                            neighbor 192.168.200.200 
                             remote-as 701
                             exit
                           address-family ipv4 unicast
                            route-policy pass-all in
                            route-policy pass-all out
                          
                          
                        次に、同じ例の自律システム 701 からの BGP スピーカー 192 .168 .200.205 からの設定の一部を示します。ネイバー 171.16 .232.56 は自律システム 666 からの通常の eBGP スピーカーとして設定されます。コンフェデレーション外部のピアは、この自律システムが複数の自律システムに内部分割されることを認識しません。
                          router bgp 701
                           address-family ipv4 unicast
                            neighbor 172.16.232.56 
                             remote-as 666
                             exit
                           address-family ipv4 unicast
                            route-policy pass-all in
                            route-policy pass-all out
                             exit
                           address-family ipv4 unicast
                            neighbor 192.168.200.205 
                             remote-as 701
                          

                        BGP の追加パス

                        ボーダー ゲートウェイ プロトコル(BGP)の追加パス機能では、1 つのプレフィックスに対して複数のパスを送信できるように、BGP スピーカーの BGP プロトコル機械を変更します。これにより、ネットワークに「パスの多様性」が生まれます。追加パスにより、エッジ ルータでの BGP プレフィックス独立コンバージェンス(PIC)が可能になります。

                        BGP 追加パスでは、iBGP ネットワーク内の追加パス アドバタイズメントが可能になり、プレフィックスに対する次のタイプのパスがアドバタイズされます。

                        • バックアップ パス:高速コンバージェンスおよび接続の回復をイネーブルにします。

                        • グループ最適パス:ルート振動を解決します。

                        • すべてのパス:iBGP フル メッシュをエミュレートします。

                        BGP 追加パスの設定

                        BGP 追加パス機能を設定するには、次の作業を行います。

                        手順の概要

                          1.    configure

                          2.    route-policyroute-policy-name

                          3.    ifconditional-expressionthenaction-statementelse

                          4.    passendif

                          5.    end-policy

                          6.    routerbgpas-number

                          7.    address-family{ipv4 {unicast } | ipv6 {unicast | l2vpn vpls-vpws | vpnv4unicast | vpnv6unicast }

                          8.    additional-paths receive

                          9.    additional-paths send

                          10.    additional-paths selectionroute-policyroute-policy-name

                          11.    commit


                        手順の詳細
                          ステップ 1   configure
                          ステップ 2   route-policyroute-policy-name


                          例:
                          RP/0/RP0/CPU0:router (config)#route-policy add_path_policy

                          ルート ポリシーを定義して、ルート ポリシー コンフィギュレーション モードを開始します。

                          ステップ 3   ifconditional-expressionthenaction-statementelse


                          例:
                          RP/0/RP0/CPU0:router (config-rpl)#if community matches-any (*) then
                              set path-selection all advertise
                            else

                          特定のルートのアクションとディスポジションを決定します。

                          ステップ 4   passendif


                          例:
                          RP/0/RP0/CPU0:router(config-rpl-else)#pass
                          RP/0/RP0/CPU0:router(config-rpl-else)#endif
                          

                          処理のためにルートを渡し、if ステートメントを終了します。

                          ステップ 5   end-policy


                          例:
                          RP/0/RP0/CPU0:router(config-rpl)#end-policy

                          ルート ポリシーの定義を終了して、ルート ポリシー コンフィギュレーション モードを終了します。

                          ステップ 6   routerbgpas-number


                          例:
                          RP/0/RP0/CPU0:router(config)#router bgp 100

                          自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                          ステップ 7   address-family{ipv4 {unicast } | ipv6 {unicast | l2vpn vpls-vpws | vpnv4unicast | vpnv6unicast }

                          例:
                          RP/0/RP0/CPU0:router(config-bgp)#address-family ipv4 unicast

                          アドレス ファミリを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                          ステップ 8   additional-paths receive


                          例:
                          RP/0/RP0/CPU0:router(config-bgp-af)#additional-paths receive

                          対応ピアのプレフィックスのマルチパス受信機能を設定します。

                          ステップ 9   additional-paths send


                          例:
                          RP/0/RP0/CPU0:router(config-bgp-af)#additional-paths send

                          対応ピアのプレフィックスのマルチパス送信機能を設定します。

                          ステップ 10   additional-paths selectionroute-policyroute-policy-name


                          例:
                          RP/0/RP0/CPU0:router(config-bgp-af)#additional-paths selection route-policy add_path_policy

                          プレフィックスの追加パス選択機能を設定します。

                          ステップ 11   commit

                          BGP 最大プレフィックス

                          最大プレフィックス機能では、特定のアドレス ファミリのネイバーから受信されるプレフィックスの数に上限が課されます。受信されるプレフィックスの数が設定した最大数を超えると、停止通知がネイバーに送信された後、BGP セッションが終了します(これはデフォルト動作です)。手動によるクリアがユーザによって実行されるまで、セッションはダウンしたままになります。セッションは、clear bgp コマンドを使用して再開できます。restart キーワードを指定した maximum-prefix コマンドを使用して、セッションを自動的に起動できるまでの期間を設定できます。プレフィックスの上限はユーザが設定できます。ユーザがそのアドレス ファミリに対するプレフィックスの最大数を設定していない場合は、デフォルトの制限値が使用されます。

                          同じ回線で、最大プレフィックス値が変更された場合のアクションを次に示します。

                          • 最大値が単独で変更されると、必要に応じてルート更新メッセージが送信されます。

                          • 新しい最大値が現在のプレフィックス カウント ステートよりも大きい場合、新しいプレフィックス ステートが保存されます。

                          • 新しい最大値が現在のプレフィックス カウント ステートより小さい場合、新しく設定されたステートの値に一致するように、既存のプレフィックスが一部削除されます。

                          どのプレフィックスを削除するかを制御する方法は現在ありません。

                          過剰パスの破棄の設定

                          最大プレフィックス設定での過剰パスの破棄オプションを使用すると、プレフィックスが設定した最大値を超えた場合に、ネイバーから受信された過剰なプレフィックスをすべて廃棄できます。ただし、この廃棄によってセッション フラップが発生することはありません。

                          過剰パスの破棄オプションの利点は次のとおりです。

                          • BGP のメモリ フットスタンプが制限されます。

                          • パスが設定された制限を超えるとピアのフラッピングが停止します。

                          過剰パスの破棄設定が削除されると、BGP は更新機能をサポートしている場合にルート更新メッセージをネイバーに送信します。それ以外の場合、セッションはフラップします。

                          (注)  


                          • ルータがプレフィックスを廃棄すると、ネットワークの残りと一致せず、ルーティング ループが起きる可能性があります。

                          • プレフィックスが廃棄されると、スタンバイおよびアクティブ状態の BGP セッションが別のプレフィックスを廃棄する可能性があります。その結果、NSR スイッチオーバーによって BGP テーブルの矛盾が生じます。

                          • 過剰パスの破棄設定は、ソフト再設定構成と共存できません。


                          BGP 最大プレフィックス過剰パスの破棄を設定するには、次のタスクを実行します。

                          手順の概要

                            1.    configure

                            2.    router bgpas-number

                            3.    neighborip-address

                            4.    address-family {ipv4 | ipv6} unicast

                            5.    maximum-prefixmaximumdiscard-extra-paths

                            6.    commit


                          手順の詳細
                            ステップ 1   configure


                            例:
                            RP/0/RP0/CPU0:router# configure

                            XR コンフィギュレーション モード を開始します。

                            ステップ 2   router bgpas-number


                            例:
                            RP/0/RP0/CPU0:router(config)# router bgp 10 

                            自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                            ステップ 3   neighborip-address


                            例:
                            RP/0/RP0/CPU0:router(config-bgp)# neighbor 10.0.0.1 

                            BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

                            ステップ 4   address-family {ipv4 | ipv6} unicast

                            例:
                            RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast 

                            IPv4 または IPv6 のいずれかのアドレス ファミリを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                            ステップ 5   maximum-prefixmaximumdiscard-extra-paths


                            例:
                            RP/0/RP0/CPU0:router(config-bgp-nbr-af)# maximum-prefix 1000 discard-extra-paths 

                            許可されるプレフィックス数の制限を設定します。

                            最大プレフィックスの制限を超えると過剰パスを破棄するように過剰パスの破棄を設定します。

                            ステップ 6   commit

                            次に、IPv4 アドレス ファミリに対する過剰パスの破棄機能を設定する例を示します。

                            RP/0/RSP0/CPU0:router# configure
                            RP/0/RSP0/CPU0:router(config)# router bgp 10
                            RP/0/RSP0/CPU0:router(config-bgp)# neighbor 10.0.0.1
                            RP/0/RSP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast
                            RP/0/RSP0/CPU0:router(config-bgp-nbr-af)# maximum-prefix 1000 discard-extra-paths
                            RP/0/RSP0/CPU0:router(config-bgp-vrf-af)# commit
                            
                            

                            次の画面出力では、過剰パスの破棄オプションの詳細を示しています。

                            RP/0/0/CPU0:ios# show bgp neighbor 10.0.0.1 
                            
                            BGP neighbor is 10.0.0.1
                            Remote AS 10, local AS 10, internal link
                            Remote router ID 0.0.0.0
                            BGP state = Idle (No best local address found)
                            Last read 00:00:00, Last read before reset 00:00:00
                            Hold time is 180, keepalive interval is 60 seconds
                            Configured hold time: 180, keepalive: 60, min acceptable hold time: 3
                            Last write 00:00:00, attempted 0, written 0
                            Second last write 00:00:00, attempted 0, written 0
                            Last write before reset 00:00:00, attempted 0, written 0
                            Second last write before reset 00:00:00, attempted 0, written 0
                            Last write pulse rcvd not set last full not set pulse count 0
                            Last write pulse rcvd before reset 00:00:00
                            Socket not armed for io, not armed for read, not armed for write
                            Last write thread event before reset 00:00:00, second last 00:00:00
                            Last KA expiry before reset 00:00:00, second last 00:00:00
                            Last KA error before reset 00:00:00, KA not sent 00:00:00
                            Last KA start before reset 00:00:00, second last 00:00:00
                            Precedence: internet
                            Multi-protocol capability not received
                            Received 0 messages, 0 notifications, 0 in queue
                            Sent 0 messages, 0 notifications, 0 in queue
                            Minimum time between advertisement runs is 0 secs
                            
                            For Address Family: IPv4 Unicast
                            BGP neighbor version 0
                            Update group: 0.1 Filter-group: 0.0 No Refresh request being processed
                            Route refresh request: received 0, sent 0
                            0 accepted prefixes, 0 are bestpaths
                            Cumulative no. of prefixes denied: 0. 
                            Prefix advertised 0, suppressed 0, withdrawn 0
                            Maximum prefixes allowed 10 (discard-extra-paths) <<<<<<<<<<<<<<<<<<<<<
                            Threshold for warning message 75%, restart interval 0 min
                            AIGP is enabled
                            An EoR was not received during read-only mode
                            Last ack version 1, Last synced ack version 0
                            Outstanding version objects: current 0, max 0
                            Additional-paths operation: None
                            Send Multicast Attributes
                            
                            Connections established 0; dropped 0
                            Local host: 0.0.0.0, Local port: 0, IF Handle: 0x00000000
                            Foreign host: 10.0.0.1, Foreign port: 0
                            Last reset 00:00:00
                            

                            BGP の最適外部パス

                            最適外部パス機能では、ローカルで選択された最適パスが内部ピアからのパスの場合における、iBGP およびルート リフレクタ ピアへの最適外部パスのアドバタイズメントをサポートしています。BGP では各宛先に対して最適パスを 1 つとバックアップ パスを 1 つ選択します。デフォルトでは、最適パスを 1 つ選択します。さらに、BGP では、1 つのプレフィックスに対する残りの外部パスのうちから別の最適パスを選択します。1 つのパスのみが最適外部パスとして選択され、バックアップ パスとして他の PE に送信されます。BGP では、最適パスが iBGP パスの場合のみ最適外部パスを計算します。最適パスが eBGP パスの場合、最適外部パス計算は不要です。

                            最適外部パスを決定する手順を次に示します。

                            1. プレフィックスに利用可能なパスの全セットから最適パスを決定します。

                            2. 現在の最適パスを除外します。

                            3. このプレフィックスのすべての内部パスを除外します。

                            4. 残りのパスから、現在の最適パスと同じネクスト ホップを持つすべてのパスを除外します。

                            5. 残りのパスのセットに対して最適パス アルゴリズムを再度実行し、最適外部パスを決定します。

                            BGP では、1 つのプレフィックスに対する外部およびコンフェデレーションの BGP パスを考慮して最適外部パスを計算します。BGP では、最適パスおよび最適外部パスを次のようにアドバタイズします。

                            • プライマリ PE 上:プレフィックスの最適パスを内部と外部の両方のピアにアドバタイズ

                            • バックアップ PE 上:あるプレフィックスに対して選択された最適パスを外部ピアにアドバタイズし、このプレフィックスに対して選択された最適外部パスを内部ピアにアドバタイズ

                            最適外部パス アドバタイズメントの設定

                            iBGP およびルートリフレクタ ピアに最適外部パスをアドバタイズするには、次の作業を実行します。

                            手順の概要

                              1.    configure

                              2.    router bgpas-number

                              3.    次のいずれかを実行します。

                              • address-family{ vpnv4 unicast| vpnv6 unicast}
                              • vrfvrf-name{ipv4 unicast|ipv6 unicast}

                              4.    advertise best-external

                              5.    commit


                            手順の詳細
                              ステップ 1   configure
                              ステップ 2   router bgpas-number


                              例:
                              RP/0/RP0/CPU0:router(config)# router bgp 100

                              自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                              ステップ 3   次のいずれかを実行します。
                              • address-family{ vpnv4 unicast| vpnv6 unicast}
                              • vrfvrf-name{ipv4 unicast|ipv6 unicast}


                              例:
                              RP/0/RP0/CPU0:router(config-bgp)# address-family vpnv4 unicast

                              アドレス ファミリまたは VRF アドレス ファミリを指定して、アドレス ファミリまたは VRF アドレス ファミリのコンフィギュレーション サブモードを開始します。

                              ステップ 4   advertise best-external


                              例:
                              RP/0/RP0/CPU0:router(config-bgp-af)# advertise best-external

                              iBGP およびルートリフレクタ ピアに最適外部パスをアドバタイズします。

                              ステップ 5   commit

                              BGP Local Label Retention

                              プライマリ PE-CE リンクが故障した場合、BGP では、プライマリ パスに対応するルートおよびこのルートのローカル ラベルを取り消し、デフォルトでは、ルーティング情報ベース(RIB)および転送情報ベース(FIB)にバックアップ パスをプログラムします。

                              ただし、プライマリ PE のすべての内部ピアがバックアップ パスを新しい最適パスとして使用するように再コンバージェンスするまで、トラフィックは、プライマリ パスに割り当てられたローカル ラベルとともに、引き続きプライマリ PE に転送されます。したがって、プライマリ パスに前に割り当てられていたローカル ラベルは、再コンバージェンス後、設定可能な期間、プライマリ PE 上で保持する必要があります。BGP Local Label Retention 機能を使用すると、ローカル ラベルを指定期間保持できます。時間を指定していない場合、ローカル ラベルは、デフォルト値の 5 分間保持されます。

                              プライマリ パスのローカル ラベル割り当ての保持

                              プライマリ PE で以前にプライマリ パスに割り当てられたローカル ラベルを、再コンバージェンス後に設定期間にわたって保持するには、次の作業を実行します。

                              手順の概要

                                1.    configure

                                2.    router bgpas-number

                                3.    address-family{ vpnv4 unicast| vpnv6 unicast}

                                4.    retain local-labelminutes

                                5.    commit


                              手順の詳細
                                ステップ 1   configure
                                ステップ 2   router bgpas-number


                                例:
                                RP/0/RP0/CPU0:router(config)# router bgp 100

                                自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                ステップ 3   address-family{ vpnv4 unicast| vpnv6 unicast}

                                例:
                                RP/0/RP0/CPU0:router(config-bgp)# address-family vpnv4 unicast

                                アドレス ファミリを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                ステップ 4   retain local-labelminutes


                                例:
                                RP/0/RP0/CPU0:router(config-bgp-af)# retain local-label 10

                                プライマリ PE で以前にプライマリ パスに割り当てられたローカル ラベルを、再コンバージェンス後 10 分間保持します。

                                ステップ 5   commit

                                ローカル ラベル割り当ての保持:例

                                次に、プライマリ PE のプライマリ パスに以前に割り当てたローカル ラベルを再コンバージェンス後 10 分にわたって維持する例を示します。

                                  router bgp 100
                                  address-family l2vpn vpls-vpws
                                    retain local-label 10
                                  end
                                  

                                iBGP マルチパス ロード シェアリング

                                ローカル ポリシーが設定されていないボーダー ゲートウェイ プロトコル(BGP)対応ルータが複数のネットワーク層到達可能性情報(NLRI)を同じ宛先の内部 BGP(iBGP)から受信すると、このルータは 1 つの iBGP パスを最適パスとして選択します。この最適パスは、次にこのルータの IP ルーティング テーブルに組み込まれます。iBGP のマルチパス ロード シェアリング機能を使用すると、BGP 対応ルータでは、複数の iBGP パスを宛先への最適パスとして選択できます。この最適パスまたはマルチパスは、次にこのルータの IP ルーティング テーブルに組み込まれます。

                                iBGP マルチパス ロード シェアリングの参照 その他詳細情報を提供します。

                                iBGP マルチパス ロード シェアリングの設定

                                iBGP マルチパス ロード シェアリングを設定するには、次の作業を実行します。

                                手順の概要

                                  1.    configure

                                  2.    routerbgpas-number

                                  3.    address-family {ipv4|ipv6} {unicast|multicast}

                                  4.    maximum-pathsibgpnumber

                                  5.    commit


                                手順の詳細
                                  ステップ 1   configure
                                  ステップ 2   routerbgpas-number


                                  例:
                                  RP/0/RP0/CPU0:router(config)# router bgp 100

                                  自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                  ステップ 3   address-family {ipv4|ipv6} {unicast|multicast}

                                  例:
                                  RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 multicast

                                  IPv4 または IPv6 のいずれかのアドレス ファミリを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                  ステップ 4   maximum-pathsibgpnumber


                                  例:
                                  RP/0/RP0/CPU0:router(config-bgp-af)# maximum-paths ibgp 30

                                  ロード シェアリング用の iBGP パスの最大数を設定します。

                                  ステップ 5   commit

                                  iBGP マルチパス負荷共有設定:例

                                  次に、負荷共有に 30 のパスが使用されている設定の例を示します。

                                  router bgp 100
                                   address-family ipv4 multicast
                                    maximum-paths ibgp 30
                                   !
                                  !
                                  end
                                  
                                  

                                  ルート ダンプニング

                                  ルート ダンプニングは、インターネットワーク上でのフラッピング ルートの伝搬を最小限に抑える BGP 機能です。ルートの状態が使用可能、使用不可能、使用可能、使用不可能という具合に、繰り返し変化する場合、ルートはフラッピングと見なされます。

                                  たとえば、自律システム 1、自律システム 2、および自律システム 3 の 3 つの BGP 自律システムがあるネットワークについて考えます。自律システム 1 のネットワーク A へのルートがフラッピングする(利用できなくなる)と仮定します。ルート ダンプニングがない状況では、自律システム 1 から自律システム 2 への eBGP ネイバーは、取り消しメッセージを自律システム 2 に送信します。次に自律システム 2 内の境界ルータは、取り消しメッセージを自律システム 3 に伝播します。ネットワーク A へのルートが再出現したとき、自律システム 1 は自律システム 2 に、自律システム 2 は自律システム 3 にアドバタイズメント メッセージを送信します。ネットワーク A へのルートが利用可能になったり不可になったりを繰り返す場合、取り消しメッセージおよびアドバタイズメント メッセージが多数送信されます。ルート フラッピングは、インターネットに接続されたインターネットワークでの問題です。インターネットのバックボーンでルートのフラッピングが生じると、通常、多くのルートに影響を与えるからです。

                                  ルート ダンプニング機能は、次のようにしてフラッピングの問題を最小限に抑えます。ここでも、ネットワーク A へのルートがフラッピングしたと仮定します。(ルート ダンプニングがイネーブルになっている)自律システム 2 内のルータは、ネットワーク A にペナルティ 1000 を割り当てて、履歴状態に移行させます。自律システム 2 内のルータは、引き続きネイバーにルートのステータスをアドバタイズします。ペナルティは累積されます。ルート フラップが非常に頻繁に発生し、ペナルティが設定可能な抑制制限を超える場合は、フラップの発生回数に関係なく、ルータはネットワーク A へのルートのアドバタイズを停止します。このようにして、ルート ダンプニングが発生します。

                                  ネットワーク A に課されたペナルティは再使用制限に達するまで減衰し、達すると同時にそのルートは再びアドバタイズされます。再使用制限の半分の時点で、ネットワーク A へのルートのダンプニング情報が削除されます。


                                  (注)  


                                  ルート ダンプニングがイネーブルの場合は、リセットによってルートが取り消されるときでも、BGP ピアのリセットにペナルティは適用されません。


                                  BGP ルート ダンプニングの設定

                                  BGP ルート ダンプニングを設定してモニタするには、次の作業を実行します。

                                  手順の概要

                                    1.    configure

                                    2.    router bgpas-number

                                    3.    address-family {ipv4 | ipv6} unicast

                                    4.    bgp dampening [half-life [reuse suppress max-suppress-time] | route-policyroute-policy-name]

                                    5.    commit


                                  手順の詳細
                                    ステップ 1   configure
                                    ステップ 2   router bgpas-number


                                    例:
                                    RP/0/RP0/CPU0:router(config)# router bgp 120

                                    自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                    ステップ 3   address-family {ipv4 | ipv6} unicast

                                    例:
                                    RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast

                                    IPv4 または IPv6 のいずれかのアドレス ファミリを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                    このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                                    ステップ 4   bgp dampening [half-life [reuse suppress max-suppress-time] | route-policyroute-policy-name]

                                    例:
                                    RP/0/RP0/CPU0:router(config-bgp-af)# bgp dampening 30 1500 10000 120

                                    指定したアドレス ファミリに対して BGP ダンプニングを設定します。

                                    ステップ 5   commit

                                    BGP ネイバー グループおよびネイバーの設定

                                    BGP ネイバー グループを設定し、ネイバーにネイバー グループの設定を適用するには、次の作業を実行します。ネイバー グループは、ネイバーに関連するアドレス ファミリから独立した設定とアドレス ファミリ固有の設定を持つテンプレートです。

                                    ネイバー グループを設定すると、各ネイバーは、use コマンド経由で設定を継承できるようになります。ネイバー グループを使用するように設定されているネイバーは、デフォルトでネイバー グループの設定すべて(アドレス ファミリに依存しない設定とアドレス ファミリ固有の設定を含む)を継承します。継承された設定を上書きするには、ネイバーに対して直接コマンドを設定するか、または use コマンドを使用して、セッション グループまたはアドレス ファミリ グループを設定します。

                                    ネイバー グループではアドレス ファミリに依存しない設定を行うことができます。アドレス ファミリ固有の設定では、アドレス ファミリ サブモードを開始するようにネイバー グループのアドレス ファミリを設定する必要があります。ネイバー グループ コンフィギュレーション モードでは、ネイバー グループについて、アドレス ファミリに依存しないパラメータを設定できます。ネイバー グループ コンフィギュレーション モードで address-family コマンドを使用します。neighbor group コマンドを使用してネイバー グループ名を指定した後で、オプションをそのネイバー グループに割り当てることができます。


                                    (注)  


                                    指定されたネイバー グループで設定できるコマンドはすべて、ネイバーでも設定できます。


                                    手順の概要

                                      1.    configure

                                      2.    router bgpas-number

                                      3.    address-family {ipv4 | ipv6} unicast

                                      4.    exit

                                      5.    neighbor-groupname

                                      6.    remote-asas-number

                                      7.    address-family {ipv4 | ipv6} unicast

                                      8.    route-policyroute-policy-name {in | out}

                                      9.    exit

                                      10.    exit

                                      11.    neighborip-address

                                      12.    use neighbor-groupgroup-name

                                      13.    remote-asas-number

                                      14.    commit


                                    手順の詳細
                                      ステップ 1   configure
                                      ステップ 2   router bgpas-number


                                      例:
                                      RP/0/RP0/CPU0:router(config)# router bgp 120 

                                      自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                      ステップ 3   address-family {ipv4 | ipv6} unicast

                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast

                                      IPv4 または IPv6 のいずれかのアドレス ファミリ ユニキャストを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                      このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                                      ステップ 4   exit


                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp-af)# exit

                                      現在のコンフィギュレーション モードを終了します。

                                      ステップ 5   neighbor-groupname


                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp)# neighbor-group nbr-grp-A

                                      ルータをネイバー グループ コンフィギュレーション モードにします。

                                      ステップ 6   remote-asas-number


                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp-nbrgrp)# remote-as 2002

                                      ネイバーを作成し、リモート自律システム番号を割り当てます。

                                      ステップ 7   address-family {ipv4 | ipv6} unicast

                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp-nbrgrp)# address-family ipv4 unicast

                                      IPv4 または IPv6 のいずれかのアドレス ファミリ ユニキャストを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                      このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                                      ステップ 8   route-policyroute-policy-name {in | out}

                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp-nbrgrp-af)# route-policy drop-as-1234 in

                                      (任意)指定したポリシーを着信 IPv4 ユニキャスト ルートに適用します。

                                      ステップ 9   exit


                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp-nbrgrp-af)# exit

                                      現在のコンフィギュレーション モードを終了します。

                                      ステップ 10   exit


                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp-nbrgrp)# exit

                                      現在のコンフィギュレーション モードを終了します。

                                      ステップ 11   neighborip-address


                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp)# neighbor 172.168.40.24

                                      BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

                                      ステップ 12   use neighbor-groupgroup-name


                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp-nbr)# use neighbor-group nbr-grp-A

                                      (任意)BGP ネイバーが指定されたネイバー グループから設定を継承することを指定します。

                                      ステップ 13   remote-asas-number


                                      例:
                                      RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 2002

                                      ネイバーを作成し、リモート自律システム番号を割り当てます。

                                      ステップ 14   commit

                                      BGP ネイバー設定:例

                                      情報を共有するように自律システムの BGP ネイバーを設定する例を次に示します。この例では BGP ルータを自律システム 109 に割り当て、自律システムの送信元として 2 つのネットワークのリストが表示される例を示します。3 つのリモート ルータ(とその自律システム)のアドレスのリストが表示されます。設定するルータは隣接ルータとの間でネットワーク 172 .16 .0.0 および 192.168 .7.0 に関する情報を共有します。リストの 1 番目のルータは別の自律システムにあり、2 番目の neighbor および remote-as コマンドによってアドレス 172 .26 .234.2 の内部ネイバー(自律システム番号は同一)が指定され、3 番目の neighbor および remote-as コマンドによって別の自律システムのネイバーが指定されます。

                                        route-policy pass-all 
                                         pass
                                        end-policy
                                        router bgp 109
                                         address-family ipv4 unicast
                                          network 172.16.0.0 255.255.0.0
                                          network 192.16831.7.0 255.255.0.0
                                          neighbor 172.16.200.1 
                                           remote-as 167
                                           exit
                                         address-family ipv4 unicast
                                          route-policy pass-all in
                                          route-policy pass-out out
                                          neighbor 172.26.234.2 
                                           remote-as 109
                                           exit
                                         address-family ipv4 unicast
                                          neighbor 172.26.64.19 
                                           remote-as 99
                                           exit
                                         address-family ipv4 unicast
                                          route-policy pass-all in
                                          route-policy pass-all out
                                        

                                      BGP ネイバーの無効化

                                      設定を削除せずにネイバーを管理シャットダウンするには、次の作業を実行します。

                                      手順の概要

                                        1.    configure

                                        2.    router bgpas-number

                                        3.    neighborip-address

                                        4.    shutdown

                                        5.    commit


                                      手順の詳細
                                        ステップ 1   configure
                                        ステップ 2   router bgpas-number


                                        例:
                                        RP/0/RP0/CPU0:router(config)# router bgp 127

                                        自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                        ステップ 3   neighborip-address


                                        例:
                                        RP/0/RP0/CPU0:router(config-bgp)# neighbor 172.168.40.24

                                        BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

                                        ステップ 4   shutdown


                                        例:
                                        RP/0/RP0/CPU0:router(config-bgp-nbr)# shutdown

                                        指定されたネイバーのすべてのアクティブ セッションをディセーブルにします。

                                        ステップ 5   commit

                                        BGP インバウンド ソフト リセットを使用したネイバーのリセット

                                        指定されたグループまたはネイバーの指定アドレス ファミリに対してインバウンド ソフト リセットをトリガーするには、次の作業を実行ます。グループは、*ip-addressas-number、または external のキーワードおよび引数によって指定されます。

                                        ネイバーのインバウンド ポリシーまたはアウトバウンド ポリシーを変更する場合、またはルーティング アップデートの送信または受信に影響を与えるその他の設定を変更する場合には、ネイバーのリセットが便利です。インバウンド ソフト リセットがトリガーされた場合、ネイバーが ROUTE_REFRESH 機能をアドバタイズしていれば、BGP はデフォルトでこのネイバーに REFRESH 要求を送信します。ネイバーが ROUTE_REFRESH 機能をアドバタイズしているかどうかを判別するには、show bgp neighbors コマンドを使用します。

                                        手順の概要

                                          1.    show bgp neighbors

                                          2.    soft [in [prefix-filter] | out]


                                        手順の詳細
                                           コマンドまたはアクション目的
                                          ステップ 1show bgp neighbors


                                          例:
                                          RP/0/RP0/CPU0:router# show bgp neighbors
                                           

                                          ネイバーから受信したルート リフレッシュ機能がイネーブルであることを確認します。

                                           
                                          ステップ 2soft [in [prefix-filter] | out]

                                          例:
                                          RP/0/RP0/CPU0:router# clear bgp ipv4 unicast 10.0.0.1 soft in
                                           

                                          BGP ネイバーをソフト リセットします。

                                          • * キーワードを指定すると、すべての BGP ネイバーがリセットされます。

                                          • ip-address 引数では、リセットするネイバーのアドレスを指定します。

                                          • as-number 引数では、自律システム番号に一致するすべてのネイバーがリセットされることを指定します。

                                          • external キーワードを指定すると、すべての外部ネイバーをリセットすることが指定されます。

                                           

                                          BGP アウトバウンド ソフト リセットを使用したネイバーのリセット

                                          指定されたグループまたはネイバーの指定アドレス ファミリに対してアウトバウンド ソフト リセットをトリガーするには、次の作業を実行します。グループは、*ip-addressas-number、または external のキーワードおよび引数によって指定されます。

                                          ネイバーのアウトバウンド ポリシーまたはアウトバウンド ポリシーを変更する場合、またはルーティング アップデートの送信または受信に影響を与えるその他の設定を変更する場合には、ネイバーのリセットが便利です。

                                          アウトバウンド ソフト リセットがトリガーされると、BGP は、このアドレス ファミリに対するルートをすべて、指定されたネイバーに再送信します。

                                          ネイバーが ROUTE_REFRESH 機能をアドバタイズしているかどうかを判別するには、show bgp neighbors コマンドを使用します。

                                          手順の概要

                                            1.    show bgp neighbors

                                            2.   


                                          手順の詳細
                                             コマンドまたはアクション目的
                                            ステップ 1show bgp neighbors


                                            例:
                                            RP/0/RP0/CPU0:router# show bgp neighbors
                                             

                                            ネイバーから受信したルート リフレッシュ機能がイネーブルであることを確認します。

                                             
                                            ステップ 2


                                            例:
                                            RP/0/RP0/CPU0:router# clear bgp ipv4 unicast 10.0.0.2 soft out
                                             

                                            BGP ネイバーをソフト リセットします。

                                            • * キーワードを指定すると、すべての BGP ネイバーがリセットされます。

                                            • ip-address 引数では、リセットするネイバーのアドレスを指定します。

                                            • as-number 引数では、自律システム番号に一致するすべてのネイバーがリセットされることを指定します。

                                            • external キーワードを指定すると、すべての外部ネイバーをリセットすることが指定されます。

                                             

                                            BGP ハード リセットを使用したネイバーのリセット

                                            ハード リセットを使用してネイバーをリセットするには、次の作業を実行します。ハード リセットにより、ネイバーへの TCP 接続が削除され、ネイバーから受信したすべてのルートが BGP テーブルから削除され、その後このネイバーとのセッションが再確立されます。キーワード graceful が指定されている場合、ネイバーからのルートは BGP テーブルから即座には削除されませんが、古い(stale である)とマークされます。セッションの再確立後、ネイバーから再受信されなかった古いルートはすべて削除されます。

                                            手順の概要

                                              1.    clear bgp {ipv4 {unicast| labeled-unicast| all | tunneltunnel | mdt} | ipv6unicast | all | labeled-unicast} | all {unicast | multicast | all | labeled-unicast | mdt |tunnel} | vpnv4 unicast | vrf {vrf-name | all} {ipv4unicast| labeled-unicast}| ipv6 unicast} | vpnv6 unicast}{* | ip-address | asas-number | external} [graceful] soft [in [prefix-filter] | out]clear bgp {ipv4 | ipv6} {unicast | labeled-unicast}


                                            手順の詳細
                                            clear bgp {ipv4 {unicast| labeled-unicast| all | tunneltunnel | mdt} | ipv6unicast | all | labeled-unicast} | all {unicast | multicast | all | labeled-unicast | mdt |tunnel} | vpnv4 unicast | vrf {vrf-name | all} {ipv4unicast| labeled-unicast}| ipv6 unicast} | vpnv6 unicast}{* | ip-address | asas-number | external} [graceful] soft [in [prefix-filter] | out]clear bgp {ipv4 | ipv6} {unicast | labeled-unicast}

                                            例:
                                            RP/0/RP0/CPU0:router# clear bgp ipv4 unicast 10.0.0.3 

                                            BGP ネイバーをクリアします。

                                            • * キーワードを指定すると、すべての BGP ネイバーがリセットされます。

                                            • ip-address 引数では、リセットするネイバーのアドレスを指定します。

                                            • as-number 引数では、自律システム番号に一致するすべてのネイバーがリセットされることを指定します。

                                            • external キーワードを指定すると、すべての外部ネイバーをリセットすることが指定されます。

                                            graceful キーワードはグレースフル リスタートを指定します。


                                            ネイバーからのソフトウェアツーストア更新の設定

                                            ネイバーからソフトウェアツーストア更新を受信するように設定するには、次の作業を実行します。

                                            ネイバーがルート リフレッシュに対応している場合は、soft-reconfiguration inbound コマンドによって、ルート リフレッシュ要求がネイバーに送信されるようになります。ネイバーがルート リフレッシュに対応していない場合は、ネイバーが受信ルートを再学習するようにするため、clear bgp soft コマンドを使用してネイバーをリセットする必要があります。


                                            (注)  


                                            ネイバーからのアップデートの保存は、ネイバーがルート リフレッシュに対応しているか、soft-reconfiguration inbound コマンドが設定されている場合にだけ機能します。ネイバーがルート リフレッシュに対応しており、soft-reconfiguration inbound コマンドが設定されていても、このコマンドで always オプションが使用されていない場合は元のルートは格納されません。元のルートはルート リフレッシュ要求によって容易に復元できます。ルート リフレッシュは、ルーティング情報を再送信するためにピアに要求を送信します。soft-reconfiguration inbound コマンドは、変更されていない形式でピアから受信したすべてのパスを保存し、クリアする際にこれらの保存されたパスを参照します。ソフト再設定はメモリに負荷がかかる処理です。


                                            手順の概要

                                              1.    configure

                                              2.    router bgpas-number

                                              3.    neighborip-address

                                              4.    address-family {ipv4 | ipv6} unicast

                                              5.    soft-reconfiguration inbound [always]

                                              6.    commit


                                            手順の詳細
                                              ステップ 1   configure
                                              ステップ 2   router bgpas-number


                                              例:
                                              RP/0/RP0/CPU0:router(config)# router bgp 120 

                                              自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                              ステップ 3   neighborip-address


                                              例:
                                              RP/0/RP0/CPU0:router(config-bgp)# neighbor 172.168.40.24

                                              BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

                                              ステップ 4   address-family {ipv4 | ipv6} unicast

                                              例:
                                              RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast

                                              IPv4 または IPv6 のいずれかのアドレス ファミリ ユニキャストを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                              このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                                              ステップ 5   soft-reconfiguration inbound [always]

                                              例:
                                              RP/0/RP0/CPU0:router(config-bgp-nbr-af)# soft-reconfiguration inbound always

                                              指定したネイバーから受信したアップデートを格納するようにソフトウェアを設定します。ソフト再設定インバウンドを設定すると、ソフトウェアは変更またはフィルタ処理されたルートのほかに、元の変更されていないルートを格納することになります。これにより、インバウンド ポリシーの変更後に「ソフト クリア」を実行できるようになります。

                                              ソフト再設定により、ピアがルート フレッシュに対応していない場合、ソフトウェアはポリシー適用前に受信した更新を格納できます(対応している場合は更新のコピーが格納されます)。always キーワードを使用すると、ルート リフレッシュがピアでサポートされている場合でも、コピーを保存するようソフトウェアに強制します。

                                              ステップ 6   commit

                                              ネイバーの変更の記録

                                              ネイバー変更のロギングはデフォルトでイネーブルになっています。ロギングをオフにするには、log neighbor changes disable コマンドを使用します。ロギングがディセーブルにされている場合にロギングを再びイネーブルにするには、no log neighbor changes disable コマンドを使用します。

                                              ルート ポリシーによる BGP ルート フィルタリングの設定

                                              ルート ポリシーによる BGP ルーティング フィルタリングを設定するには、次の作業を実行します。

                                              手順の概要

                                                1.    configure

                                                2.    route-policyname

                                                3.    end-policy

                                                4.    router bgpas-number

                                                5.    neighborip-address

                                                6.    address-family {ipv4 | ipv6} unicast

                                                7.    route-policyroute-policy-name {in | out}

                                                8.    commit


                                              手順の詳細
                                                 コマンドまたはアクション目的
                                                ステップ 1configure
                                                 
                                                 
                                                ステップ 2route-policyname


                                                例:
                                                RP/0/RP0/CPU0:router(config)# route-policy drop-as-1234
                                                  RP/0/RP0/CPU0:router(config-rpl)# if as-path passes-through '1234' then
                                                  RP/0/RP0/CPU0:router(config-rpl)# apply check-communities
                                                  RP/0/RP0/CPU0:router(config-rpl)# else
                                                  RP/0/RP0/CPU0:router(config-rpl)# pass
                                                  RP/0/RP0/CPU0:router(config-rpl)# endif
                                                  
                                                 

                                                (任意)ルート ポリシーを作成し、ルート ポリシー コンフィギュレーション モードを開始します。このモードではルート ポリシーを定義できます。

                                                 
                                                ステップ 3end-policy


                                                例:
                                                RP/0/RP0/CPU0:router(config-rpl)# end-policy
                                                 

                                                (任意)ルート ポリシーの定義を終了し、ルート ポリシー コンフィギュレーション モードを終了します。

                                                 
                                                ステップ 4router bgpas-number


                                                例:
                                                RP/0/RP0/CPU0:router(config)# router bgp 120
                                                 

                                                自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                 
                                                ステップ 5neighborip-address


                                                例:
                                                RP/0/RP0/CPU0:router(config-bgp)# neighbor 172.168.40.24
                                                 

                                                BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

                                                 
                                                ステップ 6address-family {ipv4 | ipv6} unicast

                                                例:
                                                RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast
                                                 

                                                IPv4 または IPv6 のいずれかのアドレス ファミリ ユニキャストを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                                このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                                                 
                                                ステップ 7route-policyroute-policy-name {in | out}

                                                例:
                                                RP/0/RP0/CPU0:router(config-bgp-nbr-af)# route-policy drop-as-1234 in
                                                 

                                                指定されたポリシーをインバウンド ルートに適用します。

                                                 
                                                ステップ 8commit
                                                 
                                                 

                                                BGP 属性フィルタリングの設定

                                                BGP 属性フィルタは、BGP アップデート メッセージ内の BGP アップデートの整合性を確認し、無効な属性を検出したときは応答を最適化します。BGP アップデート メッセージには、必須およびオプションの属性のリストが含まれています。アップデート メッセージ内のこれらの属性には、MED、LOCAL_PREF、COMMUNITY などがあります。場合によって、属性が不正である場合は、ルータの受信側でこれらの属性をフィルタリングする必要があります。BGP 属性フィルタ機能では、着信アップデート メッセージで受信した属性をフィルタリングします。属性フィルタは、受信側ルータで好ましくない動作を引き起こす可能性のある属性を排除するためにも使用できます。BGP アップデートの中には、ネットワーク層到達可能性情報(NLRI)またはアップデート メッセージ内の他のフィールドなどの誤った形式の属性のために、形式が不正になるものがあります。これらの不正なアップデートを受信すると、受信側ルータで好ましくない動作が発生します。このような不正な動作は、アップデート メッセージの解析時や、受信した NLRI の再アドバタイズ時に発生することがあります。このような場合に備えて、受信側でこれらの破損した属性をフィルタ処理することが重要です。

                                                属性フィルタリングを設定するには、1 つまたはある範囲の属性コードと対応するアクションを指定します。受信したアップデート メッセージに 1 つ以上のフィルタされた属性が含まれている場合、メッセージに対して設定されたアクションが実行されます。オプションで、さらに詳細なデバッグを行うためにアップデート メッセージを保存して、コンソールに syslog メッセージを表示することもできます。属性がフィルタと一致した場合は、属性のその後の処理は停止され、対応するアクションが実行されます。BGP 属性フィルタリングを設定するには、次のタスクを実行します。

                                                手順の概要

                                                  1.    configure

                                                  2.    router bgpas-number

                                                  3.    attribute-filter groupattribute-filter group name

                                                  4.    attributeattribute code {discard |treat-as-withdraw }


                                                手順の詳細
                                                  ステップ 1   configure
                                                  ステップ 2   router bgpas-number


                                                  例:
                                                  RP/0/RP0/CPU0:router(config)# router bgp 100

                                                  自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                  ステップ 3   attribute-filter groupattribute-filter group name


                                                  例:
                                                  RP/0/RP0/CPU0:router(config-bgp)# attribute-filter group ag_discard_med

                                                  属性フィルタ グループ名を指定し、属性フィルタ グループ コンフィギュレーション モードを開始することで、BGP ネイバーに特定の属性フィルタ グループを設定できます。

                                                  ステップ 4   attributeattribute code {discard |treat-as-withdraw }


                                                  例:
                                                  RP/0/RP0/CPU0:router(config-bgp-attrfg)# attribute 24 discard
                                                  単一またはある範囲の属性コードと関連するアクションを指定します。実行できるアクションには次のものがあります。
                                                  • Treat-as-withdraw:アップデート メッセージを取り消すかを検討します。対応する IPv4 ユニキャストまたは MP_REACH NLRI があれば、ネイバーの Adj-RIB-In から取り消します。

                                                  • Discard Attribute:この属性を廃棄します。一致した部分の属性は廃棄され、アップデート メッセージの残りの部分は正常に処理されます。


                                                  BGP ネクスト ホップ トラッキング

                                                  ネクストホップ情報が変更されると、BGP はルーティング情報ベース(RIB)から通知を受信します(イベント駆動型の通知)。BGP は RIB からネクスト ホップ情報を取得して次の処理を行います。

                                                  • ネクスト ホップが到達可能であるかどうかを確認する。

                                                  • ネクスト ホップへの完全再帰 IGP メトリックを見つける(最適パス計算で使用)。

                                                  • 受信したネクスト ホップを検証する。

                                                  • 発信ネクスト ホップを計算する。

                                                  • ネイバーの到達可能性および接続を確認する。

                                                  BGP ネクスト ホップの参照 BGP ネクスト ホップに関する追加の概念的な詳細を提供します。

                                                  BGP ネクスト ホップ トリガー遅延の設定

                                                  BGP ネクスト ホップ トリガー遅延を設定するには、次の作業を実行します。ルーティング情報ベース(RIB)では変更の重大度に基づいてダンプニング通知が分類されます。イベント通知はクリティカルおよび非クリティカルとして分類されます。この作業では、クリティカル イベントと非クリティカル イベントの最小バッチ間隔を指定できます。

                                                  手順の概要

                                                    1.    configure

                                                    2.    router bgpas-number

                                                    3.    address-family {ipv4 | ipv6} unicast

                                                    4.    nexthop trigger-delay {criticaldelay |non-criticaldelay}

                                                    5.    commit


                                                  手順の詳細
                                                    ステップ 1   configure
                                                    ステップ 2   router bgpas-number


                                                    例:
                                                    RP/0/RP0/CPU0:router(config)# router bgp 120

                                                    自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                    ステップ 3   address-family {ipv4 | ipv6} unicast

                                                    例:
                                                    RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast

                                                    IPv4 または IPv6 のいずれかのアドレス ファミリ ユニキャストを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                                    このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                                                    ステップ 4   nexthop trigger-delay {criticaldelay |non-criticaldelay}

                                                    例:
                                                    RP/0/RP0/CPU0:router(config-bgp-af)# nexthop trigger-delay critical 15000

                                                    重要なネクスト ホップ トリガー遅延を設定します。

                                                    ステップ 5   commit

                                                    BGP 更新でのネクスト ホップ処理のディセーブル化

                                                    ネイバーに対するネクスト ホップの計算をディセーブルにし、BGP アップデートのネクスト ホップ フィールドにユーザ自身のアドレスを挿入するには、次の作業を実行します。ルートをアドバタイズするときに使用する最適なネクスト ホップの計算をディセーブルにすると、すべてのルートがネットワーク デバイスによってネクスト ホップとしてアドバタイズされます。


                                                    (注)  


                                                    ネクスト ホップ処理は、アドレス ファミリ グループ、ネイバー グループ、またはネイバー アドレス ファミリに対して無効にすることができます。


                                                    手順の概要

                                                      1.    configure

                                                      2.    router bgpas-number

                                                      3.    neighborip-address

                                                      4.    remote-asas-number

                                                      5.    address-family {ipv4 | ipv6} unicast

                                                      6.    next-hop-self

                                                      7.    commit


                                                    手順の詳細
                                                      ステップ 1   configure
                                                      ステップ 2   router bgpas-number


                                                      例:
                                                      RP/0/RP0/CPU0:router(config)# router bgp 120

                                                      自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                      ステップ 3   neighborip-address


                                                      例:
                                                      RP/0/RP0/CPU0:router(config-bgp)# neighbor 172.168.40.24

                                                      BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

                                                      ステップ 4   remote-asas-number


                                                      例:
                                                      RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 206

                                                      ネイバーを作成し、リモート自律システム番号を割り当てます。

                                                      ステップ 5   address-family {ipv4 | ipv6} unicast

                                                      例:
                                                      RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast

                                                      IPv4 または IPv6 のいずれかのアドレス ファミリ ユニキャストを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                                      このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                                                      ステップ 6   next-hop-self


                                                      例:
                                                      RP/0/RP0/CPU0:router(config-bgp-nbr-af)# next-hop-self

                                                      指定されたネイバーにアドバタイズされるすべてのルートのネクスト ホップ属性をローカル ルータのアドレスに設定します。ルートをアドバタイズするときに使用する最適なネクスト ホップの計算をディセーブルにすると、すべてのルートがローカル ネットワーク デバイスによってネクスト ホップとしてアドバタイズされます。

                                                      ステップ 7   commit

                                                      BGP コスト コミュニティ

                                                      BGP コスト コミュニティは非過渡的な拡張コミュニティ属性で、内部 BGP(iBGP)およびコンフェデレーション ピアへ渡されますが、外部 BGP(eBGP)ピアへは渡されません。コスト コミュニティ機能により、コスト値を特定のルートに割り当てることで、ローカル ルート プリファレンスをカスタマイズし、最適パス選択プロセスに反映させることができます。拡張コミュニティ形式は、最適パス アルゴリズムの異なるポイントでの最適パスの決定に影響する標準の挿入ポイント(POI)を定義します。

                                                      BGP コスト コミュニティの参照 BGP コスト コミュニティに関する追加の概念的な詳細を提供します。

                                                      BGP コスト コミュニティの設定

                                                      BGP は同一宛先への複数のパスを受信し、最適パス アルゴリズムを使用して RIB にインストールする最適なパスを決定します。ユーザが部分比較後に出力点を決定できるようにするため、最適パス選択処理で同等パスのタイブレークのためにコスト コミュニティが定義されます。BGP コスト コミュニティを設定するには、次の作業を実行します。

                                                      手順の概要

                                                        1.    configure

                                                        2.    route-policyname

                                                        3.    set extcommunity cost{cost-extcommunity-set-name | cost-inline-extcommunity-set} [additive]

                                                        4.    end-policy

                                                        5.    router bgpas-number

                                                        6.    次のいずれかを実行します。

                                                        • default-information originate
                                                        • aggregate-addressaddress/mask-length [as-set] [as-confed-set] [summary-only] [route-policyroute-policy-name]
                                                        • redistribute connected [metricmetric-value] [route-policyroute-policy-name]
                                                        • redistribute eigrpprocess-id [match {external | internal}] [metricmetric-value] [route-policyroute-policy-name]
                                                        • redistribute isisprocess-id [level {1 | 1-inter-area | 2}] [metricmetric-value] [route-policyroute-policy-name]
                                                        • redistribute ospfprocess-id [match {external [1 | 2] | internal | nssa-external[1 | 2]}] [metricmetric-value] [route-policyroute-policy-name]

                                                        7.    次のいずれかを実行します。

                                                        • redistribute ospfv3process-id [match {external [1 | 2] | internal | nssa-external [1 | 2]}] [metricmetric-value] [route-policyroute-policy-name]
                                                        • redistribute rip [metricmetric-value] [route-policyroute-policy-name]
                                                        • redistribute static [metricmetric-value] [route-policyroute-policy-name]
                                                        • network {ip-address/prefix-length | ip-address mask} [route-policyroute-policy-name]
                                                        • neighborip-addressremote-asas-number
                                                        • route-policyroute-policy-name {in | out}

                                                        8.    commit

                                                        9.    show bgpip-address


                                                      手順の詳細
                                                        ステップ 1   configure
                                                        ステップ 2   route-policyname


                                                        例:
                                                        RP/0/RP0/CPU0:router(config)# route-policy costA

                                                        ルート ポリシー コンフィギュレーション モードに切り替え、設定するルート ポリシーの名前を指定します。

                                                        ステップ 3   set extcommunity cost{cost-extcommunity-set-name | cost-inline-extcommunity-set} [additive]

                                                        例:
                                                        RP/0/RP0/CPU0:router(config)# set extcommunity cost cost_A

                                                        コストの BGP 拡張コミュニティ属性を指定します。

                                                        ステップ 4   end-policy


                                                        例:
                                                        RP/0/RP0/CPU0:router(config)# end-policy

                                                        ルート ポリシーの定義を終了して、ルート ポリシー コンフィギュレーション モードを終了します。

                                                        ステップ 5   router bgpas-number


                                                        例:
                                                        RP/0/RP0/CPU0:router(config)# router bgp 120

                                                        BGP コンフィギュレーション モードを開始します。このモードでは BGP ルーティング プロセスを設定できます。

                                                        ステップ 6   次のいずれかを実行します。
                                                        • default-information originate
                                                        • aggregate-addressaddress/mask-length [as-set] [as-confed-set] [summary-only] [route-policyroute-policy-name]
                                                        • redistribute connected [metricmetric-value] [route-policyroute-policy-name]
                                                        • redistribute eigrpprocess-id [match {external | internal}] [metricmetric-value] [route-policyroute-policy-name]
                                                        • redistribute isisprocess-id [level {1 | 1-inter-area | 2}] [metricmetric-value] [route-policyroute-policy-name]
                                                        • redistribute ospfprocess-id [match {external [1 | 2] | internal | nssa-external[1 | 2]}] [metricmetric-value] [route-policyroute-policy-name]

                                                        コスト コミュニティを付加ポイント(ルート ポリシー)に適用します。

                                                        ステップ 7   次のいずれかを実行します。
                                                        • redistribute ospfv3process-id [match {external [1 | 2] | internal | nssa-external [1 | 2]}] [metricmetric-value] [route-policyroute-policy-name]
                                                        • redistribute rip [metricmetric-value] [route-policyroute-policy-name]
                                                        • redistribute static [metricmetric-value] [route-policyroute-policy-name]
                                                        • network {ip-address/prefix-length | ip-address mask} [route-policyroute-policy-name]
                                                        • neighborip-addressremote-asas-number
                                                        • route-policyroute-policy-name {in | out}
                                                        ステップ 8   commit
                                                        ステップ 9   show bgpip-address


                                                        例:
                                                        RP/0/RP0/CPU0:router# show bgp 172.168.40.24

                                                        コスト コミュニティを次の形式で表示します。

                                                        Cost:POI:cost-community-ID:cost-number


                                                        BGP コミュニティおよび拡張コミュニティ アドバタイズメントの設定

                                                        コミュニティ属性および拡張コミュニティ属性を eBGP ネイバーに送信することを指定するには、次の作業を実行します。これらの属性は、デフォルトでは eBGP ネイバーに送信されません。これに対して、iBGP ネイバーには常に送信されます。ここでは、コミュニティ属性を送信できるようにする方法の例を示します。拡張コミュニティを送信できるようにするには、send-community-ebgp キーワードを send-extended-community-ebgp キーワードで置き換えます。

                                                        ネイバー グループ、またはアドレス ファミリ グループに対して send-community-ebgp コマンドを設定すると、このグループを使用するすべてのネイバーがこの設定を継承します。あるネイバーに対して特別にこのコマンドを設定すると、継承された値が上書きされます。


                                                        (注)  


                                                        BGP コミュニティと拡張コミュニティ フィルタリングは、iBGP ネイバーには設定できません。コミュニティと拡張コミュニティは、VPNv4、MDT、IPv4、および IPv6 アドレス ファミリでは常に iBGP ネイバーに送信されます。


                                                        手順の概要

                                                          1.    configure

                                                          2.    router bgpas-number

                                                          3.    neighborip-address

                                                          4.    remote-asas-number

                                                          5.    address-family{ipv4 {labeled-unicast | unicast | mdt | | mvpn | rt-filter | tunnel}| ipv6 {labeled-unicast | mvpn | unicast}}

                                                          6.    次のいずれかのコマンドを使用します。

                                                          • send-community-ebgp
                                                          • send-extended-community-ebgp

                                                          7.    commit


                                                        手順の詳細
                                                          ステップ 1   configure
                                                          ステップ 2   router bgpas-number


                                                          例:
                                                          RP/0/RP0/CPU0:router(config)# router bgp 120

                                                          自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                          ステップ 3   neighborip-address


                                                          例:
                                                          RP/0/RP0/CPU0:router(config-bgp)# neighbor 172.168.40.24

                                                          BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

                                                          ステップ 4   remote-asas-number


                                                          例:
                                                          RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 2002 

                                                          ネイバーを作成し、リモート自律システム番号を割り当てます。

                                                          ステップ 5   address-family{ipv4 {labeled-unicast | unicast | mdt | | mvpn | rt-filter | tunnel}| ipv6 {labeled-unicast | mvpn | unicast}}

                                                          例:
                                                          RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv6 unicast

                                                          指定のアドレス ファミリに対応しネイバー アドレス ファミリ コンフィギュレーション モードを開始します。ipv4 または ipv6 アドレス ファミリ キーワードと、指定したアドレス ファミリ サブモードの ID の 1 つを使用します。

                                                          IPv6 アドレス ファミリ モードでは、次のサブモードをサポートしています。
                                                          • labeled-unicast

                                                          • mvpn

                                                          • unicast

                                                          IPv4 アドレス ファミリ モードでは、次のサブモードをサポートしています。
                                                          • labeled-unicast

                                                          • mdt

                                                          • mvpn

                                                          • rt-filter

                                                          • tunnel

                                                          • unicast

                                                          ステップ 6   次のいずれかのコマンドを使用します。
                                                          • send-community-ebgp
                                                          • send-extended-community-ebgp


                                                          例:
                                                          RP/0/RP0/CPU0:router(config-bgp-nbr-af)# send-community-ebgp

                                                          または

                                                          RP/0/RP0/CPU0:router(config-bgp-nbr-af)# send-extended-community-ebgp

                                                          ルータが(デフォルトでは eBGP ネイバーでディセーブルにされている)コミュニティ属性と拡張コミュニティ属性を指定された eBGP ネイバーに送信することを指定します。

                                                          ステップ 7   commit

                                                          IGP への iBGP ルートの再配布

                                                          Intermediate System-to-Intermediate System(IS-IS)や Open Shortest Path First(OSPF)など、内部ゲートウェイ プロトコル(IGP)に iBGP ルートを再配布するには、次の作業を実行します。


                                                          (注)  


                                                          bgp redistribute-internal コマンドを使用するには、すべての BGP ルートを IP ルーティング テーブルに再インストールするために、clear route * コマンドを発行する必要があります。



                                                          注意    


                                                          IGP への iBGP ルートの再配布は、自律システム内にルーティング ループが作成される原因となる可能性があります。このコマンドの使用には注意が必要です。


                                                          手順の概要

                                                            1.    configure

                                                            2.    router bgpas-number

                                                            3.    bgp redistribute-internal

                                                            4.    commit


                                                          手順の詳細
                                                            ステップ 1   configure
                                                            ステップ 2   router bgpas-number


                                                            例:
                                                            RP/0/RP0/CPU0:router(config)# router bgp 120

                                                            自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                            ステップ 3   bgp redistribute-internal


                                                            例:
                                                            RP/0/RP0/CPU0:router(config-bgp)# bgp redistribute-internal

                                                            IGP(IS-IS や OSPF など)への iBGP ルートの再配布を許可します。

                                                            ステップ 4   commit

                                                            BGP への IGP の再配布

                                                            VRF アドレス ファミリへのプロトコルの再配布を設定するには、次の作業を実行します。

                                                            内部ゲートウェイ プロトコル(IGP)が PE-CE プロトコルとして使用されている場合でも、インポート ロジックは BGP を経由して実行されます。したがって、すべての IGP ルートを BGP VRF テーブルにインポートする必要があります。

                                                            手順の概要

                                                              1.    configure

                                                              2.    router bgpas-number

                                                              3.    vrfvrf-name

                                                              4.    address-family {ipv4 | ipv6} unicast

                                                              5.    次のいずれかを実行します。

                                                              • redistribute connected [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute eigrpprocess-id [match {external | internal}] [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute isisprocess-id [level {1 | 1-inter-area | 2}] [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute ospfprocess-id [match {external [1 | 2] | internal | nssa-external [1 | 2]}] [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute ospfv3process-id [match {external [1 | 2] | internal | nssa-external [1 | 2]}] [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute rip [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute static [metricmetric-value] [route-policyroute-policy-name]

                                                              6.    commit


                                                            手順の詳細
                                                              ステップ 1   configure
                                                              ステップ 2   router bgpas-number


                                                              例:
                                                              RP/0/RP0/CPU0:router(config)# router bgp 120

                                                              自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                              ステップ 3   vrfvrf-name


                                                              例:
                                                              RP/0/RP0/CPU0:router(config-bgp)# vrf vrf_a

                                                              PE ルータで特定の VRF の BGP ルーティングをイネーブルにします。

                                                              ステップ 4   address-family {ipv4 | ipv6} unicast

                                                              例:
                                                              RP/0/RP0/CPU0:router(config-vrf)# address-family ipv4 unicast

                                                              IPv4 または IPv6 のいずれかのアドレス ファミリ ユニキャストを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                                              このコマンドのすべてのキーワードと引数のリストを参照するには、CLI ヘルプ(?)を使用します。

                                                              ステップ 5   次のいずれかを実行します。
                                                              • redistribute connected [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute eigrpprocess-id [match {external | internal}] [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute isisprocess-id [level {1 | 1-inter-area | 2}] [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute ospfprocess-id [match {external [1 | 2] | internal | nssa-external [1 | 2]}] [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute ospfv3process-id [match {external [1 | 2] | internal | nssa-external [1 | 2]}] [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute rip [metricmetric-value] [route-policyroute-policy-name]
                                                              • redistribute static [metricmetric-value] [route-policyroute-policy-name]


                                                              例:
                                                              RP/0/RP0/CPU0:router(config-bgp-vrf-af)# redistribute eigrp 23 

                                                              VRF アドレス ファミリ コンテキストでプロトコルの再配布を設定します。

                                                              redistribute コマンドは、PE-CE ルータ間で BGP が使用されていない場合に使用します。PE-CE ルータ間で BGP が使用されている場合は、使用されている IGP を BGP に再配布して、他方の PE サイトとの VPN 接続を確立する必要があります。テーブル間でのインポートおよびエクスポートにも再配布が必要です。

                                                              ステップ 6   commit

                                                              アップデート グループ

                                                              BGP アップデート グループ機能には、アウトバウンド ポリシーを共有し、アップデート メッセージを共有できるネイバーのアップデート グループをダイナミックに計算し、最適化する新しいアルゴリズムが含まれています。BGP アップデート グループ機能では、アップデート グループ レプリケーションはピア グループ コンフィギュレーションから分離されるため、ネイバー コンフィギュレーションのコンバージェンス時間が短縮され、柔軟性が高まります。

                                                              BGP アップデート グループのモニタリング

                                                              この作業では、BGP アップデート グループの処理に関する情報を表示します。

                                                              手順の概要

                                                                1.    show bgp [ipv4 {unicast | multicast | all | tunnel} | ipv6 {unicast | all } | all {unicast | multicast | alllabeled-unicast | tunnel} | vpnv4 unicast | vrf {vrf-name | all} [ipv4unicastipv6 unicast] | vpvn6 unicast ]update-group[neighborip-address | process-id.index[summary | performance-statistics]]


                                                              手順の詳細
                                                              show bgp [ipv4 {unicast | multicast | all | tunnel} | ipv6 {unicast | all } | all {unicast | multicast | alllabeled-unicast | tunnel} | vpnv4 unicast | vrf {vrf-name | all} [ipv4unicastipv6 unicast] | vpvn6 unicast ]update-group[neighborip-address | process-id.index[summary | performance-statistics]]

                                                              例:
                                                              RP/0/RP0/CPU0:router# show bgp update-group 0.0

                                                              BGP アップデート グループの情報を表示します。

                                                              • ip-address 引数を指定すると、そのネイバーが属するアップデート グループが表示されます。

                                                              • process-id.index 引数では、表示する特定のアップデート グループを選択します。この引数は「プロセス ID(ドット)インデックス」の形式で指定します。プロセス ID の範囲は 0 ~ 254 です。インデックスの範囲は 0 ~ 4294967295 です。

                                                              • summary キーワードを指定すると、特定のアップデート グループに含まれているネイバーに関する要約情報が表示されます。

                                                              • このコマンドに引数を指定しないと、(指定したアドレス ファミリの)すべてのアップデート グループの情報が表示されます。

                                                              • performance-statistics キーワードを指定すると、アップデート グループのパフォーマンス統計情報が表示されます。


                                                              BGP アップデート グループの表示:例

                                                              次に、EXEC コンフィギュレーションXR EXEC モードで実行された show bgp update-group コマンドの出力例を示します。

                                                                
                                                               show bgp update-group
                                                                
                                                                Update group for IPv4 Unicast, index 0.1:
                                                                  Attributes:
                                                                    Outbound Route map:rm
                                                                    Minimum advertisement interval:30
                                                                  Messages formatted:2, replicated:2
                                                                  Neighbors in this update group:
                                                                    10.0.101.92
                                                                
                                                                Update group for IPv4 Unicast, index 0.2:
                                                                  Attributes:
                                                                    Minimum advertisement interval:30
                                                                  Messages formatted:2, replicated:2
                                                                  Neighbors in this update group:
                                                                    10.0.101.91
                                                                

                                                              BGP キーチェーン

                                                              BGP キーチェーンを使用すると、2 つの BGP ピア間のキーチェーン認証がイネーブルになります。BGP のエンドポイントは、どちらも draft-bonica-tcp-auth-05.txt を順守する必要があり、一方のエンドポイントのキーチェーンと、もう一方のエンドポイントのパスワードは機能しません。

                                                              BGP では、認証にこのキーチェーンを使用して、ヒットレス キー ロールオーバーを実装できます。キー ロールオーバーの仕様は時間に基づいているため、ピア間で時計のずれがあるとロールオーバーのプロセスに影響します。許容値の指定を設定できるため、承認時間枠をその分だけ(前後に)拡張できます。この承認時間枠により、アプリケーション(ルーティング プロトコルおよび管理プロトコルなど)のヒットレス キー ロールオーバーが容易になります。

                                                              キーのロール オーバーは、エンドポイントでのキーチェーン設定の不一致が原因でセッション トラフィック(送信または受信)で使用する共通のキーがない場合を除き、BGP セッションには影響しません。

                                                              BGP のキーチェーンの設定

                                                              キーチェーンは、さまざまな MAC 認証アルゴリズムをサポートして安全な認証を実現し、円滑なキー ロールオーバーを実装します。BGP のキーチェーンを設定するには、次の作業を実行します。このタスクはオプションです。


                                                              (注)  


                                                              ネイバー グループまたはセッション グループのキーチェーンが設定されている場合、そのグループを使用するネイバーはキーチェーンを継承します。あるネイバーのために特別に設定されたコマンドの値は、継承された値を上書きします。


                                                              手順の概要

                                                                1.    configure

                                                                2.    router bgpas-number

                                                                3.    neighborip-address

                                                                4.    remote-asas-number

                                                                5.    keychainname

                                                                6.    commit


                                                              手順の詳細
                                                                ステップ 1   configure
                                                                ステップ 2   router bgpas-number


                                                                例:
                                                                RP/0/RP0/CPU0:router(config)# router bgp 120

                                                                自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                                ステップ 3   neighborip-address


                                                                例:
                                                                RP/0/RP0/CPU0:router(config-bgp)# neighbor 172.168.40.24

                                                                BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

                                                                ステップ 4   remote-asas-number


                                                                例:
                                                                RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 2002

                                                                ネイバーを作成し、リモート自律システム番号を割り当てます。

                                                                ステップ 5   keychainname


                                                                例:
                                                                RP/0/RP0/CPU0:router(config-bgp-nbr)# keychain kych_a

                                                                キーチェーンに基づく認証を設定します。

                                                                ステップ 6   commit

                                                                BGP Accept Own の設定

                                                                BGP Accept Own 機能を使用すると、自動送信 VPN ルート(BGP スピーカーがルート リフレクタ(RR)から受信するルート)を処理できるようになります。「自動送信」ルートは、スピーカー自体によって最初にアドバタイズされたルートです。BGP プロトコル(RFC4271)に従って、BGP スピーカーは、スピーカー自体によって送信されたアドバタイズメントを拒否します。ただし、BGP Accept Own メカニズムを使用すると、プレフィックスの特定の属性を変更するルート リフレクタから反映された場合に、ルータは自身がアドバタイズしたプレフィックスを受け入れることが可能になります。ACCEPT-OWN と呼ばれる特別なコミュニティがルート リフレクタによってプレフィックスに付加されます。これは ORIGINATOR_ID および NEXTHOP/MP_REACH_NLRI チェックをバイパスするための受信側ルータに対する信号です。通常、BGP スピーカーは自動送信されたプレフィックスを自動送信チェック(ORIGINATOR_ID、NEXTHOP/MP_REACH_NLRI)によって検出し、受信した更新をドロップします。ただし、更新に Accept Own コミュニティがあれば、BGP スピーカーはそのルートを処理します。

                                                                BGP Accept Own の応用例の 1 つは、MPLS VPN ネットワーク内のエクストラネットの自動設定です。エクストラネットの設定では、ある VRF にあるルートは同じ PE の別の VRF にインポートされます。通常、エクストラネットのメカニズムでは、別の VRF からのプレフィックスのインポートを制御するために、エクストラネット VRF のインポート RT またはインポート ポリシーを編集する必要があります。ただし、Accept Own 機能を使用すると、ルート リフレクタは、PE で設定変更することなく、その制御をアサートできます。このように Accept Own 機能によって、異なる VRF 間でのルートのインポートの制御を集中管理できます。


                                                                (注)  


                                                                BGP Accept Own 機能は、ネイバー コンフィギュレーション モードの VPNv4 および VPNv6 アドレス ファミリ向けにのみサポートされています。


                                                                BGP Accept Own を設定するには、次の作業を実行します。

                                                                手順の概要

                                                                  1.    configure

                                                                  2.    router bgpas-number

                                                                  3.    neighborip-address

                                                                  4.    remote-asas-number

                                                                  5.    update-sourcetypeinterface-path-id

                                                                  6.    address-family {vpnv4 unicast | vpnv6 unicast}

                                                                  7.    accept-own [inheritance-disable]


                                                                手順の詳細
                                                                  ステップ 1   configure
                                                                  ステップ 2   router bgpas-number


                                                                  例:
                                                                  RP/0/RP0/CPU0:router(config)#router bgp 100

                                                                  自律システム番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                                  ステップ 3   neighborip-address


                                                                  例:
                                                                  RP/0/RP0/CPU0:router(config-bgp)#neighbor 10.1.2.3

                                                                  BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

                                                                  ステップ 4   remote-asas-number


                                                                  例:
                                                                  RP/0/RP0/CPU0:router(config-bgp-nbr)#remote-as 100

                                                                  ネイバーにリモート自律システム番号を割り当てます。

                                                                  ステップ 5   update-sourcetypeinterface-path-id


                                                                  例:
                                                                  RP/0/RP0/CPU0:router(config-bgp-nbr)#update-source Loopback0

                                                                  ネイバーでセッションを形成するとき、特定のインターフェイスからのプライマリ IP アドレスをローカル アドレスとしてセッションで使用できます。

                                                                  ステップ 6   address-family {vpnv4 unicast | vpnv6 unicast}

                                                                  例:
                                                                  RP/0/RP0/CPU0:router(config-bgp-nbr)#address-family vpnv6 unicast

                                                                  アドレス ファミリを VPNv4 または IPv6 として指定し、ネイバー アドレス ファミリのコンフィギュレーション モードを開始します。

                                                                  ステップ 7   accept-own [inheritance-disable]

                                                                  例:
                                                                  RP/0/RP0/CPU0:router(config-bgp-nbr-af)#accept-own

                                                                  Accept_Own コミュニティが含まれる自動送信 VPN ルートの処理をイネーブルにします。

                                                                  「Accept Own」設定をディセーブルにし、親コンフィギュレーションから「Accept Own」が継承されないようにするには、inheritance-disable キーワードを使用します。


                                                                  BGP Accept Own の設定:例



                                                                  この設定例の内容は次のとおりです。
                                                                  • PE11 にカスタマー VRF とサービス VRF が設定されています。

                                                                  • OSPF は IGP として使用されます。

                                                                  • VPNv4 ユニキャストおよび VPNv6 ユニキャストのアドレス ファミリが PE ネイバーと RR ネイバーとの間でイネーブルになっており、IPv4 および IPv6 が PE ネイバーと CE ネイバーとの間でイネーブルになっています。

                                                                  Accept Own の設定は次のように動作します。
                                                                  1. CE1 がプレフィックス X を発信します。

                                                                  2. プレフィックス X は、カスタマー VRF に (RD1:X) として設定されています。

                                                                  3. プレフィックス X は IntraAS-RR11 に (RD1:X, RT1) としてアドバタイズされます。

                                                                  4. IntraAS-RR11 が InterAS-RR1 に X を (RD1:X, RT1) としてアドバタイズします。

                                                                  5. InterAS-RR1 はインバウンドのプレフィックス X とアウトバウンドの ACCEPT_OWN コミュニティに RT2 を付加し、IntraAS-RR31 にプレフィックス X をアドバタイズします。

                                                                  6. IntraAS-RR31 が PE11 に X をアドバタイズします。

                                                                  7. PE11 は X をサービス VRF に (RD2:X,RT1, RT2, ACCEPT_OWN) としてインストールします。

                                                                  次に、BGP Accept Own を PE ルータに設定する例を示します。

                                                                  router bgp 100
                                                                   neighbor 45.1.1.1
                                                                     remote-as 100
                                                                     update-source Loopback0
                                                                     address-family vpnv4 unicast
                                                                      route-policy pass-all in
                                                                      accept-own
                                                                      route-policy drop_111.x.x.x out
                                                                     !
                                                                     address-family vpnv6 unicast
                                                                      route-policy pass-all in
                                                                      accept-own
                                                                      route-policy drop_111.x.x.x out
                                                                     !
                                                                    !
                                                                  次の例は、BGP Accept Own のための InterAS-RR の設定を示しています。
                                                                  router bgp 100
                                                                   neighbor 45.1.1.1
                                                                    remote-as 100
                                                                    update-source Loopback0
                                                                    address-family vpnv4 unicast
                                                                     route-policy rt_stitch1 in
                                                                     route-reflector-client
                                                                     route-policy add_bgp_ao out
                                                                    !
                                                                    address-family vpnv6 unicast
                                                                     route-policy rt_stitch1 in
                                                                     route-reflector-client
                                                                     route-policy add_bgp_ao out
                                                                    !
                                                                   !
                                                                  extcommunity-set rt cs_100:1
                                                                    100:1
                                                                  end-set
                                                                  !
                                                                  extcommunity-set rt cs_1001:1
                                                                    1001:1
                                                                  end-set
                                                                  !
                                                                  route-policy rt_stitch1
                                                                    if extcommunity rt matches-any cs_100:1 then
                                                                      set extcommunity rt cs_1000:1 additive
                                                                   endif
                                                                  end-policy
                                                                  !
                                                                  route-policy add_bgp_ao
                                                                    set community (accept-own) additive
                                                                  end-policy
                                                                  !
                                                                  

                                                                  BGP リンクステート

                                                                  BGP リンクステート(LS)は、BGP を介して内部ゲートウェイ プロトコル(IGP)リンクステート データベースを伝えるために定義されたアドレス ファミリ識別子(AFI)およびサブアドレス ファミリ識別子(SAFI)です。BGP LS は、ネットワーク トポロジ情報をトポロジ サーバおよびアプリケーション層トラフィック最適化(ALTO)サーバに提供します。BGP LS では、集約、情報の非表示、および抽象化に対するポリシー ベースの制御が可能です。BGP LS は、IS-IS および OSPFv2 をサポートしています。


                                                                  (注)  


                                                                  IGP は、リモート ピアからの BGP LS データを使用しません。BGP は、ルータの他のコンポーネントに受信した BGP LS データをダウンロードしません。

                                                                  BGP リンク ステートの設定

                                                                  BGP リンクステート(LS)情報を BGP ネイバーと交換するには、次のステップを実行します。

                                                                  手順の概要

                                                                    1.    configure

                                                                    2.    router bgp as-number

                                                                    3.    neighbor ip-address

                                                                    4.    remote-as as-number

                                                                    5.    address-family link-state link-state

                                                                    6.    commit


                                                                  手順の詳細
                                                                    ステップ 1   configure
                                                                    ステップ 2   router bgp as-number


                                                                    例:
                                                                    RP/0/RP0/CPU0:router(config)# router bgp 100
                                                                    
                                                                    

                                                                    BGP AS 番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                                    ステップ 3   neighbor ip-address


                                                                    例:
                                                                    RP/0/RP0/CPU0:router(config-bgp)# neighbor 10.0.0.2
                                                                    
                                                                    

                                                                    CE ネイバーを設定します。ip-address 引数は、プライベート アドレスである必要があります。

                                                                    ステップ 4   remote-as as-number


                                                                    例:
                                                                    RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 1
                                                                    
                                                                    

                                                                    CE ネイバーのリモート AS を設定します。

                                                                    ステップ 5   address-family link-state link-state


                                                                    例:
                                                                    RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family link-state link-state
                                                                    
                                                                    

                                                                    BGP リンクステート情報を指定されたネイバーに配布します。

                                                                    ステップ 6   commit

                                                                    ドメイン識別子の設定

                                                                    固有識別子 4 オクテット ASN を設定するには、次のステップを実行します。

                                                                    手順の概要

                                                                      1.    configure

                                                                      2.    router bgp as-number

                                                                      3.    address-family link-state link-state

                                                                      4.    domain-distinguisher unique-id

                                                                      5.    commit


                                                                    手順の詳細
                                                                      ステップ 1   configure
                                                                      ステップ 2   router bgp as-number


                                                                      例:
                                                                      RP/0/RP0/CPU0:router(config)# router bgp 100
                                                                      
                                                                      

                                                                      BGP AS 番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                                      ステップ 3   address-family link-state link-state


                                                                      例:
                                                                      RP/0/RP0/CPU0:router(config-bgp)# address-family link-state link-state
                                                                      
                                                                      

                                                                      アドレスファミリ リンクステート コンフィギュレーション モードを開始します。

                                                                      ステップ 4   domain-distinguisher unique-id


                                                                      例:
                                                                      RP/0/RP0/CPU0:router(config-bgp-af)# domain-distinguisher 1234
                                                                      
                                                                      

                                                                      固有識別子 4 オクテット ASN を設定します。範囲は 1 ~ 4294967295 です。

                                                                      ステップ 5   commit

                                                                      BGP パーマネント ネットワーク

                                                                      BGP パーマネント ネットワーク機能は、BGP 経由のスタティック ルーティングをサポートしています。(ルート ポリシーで識別された)IPv4 または IPv6 宛先への BGP ルートは、管理用に作成して、BGP ピアに選択的にアドバタイズできます。これらのルートは、管理上削除されるまでルーティング テーブルに残ります。パーマネント ネットワークは、プレフィックスのセットを永続的なものとして定義するために使用されます。つまり、プレフィックスのセットのアップストリームにおいて BGP のアドバタイズメントまたは取り消しは 1 回しかありません。プレフィックス セットの各ネットワークに対し、BGP 固定パスが作成され、優先度はそのピアから受信される他の BGP パスよりも低く扱われます。BGP 固定パスが最適パスである場合は RIB にダウンロードされます。

                                                                      グローバル アドレス ファミリ コンフィギュレーション モードの permanent-network コマンドは、ルート ポリシーを使用して固定パスが設定されるプレフィックス(ネットワーク)のセットを識別します。ネイバー アドレス ファミリ コンフィギュレーション モードの advertise permanent-network コマンドは、固定パスをアドバタイズする必要があるピアを識別するために使用されます。別の最適パスが使用可能であっても、固定パスは常にアドバタイズ パーマネント ネットワーク設定を持つピアにアドバタイズされます。固定パスは、固定パスを受信するように設定されていないピアにはアドバタイズされません。

                                                                      パーマネント ネットワーク機能は、デフォルトの仮想ルーティングおよび転送(VRF)下の IPv4 ユニキャストおよび IPv6 ユニキャスト アドレス ファミリ内のプレフィックスのみをサポートします。

                                                                      [Restrictions(機能制限)]

                                                                      次の制限は、パーマネント ネットワークの設定時に適用されます。

                                                                      • パーマネント ネットワーク プレフィクスは、グローバル アドレス ファミリでルート ポリシーによって指定する必要があります。

                                                                      • グローバル アドレス ファミリ コンフィギュレーション モードでルート ポリシーを使用してパーマネント ネットワークを構成し、それをネイバー アドレス ファミリ コンフィギュレーション モードで設定する必要があります。

                                                                      • パーマネント ネットワーク設定を削除する場合は、ネイバー アドレス ファミリ コンフィギュレーション モードの設定を削除してから、グローバル アドレス ファミリ コンフィギュレーション モードから削除します。

                                                                      BGP パーマネント ネットワークの設定

                                                                      BGP パーマネント ネットワークを設定するには、次のタスクを実行します。パーマネント ネットワーク(パス)が設定されるプレフィックス(ネットワーク)のセットを識別するには、少なくとも 1 つのルート ポリシーを設定する必要があります。

                                                                      手順の概要

                                                                        1.    configure

                                                                        2.    prefix-set prefix-set-name

                                                                        3.    exit

                                                                        4.    route-policy route-policy-name

                                                                        5.    end-policy

                                                                        6.    router bgp as-number

                                                                        7.    address-family { ipv4 | ipv6 } unicast

                                                                        8.    permanent-network route-policy route-policy-name

                                                                        9.    commit

                                                                        10.    show bgp {ipv4 | ipv6} unicast prefix-set


                                                                      手順の詳細
                                                                        ステップ 1   configure
                                                                        ステップ 2   prefix-set prefix-set-name


                                                                        例:
                                                                        RP/0/RP0/CPU0:router(config)# prefix-set PERMANENT-NETWORK-IPv4
                                                                        RP/0/RP0/CPU0:router(config-pfx)# 1.1.1.1/32,
                                                                        RP/0/RP0/CPU0:router(config-pfx)# 2.2.2.2/32,
                                                                        RP/0/RP0/CPU0:router(config-pfx)# 3.3.3.3/32
                                                                        RP/0/RP0/CPU0:router(config-pfx)# end-set
                                                                        
                                                                        

                                                                        プレフィックス セット コンフィギュレーション モードを開始し、連続したビット セットと非連続のビット セットに対しプレフィックス セットを定義します。

                                                                        ステップ 3   exit


                                                                        例:
                                                                        RP/0/RP0/CPU0:router(config-pfx)# exit
                                                                        
                                                                        

                                                                        プレフィックス セット コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードを開始します。

                                                                        ステップ 4   route-policy route-policy-name


                                                                        例:
                                                                        RP/0/RP0/CPU0:router(config)# route-policy POLICY-PERMANENT-NETWORK-IPv4
                                                                        RP/0/RP0/CPU0:router(config-rpl)# if destination in PERMANENT-NETWORK-IPv4 then
                                                                        RP/0/RP0/CPU0:router(config-rpl)# pass
                                                                        RP/0/RP0/CPU0:router(config-rpl)# endif
                                                                         
                                                                        

                                                                        ルート ポリシーを作成し、ルート ポリシー コンフィギュレーション モードを開始します。このモードではルート ポリシーを定義できます。

                                                                        ステップ 5   end-policy


                                                                        例:
                                                                        RP/0/RP0/CPU0:router(config-rpl)# end-policy
                                                                        
                                                                        

                                                                        ルート ポリシーの定義を終了して、ルート ポリシー コンフィギュレーション モードを終了します。

                                                                        ステップ 6   router bgp as-number


                                                                        例:
                                                                        RP/0/RP0/CPU0:router(config)# router bgp 100
                                                                        
                                                                        

                                                                        自律システム番号を指定して、BGP コンフィギュレーション モードを開始します。

                                                                        ステップ 7   address-family { ipv4 | ipv6 } unicast


                                                                        例:
                                                                        RP/0/RP0/CPU0:router(config-bgp)# address-family ipv4 unicast
                                                                        
                                                                        

                                                                        IPv4 または IPv6 のいずれかのアドレス ファミリ ユニキャストを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                                                        ステップ 8   permanent-network route-policy route-policy-name


                                                                        例:
                                                                        RP/0/RP0/CPU0:router(config-bgp-af)# permanent-network route-policy POLICY-PERMANENT-NETWORK-IPv4
                                                                        
                                                                        

                                                                        ルート ポリシーで定義されているプレフィックスのセットに対しパーマネント ネットワーク(パス)を設定します。

                                                                        ステップ 9   commit
                                                                        ステップ 10   show bgp {ipv4 | ipv6} unicast prefix-set


                                                                        例:
                                                                        RP/0/RP0/CPU0:routershow bgp ipv4 unicast 
                                                                        
                                                                        

                                                                        (オプション)プレフィックス セットが BGP でパーマネント ネットワークであるかどうかを表示します。


                                                                        パーマネント ネットワークのアドバタイズ

                                                                        固定パスがアドバタイズされる必要があるピアを識別するには、このタスクを実行します。

                                                                        手順の概要

                                                                          1.    configure

                                                                          2.    router bgp as-number

                                                                          3.    neighbor ip-address

                                                                          4.    remote-as as-number

                                                                          5.    address-family { ipv4 | ipv6 } unicast

                                                                          6.    advertise permanent-network

                                                                          7.    commit

                                                                          8.    show bgp {ipv4 | ipv6} unicast neighbor ip-address


                                                                        手順の詳細
                                                                          ステップ 1   configure
                                                                          ステップ 2   router bgp as-number


                                                                          例:
                                                                          RP/0/RP0/CPU0:router(config)# router bgp 100
                                                                          
                                                                          

                                                                          自律システム番号を指定して、BGP コンフィギュレーション モードを開始します。

                                                                          ステップ 3   neighbor ip-address


                                                                          例:
                                                                          RP/0/RP0/CPU0:router(config-bgp)# neighbor 10.255.255.254
                                                                          
                                                                          

                                                                          BGP ルーティングのためにルータをネイバー コンフィギュレーション モードにして、ネイバーの IP アドレスを BGP ピアとして設定します。

                                                                          ステップ 4   remote-as as-number


                                                                          例:
                                                                          RP/0/RP0/CPU0:router(config-bgp-nbr)# remote-as 4713
                                                                          
                                                                          

                                                                          ネイバーをリモート自律システム番号に割り当てます。

                                                                          ステップ 5   address-family { ipv4 | ipv6 } unicast


                                                                          例:
                                                                          RP/0/RP0/CPU0:router(config-bgp-nbr)# address-family ipv4 unicast
                                                                          
                                                                          

                                                                          IPv4 または IPv6 のいずれかのアドレス ファミリ ユニキャストを指定し、アドレス ファミリのコンフィギュレーション サブモードを開始します。

                                                                          ステップ 6   advertise permanent-network


                                                                          例:
                                                                          RP/0/RP0/CPU0:router(config-bgp-nbr-af)# advertise permanent-network
                                                                          
                                                                          

                                                                          パーマネント ネットワーク(パス)がアドバタイズされるピアを指定します。

                                                                          ステップ 7   commit
                                                                          ステップ 8   show bgp {ipv4 | ipv6} unicast neighbor ip-address


                                                                          例:
                                                                          RP/0/RP0/CPU0:routershow bgp ipv4 unicast neighbor 10.255.255.254
                                                                          
                                                                          

                                                                          (オプション)ネイバーが BGP パーマネント ネットワークを受信できるかどうかを表示します。


                                                                          RPKI に基づく BGP プレフィックスの発信元検証

                                                                          BGP ルートは、BGP アナウンスメントの形で、プレフィックスが経由したドメイン間パスを識別する自律システム(AS)の設定と、アドレス プレフィックスを関連付けます。この設定は、BGP 内で AS_PATH 属性として表され、プレフィックスを発信した AS で開始されます。

                                                                          誤ったプレフィックスのアナウンス、中間者攻撃など、BGP に対する既知の脅威を低減しやすくするためのセキュリティ要件の 1 つは、BGP ルートの発信元 AS を検証する能力です。アドレス プレフィックスの発信元であるとする AS 番号(BGP ルートの AS_PATH 属性から導出)は、プレフィックスの所有者によって検証および許可される必要があります。Resource Public Key Infrastructure(RPKI)は、IP アドレスとリソースとしての AS 番号の公的で検証可能なデータベースを構築するためのアプローチです。RPKI は、BGP(インターネット)プレフィックスから許可された元の AS 番号への情報マッピングなどの情報を含む、グローバルに分散されたデータベースです。BGP を実行しているルータは、RPKI に接続して、BGP パスの元の AS を検証できます。

                                                                          RPKI キャッシュ サーバの設定

                                                                          リソース公開キー インフラストラクチャ(RPKI)キャッシュ サーバ パラメータを設定するには、次の作業を実行します。

                                                                          RPKI サーバのコンフィギュレーション モードで RPKI キャッシュ サーバ パラメータを設定します。RPKI サーバのコンフィギュレーション モードを開始するには、ルータ BGP コンフィギュレーション モードで rpkiserver コマンドを使用します。

                                                                          手順の概要

                                                                            1.    configure

                                                                            2.    routerbgpas-number

                                                                            3.    rpkicache {host-name | ip-address}

                                                                            4.    次のいずれかのコマンドを使用します。

                                                                            • transportsshportport_number
                                                                            • transporttcpportport_number

                                                                            5.    (任意) usernameuser_name

                                                                            6.    (任意) password

                                                                            7.    preferencepreference_value

                                                                            8.    purge-timetime

                                                                            9.    次のいずれかのコマンドを使用します。

                                                                            • refresh-timetime
                                                                            • refresh-timeoff

                                                                            10.    次のいずれかのコマンドを使用します。

                                                                            • response-timetime
                                                                            • response-timeoff

                                                                            11.    Shutdown

                                                                            12.    commit


                                                                          手順の詳細
                                                                            ステップ 1   configure
                                                                            ステップ 2   routerbgpas-number


                                                                            例:
                                                                            RP/0/RP0/CPU0:router(config)#router bgp 100

                                                                            BGP AS 番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                                            ステップ 3   rpkicache {host-name | ip-address}

                                                                            例:
                                                                            RP/0/RP0/CPU0:router(config-bgp)#rpki server 10.2.3.4 

                                                                            RPKI サーバのコンフィギュレーション モードを開始し、RPKI のキャッシュ パラメータを設定します。

                                                                            ステップ 4   次のいずれかのコマンドを使用します。
                                                                            • transportsshportport_number
                                                                            • transporttcpportport_number


                                                                            例:
                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#transport ssh port 1

                                                                            または

                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#transport tcp port 2
                                                                            RPKI キャッシュの転送方法を指定します。
                                                                            • ssh:SSH を使用して RPKI キャッシュに接続するには ssh を選択します。

                                                                            • tcp:TCP を使用して(暗号化せずに)RPKI キャッシュに接続するには tcp を選択します。

                                                                            • portport_number:指定された RPKI キャッシュ転送に使用するポート番号を指定します。ssh と tcp の両方で指定可能なポート番号の範囲は 1 ~ 65535 です。

                                                                            (注)     

                                                                            transport には TCP と SSH のいずれかを設定できます。transport を変更すると、キャッシュ セッションがフラップします。

                                                                            ステップ 5   (任意)usernameuser_name


                                                                            例:
                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#username ssh_rpki_cache

                                                                            RPKI キャッシュ サーバの(SSH)ユーザ名を指定します。

                                                                            ステップ 6   (任意)password


                                                                            例:
                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#password ssh_rpki_pass

                                                                            RPKI キャッシュ サーバの(SSH)パスワードを指定します。

                                                                            (注)     

                                                                            「username」と「password」の設定は、SSH 転送方式がアクティブな場合にのみ適用されます。

                                                                            ステップ 7   preferencepreference_value


                                                                            例:
                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#preference 1

                                                                            RPKI キャッシュのプリファレンス値を指定します。プリファレンス値の範囲は 1 ~ 10 です。設定するプリファレンス値は低い方が適切です。

                                                                            ステップ 8   purge-timetime


                                                                            例:
                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#purge-time 30

                                                                            キャッシュ セッションのドロップ後に、BGP がキャッシュからのルートを保持するまで待機する時間を設定します。破棄時間は秒単位で設定します。破棄時間の範囲は 30 ~ 360 秒です。

                                                                            ステップ 9   次のいずれかのコマンドを使用します。
                                                                            • refresh-timetime
                                                                            • refresh-timeoff


                                                                            例:
                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#refresh-time 20

                                                                            または

                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#refresh-time off

                                                                            キャッシュへの定期的なシリアル クエリー送信操作の間に BGP が待機する時間を設定します。リフレッシュの時間を秒単位で設定します。リフレッシュの時間の範囲は 15 ~ 3600 秒です。

                                                                            シリアル クエリーを定期的に送信しないように指定するには off オプションを設定します。

                                                                            ステップ 10   次のいずれかのコマンドを使用します。
                                                                            • response-timetime
                                                                            • response-timeoff


                                                                            例:
                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#response-time 30

                                                                            または

                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#response-time off

                                                                            シリアルまたはリセットのクエリーを送信した後に BGP が応答を待機する時間を設定します。応答時間を秒の単位で設定します。応答時間の範囲は 15 ~ 3600 秒です。

                                                                            応答を無期限に待機するには off オプションを設定します。

                                                                            ステップ 11   Shutdown


                                                                            例:
                                                                            RP/0/RP0/CPU0:router(config-bgp-rpki-server)#shutdown

                                                                            RPKI キャッシュのシャット ダウンを設定します。

                                                                            ステップ 12   commit

                                                                            RPKI プレフィックス検証の設定

                                                                            RPKI プレフィックス検証処理の動作を制御するには、次の作業を実行します。

                                                                            手順の概要

                                                                              1.    configure

                                                                              2.    routerbgpas-number

                                                                              3.    次のいずれかのコマンドを使用します。

                                                                              • rpkiorigin-asvalidationdisable
                                                                              • rpkiorigin-asvalidationtime {off | prefix_validation_time

                                                                              4.    origin-asvaliditysignalibgp

                                                                              5.    commit


                                                                            手順の詳細
                                                                              ステップ 1   configure
                                                                              ステップ 2   routerbgpas-number


                                                                              例:
                                                                              RP/0/RP0/CPU0:router(config)#router bgp 100

                                                                              BGP AS 番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                                              ステップ 3   次のいずれかのコマンドを使用します。
                                                                              • rpkiorigin-asvalidationdisable
                                                                              • rpkiorigin-asvalidationtime {off | prefix_validation_time


                                                                              例:
                                                                              RP/0/RP0/CPU0:router(config-bgp)#rpki origin-as validation disable

                                                                              または

                                                                              RP/0/RP0/CPU0:router(config-bgp)#rpki origin-as validation time 50

                                                                              または

                                                                              RP/0/RP0/CPU0:router(config-bgp)#rpki origin-as validation time off
                                                                              BGP origin-AS 検証パラメータを設定します。
                                                                              • disable:RPKI origin-AS 検証をディセーブルにするには disable オプションを使用します。

                                                                              • time:プレフィックス検証時間(秒単位)を設定するか、または RPKI 更新後の自動プレフィックス検証をオフに設定するには、time オプションを使用します。

                                                                                プレフィックス検証時間の範囲は 5 ~ 60 秒です。

                                                                                disable オプションを設定すると、すべての eBGP パスのプレフィックス検証がディセーブルになり、すべての eBGP パスはデフォルトで「有効」としてマークされます。

                                                                                (注)     

                                                                                rpki origin-as 検証オプションはネイバーおよびネイバー アドレス ファミリ サブモードでも設定できます。このネイバーは eBGP ネイバーでなければなりません。ネイバーまたはネイバー アドレス ファミリ レベルでプレフィックス検証が設定される場合、プレフィックス検証の disable オプションと time オプションはその特定のネイバーまたはネイバー アドレス ファミリでのみ有効になります。

                                                                              ステップ 4   origin-asvaliditysignalibgp


                                                                              例:
                                                                              RP/0/RP0/CPU0:router(config-bgp)#rpki origin-as validity signal ibgp

                                                                              拡張コミュニティへの有効性状態の iBGP シグナリングをイネーブルにします。

                                                                              これはグローバル アドレス ファミリ サブモードでも設定できます。

                                                                              ステップ 5   commit

                                                                              RPKI 最適パス計算の設定

                                                                              RPKI 最適パス計算オプションを設定するには、次の作業を実行します。

                                                                              手順の概要

                                                                                1.    configure

                                                                                2.    routerbgpas-number

                                                                                3.    rpkibestpathuseorigin-asvalidity

                                                                                4.    rpkibestpathorigin-asallowinvalid

                                                                                5.    commit


                                                                              手順の詳細
                                                                                ステップ 1   configure
                                                                                ステップ 2   routerbgpas-number


                                                                                例:
                                                                                RP/0/RP0/CPU0:router(config)#router bgp 100

                                                                                BGP AS 番号を指定し、BGP コンフィギュレーション モードを開始します。このモードでは、BGP ルーティング プロセスを設定できます。

                                                                                ステップ 3   rpkibestpathuseorigin-asvalidity


                                                                                例:
                                                                                RP/0/RP0/CPU0:router(config-bgp)#rpki bestpath use origin-as validity

                                                                                BGP 最適パス処理でのパスのプリファレンスに影響する BGP パスの有効性状態をイネーブルにします。この設定は、ルータ BGP アドレス ファミリ サブモードでも設定できます。

                                                                                ステップ 4   rpkibestpathorigin-asallowinvalid


                                                                                例:
                                                                                RP/0/RP0/CPU0:router(config-bgp)#rpki bestpath origin-as allow invalid
                                                                                すべての「無効な」パスを BGP 最適パス計算対象にします。
                                                                                (注)     

                                                                                この設定はグローバル アドレス ファミリ、ネイバー、およびネイバー アドレス ファミリの各サブモードでも設定できます。ルータ BGP とアドレス ファミリ サブモードで rpki bestpath origin-as allow invalid を設定すると、すべての「無効な」パスが BGP 最適パス計算対象になります。デフォルトではこのようなパスは最適パス候補になりません。ネイバーまたはネイバー アドレス ファミリ サブモードで pki bestpath origin-as を設定すると、その特定のネイバーまたはネイバー アドレス ファミリのすべての「無効な」パスが最適パス候補として見なされます。このネイバーは eBGP ネイバーでなければなりません。

                                                                                この設定は、rpkibestpathuse origin-asvalidity 設定がイネーブルの場合にのみ有効になります。

                                                                                ステップ 5   commit

                                                                                リンク障害後の eBGP セッションの即時リセット

                                                                                デフォルトでは、リンクがダウンすると、直接隣接する外部ピアの BGP セッションはすべて即時にリセットされます。自動リセットをディセーブルにするには bgp fast-external-fallover disable コマンドを使用します。自動リセットをイネーブルにするには no bgp fast-external-fallover disable コマンドを使用します。

                                                                                BGP タイマー値が 10 および 30 に設定されているノードで eBGP セッションの数が 3500 に達すると、eBGP セッションはフラップします。3500 を超える数の eBGP セッションに対応するには、lpts pifib hardware police location location-id コマンドを使用してパケット レートを大きくします。eBGP セッションを増加する設定の例を次に示します。
                                                                                RP/0/RP0/CPU0:router#configure 
                                                                                RP/0/RP0/CPU0:router(config)#lpts pifib hardware police location 0/2/CPU0
                                                                                RP/0/RP0/CPU0:router(config-pifib-policer-per-node)#flow bgp configured rate 4000
                                                                                RP/0/RP0/CPU0:router(config-pifib-policer-per-node)#flow bgp known rate 4000
                                                                                RP/0/RP0/CPU0:router(config-pifib-policer-per-node)#flow bgp default rate 4000
                                                                                RP/0/RP0/CPU0:router(config-pifib-policer-per-node)#commit

                                                                                BGP の実装に関する概要

                                                                                BGP を実装するには、次の概念を理解する必要があります。

                                                                                BGP ルータ ID

                                                                                ネイバー間に BGP セッションを確立するには、BGP にルータ ID を割り当てる必要があります。ルータ ID は、BGP セッションが確立されると、OPEN メッセージに含めて BGP ピアに送信されます。

                                                                                BGP は次の方法(プリファレンス順)でルータ ID の取得を試みます。

                                                                                • ルータ コンフィギュレーション モードで bgp router-id コマンドを使用して設定されたアドレスを使用する。

                                                                                • 保存されたループバック アドレス設定を使用してルータがブートされた場合に、システムのループバック インターフェイス上の最大の IPv4 アドレスを使用する。

                                                                                • 保存された設定に存在しない場合に、設定される最初のループバック アドレスのプライマリ IPv4 アドレスを使用する。

                                                                                このいずれの方法でもルータ ID を取得できない場合、BGP はルータ ID を持たず、BGP ネイバーとのピアリング セッションを確立できません。そのような場合は、エラー メッセージがシステム ログに記録され、show bgp summary コマンドでは、ルータ ID として 0.0.0.0 が表示されます。ルータ ID を取得した BGP では、さらに適したルータ ID が使用可能になっても、同じルータ ID の使用を続行します。この使用方法によって、いずれの BGP セッションでも不要なフラッピングが発生しないようにします。一方、現在使用中のルータ ID が無効になった場合(インターフェイスがダウンするか、設定が変更されたことによる)、BGP では新しいルータ ID を選択し(上記のルールを使用)、確立したすべてのピアリング セッションをリセットします。


                                                                                (注)  


                                                                                ルータ ID の不要な変更(およびそれによる BGP セッションのフラッピング)を避けるために、bgp router-id コマンドを設定することを、強く推奨します。


                                                                                BGP のデフォルト制限

                                                                                BGP では、ルータに設定できるネイバーの最大数、および特定のアドレス ファミリのピアから受け入れるプレフィックスの最大数に制限を設定しています。この制限は、ルータにとって、ローカルまたはリモート ネイバーのいずれかの設定ミスに起因する、リソースの枯渇に対する予防措置となります。BGP 設定には、次の制限が適用されます。

                                                                                • 設定できるピアのデフォルトの最大数は 100 です。このデフォルトは、bgp maximum neighbor コマンドを使用して変更できます。最大制限値を超えてさらにピアを設定しようとしたり、現在設定されているピアの数未満の最大制限値を設定しようとしたりすると失敗します。

                                                                                • アドバタイズメントによりピアが BGP をフラッディングしないようにするために、サポートされているアドレス ファミリごとに、1 つのピアから受け入れるプレフィックスの数に対する制限が課されます。デフォルトの制限値は、該当するアドレス ファミリのピアに対して maximum-prefix limit コマンドを設定することにより、上書きできます。ユーザがそのアドレス ファミリに対するプレフィックスの最大数を設定していない場合は、次のデフォルト制限値が使用されます。
                                                                                  • IPv4 プレフィックス:128 K

                                                                                  • IPv6 プレフィックス:64 K

                                                                                  特定のアドレス ファミリのピアから受信したプレフィックスの数が、このアドレス ファミリに対する最大制限値(デフォルト設定またはユーザ設定のいずれかによる)を超えると、停止通知メッセージがそのネイバーに送信され、このネイバーとのピアリングが終了されます。

                                                                                  特定のアドレス ファミリのネイバーとのピアリングが確立され、そのネイバーから一定数のプレフィックスをすでに受信した後で、そのネイバーのプレフィックスの最大数が設定されていることがあります。設定されたプレフィックスの最大数が、アドレス ファミリのネイバーからすでに受信したプレフィックスの数よりも小さい場合は、設定直後に停止通知メッセージがそのネイバーに送信され、そのネイバーとのピアリングが終了されます。

                                                                                BGP 属性と演算子

                                                                                このテーブルでは、接続点ごとの BGP 属性と演算子をまとめます。



                                                                                表 2 BGP 属性と演算子

                                                                                接続点

                                                                                属性

                                                                                一致

                                                                                Set

                                                                                aggregation

                                                                                as-path

                                                                                in

                                                                                is-local

                                                                                length

                                                                                neighbor-is

                                                                                originates-from

                                                                                passes-through

                                                                                unique-length

                                                                                as-path-length

                                                                                is、ge、le、eq

                                                                                as-path-unique-length

                                                                                is、ge、le、eq

                                                                                community

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                セット

                                                                                set additive

                                                                                delete in

                                                                                delete not in

                                                                                delete all

                                                                                destination

                                                                                in

                                                                                extcommunity cost

                                                                                セット

                                                                                set additive

                                                                                local-preference

                                                                                is、ge、le、eq

                                                                                セット

                                                                                med

                                                                                is、eg、ge、le

                                                                                setset +set -

                                                                                next-hop

                                                                                in

                                                                                セット

                                                                                origin

                                                                                is

                                                                                セット

                                                                                source

                                                                                in

                                                                                suppress-route

                                                                                suppress-route

                                                                                weight

                                                                                セット

                                                                                allocate-label

                                                                                as-path

                                                                                in

                                                                                is-local

                                                                                length

                                                                                neighbor-is

                                                                                originates-from

                                                                                passes-through

                                                                                unique-length

                                                                                as-path-length

                                                                                is、ge、le、eq

                                                                                as-path-unique-length

                                                                                is、ge、le、eq

                                                                                community

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                destination

                                                                                in

                                                                                label

                                                                                セット

                                                                                local-preference

                                                                                is、ge、le、eq

                                                                                med

                                                                                is、eg、ge、le

                                                                                next-hop

                                                                                in

                                                                                origin

                                                                                is

                                                                                source

                                                                                in

                                                                                clear-policy

                                                                                as-path

                                                                                in

                                                                                is-local

                                                                                length

                                                                                neighbor-is

                                                                                originates-from

                                                                                passes-through

                                                                                unique-length

                                                                                as-path-length

                                                                                is、ge、le、eq

                                                                                as-path-unique-length

                                                                                is、ge、le、eq

                                                                                dampening

                                                                                as-path

                                                                                in

                                                                                is-local

                                                                                length

                                                                                neighbor-is

                                                                                originates-from

                                                                                passes-through

                                                                                unique-length

                                                                                as-path-length

                                                                                is、ge、le、eq

                                                                                as-path-unique-length

                                                                                is、ge、le、eq

                                                                                community

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                dampening

                                                                                —/

                                                                                set dampening

                                                                                destination

                                                                                in

                                                                                local-preference

                                                                                is、ge、le、eq

                                                                                med

                                                                                is、eg、ge、le

                                                                                next-hop

                                                                                in

                                                                                origin

                                                                                is

                                                                                source

                                                                                in

                                                                                debug

                                                                                destination

                                                                                in

                                                                                default originate

                                                                                med

                                                                                セット

                                                                                set +

                                                                                set -

                                                                                rib-has-route

                                                                                in

                                                                                neighbor-in

                                                                                as-path

                                                                                in

                                                                                is-local

                                                                                length

                                                                                該当なし

                                                                                neighbor-is

                                                                                originates-from

                                                                                passes-through

                                                                                unique-length

                                                                                prepend

                                                                                prepend most-recent

                                                                                remove as-path private-as

                                                                                replace

                                                                                as-path-length

                                                                                is、ge、le、eq

                                                                                as-path-unique-length

                                                                                is、ge、le、eq

                                                                                communitycommunity with ‘peeras’

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                セット

                                                                                set additive

                                                                                delete-in

                                                                                delete-not-in

                                                                                delete-all

                                                                                destination

                                                                                in

                                                                                extcommunity cost

                                                                                セット

                                                                                set additive

                                                                                extcommunity rt

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                matches-within

                                                                                セット

                                                                                additive

                                                                                delete-in

                                                                                delete-not-in

                                                                                delete-all

                                                                                extcommunity soo

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                matches-within

                                                                                local-preference

                                                                                is、ge、le、eq

                                                                                セット

                                                                                med

                                                                                is、eg、ge、le

                                                                                セット

                                                                                set +

                                                                                set -

                                                                                next-hop

                                                                                in

                                                                                セット

                                                                                set peer address

                                                                                origin

                                                                                is

                                                                                セット

                                                                                route-aggregated

                                                                                route-aggregated

                                                                                該当なし

                                                                                source

                                                                                in

                                                                                weight

                                                                                セット

                                                                                neighbor-out

                                                                                as-path

                                                                                in

                                                                                is-local

                                                                                length

                                                                                neighbor-is

                                                                                originates-from

                                                                                passes-through

                                                                                unique-length

                                                                                prepend

                                                                                prepend most-recent

                                                                                remove as-path private-as

                                                                                replace

                                                                                as-path-length

                                                                                is、ge、le、eq

                                                                                as-path-unique-length

                                                                                is、ge、le、eq

                                                                                communitycommunity with ‘peeras’

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                セット

                                                                                set additive

                                                                                delete-in

                                                                                delete-not-in

                                                                                delete-all

                                                                                destination

                                                                                in

                                                                                extcommunity cost

                                                                                セット

                                                                                set additive

                                                                                extcommunity rt

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                matches-within

                                                                                セット

                                                                                additive

                                                                                delete-in

                                                                                delete-not-in

                                                                                delete-all

                                                                                extcommunity soo

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                matches-within

                                                                                local-preference

                                                                                is、ge、le、eq

                                                                                セット

                                                                                med

                                                                                is、eg、ge、le

                                                                                セット

                                                                                set +

                                                                                set -

                                                                                set max-unreachable

                                                                                set igp-cost

                                                                                next-hop

                                                                                in

                                                                                セット

                                                                                set self

                                                                                origin

                                                                                is

                                                                                セット

                                                                                path-type

                                                                                is

                                                                                rd

                                                                                in

                                                                                route-aggregated

                                                                                route-aggregated

                                                                                source

                                                                                in

                                                                                unsuppress-route

                                                                                unsuppress-route

                                                                                vpn-distinguisher

                                                                                セット

                                                                                neighbor-orf

                                                                                orf-prefix

                                                                                in

                                                                                n/a

                                                                                network

                                                                                as-path

                                                                                prepend

                                                                                community

                                                                                セット

                                                                                set additive

                                                                                delete-in

                                                                                delete-not-in

                                                                                delete-all

                                                                                destination

                                                                                in

                                                                                extcommunity cost

                                                                                セット

                                                                                set additive

                                                                                mpls-label

                                                                                route-has-label

                                                                                local-preference

                                                                                セット

                                                                                med

                                                                                セット

                                                                                set+

                                                                                set-

                                                                                next-hop

                                                                                in

                                                                                セット

                                                                                origin

                                                                                セット

                                                                                route-type

                                                                                is

                                                                                tag

                                                                                is、ge、le、eq

                                                                                weight

                                                                                セット

                                                                                next-hop

                                                                                destination

                                                                                in

                                                                                プロトコル

                                                                                is、in

                                                                                source

                                                                                in

                                                                                redistribute

                                                                                as-path

                                                                                prepend

                                                                                community

                                                                                セット

                                                                                set additive

                                                                                delete in

                                                                                delete not in

                                                                                delete all

                                                                                destination

                                                                                in

                                                                                extcommunity cost

                                                                                setset additive

                                                                                local-preference

                                                                                セット

                                                                                med

                                                                                セット

                                                                                set+

                                                                                set-

                                                                                next-hop

                                                                                in

                                                                                セット

                                                                                origin

                                                                                セット

                                                                                mpls-label

                                                                                route-has-label

                                                                                route-type

                                                                                is

                                                                                tag

                                                                                is、eq、ge、le

                                                                                weight

                                                                                セット

                                                                                retain-rt

                                                                                extcommunity rt

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                matches-within

                                                                                show

                                                                                as-path

                                                                                in

                                                                                is-local

                                                                                length

                                                                                neighbor-is

                                                                                originates-from

                                                                                passes-through

                                                                                unique-length

                                                                                as-path-length

                                                                                is、ge、le、eq

                                                                                as-path-unique-length

                                                                                is、ge、le、eq

                                                                                community

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                destination

                                                                                in

                                                                                extcommunity rt

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                matches-within

                                                                                extcommunity soo

                                                                                is-empty

                                                                                matches-any

                                                                                matches-every

                                                                                matches-within

                                                                                med

                                                                                is、eg、ge、le

                                                                                next-hop

                                                                                in

                                                                                origin

                                                                                is

                                                                                source

                                                                                in

                                                                                一部の BGP ルート属性は、さまざまな理由のため一部の BGP 接続点からアクセスできません。たとえば、set med igp-cost only コマンドは、設定された IGP コストがあり、ソース値を示す場合に意味があります。

                                                                                次の表では、どの操作が有効であるか、およびどの場合に有効であるかをまとめます。



                                                                                表 3 接続点により制限された BGP 動作

                                                                                コマンド

                                                                                import

                                                                                export

                                                                                aggregation

                                                                                再配布

                                                                                prepend as-path most-recent

                                                                                eBGP のみ

                                                                                eBGP のみ

                                                                                n/a

                                                                                n/a

                                                                                replace as-path

                                                                                eBGP のみ

                                                                                eBGP のみ

                                                                                n/a

                                                                                n/a

                                                                                set med igp-cost

                                                                                禁止

                                                                                eBGP のみ

                                                                                禁止

                                                                                禁止

                                                                                set weight

                                                                                n/a

                                                                                禁止

                                                                                n/a

                                                                                n/a

                                                                                suppress

                                                                                禁止

                                                                                禁止

                                                                                n/a

                                                                                禁止

                                                                                BGP 最適パス アルゴリズム

                                                                                BGP ルータは、通常は同じ宛先に対する複数のパスを受信します。BGP の最適パス アルゴリズムは、IP ルーティング テーブルに格納し、トラフィックの転送に使用する最適なパスを決めるものです。この項では、インターネット技術特別調査委員会(IETF)のネットワーク ワーキング グループによる draft-ietf-idr-bgp4-24.txt 資料の 9.1 項で指定されている BGP 最適パス アルゴリズムの Cisco IOS XR ソフトウェア実装について説明します。

                                                                                BGP 最適パス アルゴリズムは、次の 3 つのパートに分かれて実行されます。

                                                                                • パート 1:2 つのパスを比較して、いずれが優れているのかを判別します。

                                                                                • パート 2:すべてのパスを順に処理し、全体として最適なパスを選択するためにパスを比較する順序を決定します。

                                                                                • パート 3:新しい最適パスを使用するに足るだけの差が新旧の最適パスにあるかどうかを判別します。


                                                                                (注)  


                                                                                比較演算が推移的ではないため、パート 2 で決定された比較の順序は重要です。つまり、3 つのパス、A、B、C がある場合、A と B を比較したときに A の方が優れていて、B と C と比較したときに B の方が優れている場合、A と C を比較したときに必ずしも A が優れているとは限りません。この非推移性は、Multi Exit Discriminator(MED)は、すべてのパス間ではなく、同じネイバー自律システム(AS)からのパス間のみで比較されるために生じます。


                                                                                パスのペアの比較

                                                                                2 つのパスを比較して、優れたパスを判別するには、次の手順を実行します。

                                                                                1. いずれかのパスが無効な場合(可能な最大 MED 値を持つパス、到達不能なネクスト ホップを持つパスなど)、もう一方のパスが選択されます(そのパスが有効な場合)。

                                                                                2. パスの準最適パス コスト コミュニティが等しくない場合は、準最適パス コスト コミュニティの低いパスが最適パスとして選択されます。

                                                                                3. パスの重みが等しくない場合は、重みが最大のパスが選択されます。

                                                                                  (注)  


                                                                                  重みは完全にルータにローカルであり、weight コマンドまたはルーティング ポリシーを使用して設定できます。


                                                                                4. パスのローカル プリファレンスが等しくない場合は、ローカル プリファレンスが高い方のパスが選択されます。


                                                                                  (注)  


                                                                                  パスとともにローカル プリファレンス属性を受信したか、ルーティング ポリシーによって設定された場合は、その値が、この比較で使用されます。それ以外の場合は、デフォルト ローカル プリファレンス値の 100 が使用されます。デフォルト値は、bgp default local-preference コマンドを使用して変更できます。


                                                                                5. パスの 1 つが再配布されたパス、つまり redistribute コマンドまたは network コマンドによるパスの場合は、そのパスが選択されます。それ以外の場合、パスの 1 つがローカルで作成された集約パスのとき、つまり aggregate-address コマンドによるパスのときは、そのパスが選択されます。


                                                                                  (注)  


                                                                                  ステップ 1 ~ ステップ 4 では、RFC 1268 の「Path Selection with BGP」を実装します。


                                                                                6. パス間で AS パスの長さが異なる場合は、AS パスの短い方のパスが選択されます。このステップは、bgp bestpath as-path ignore コマンドが設定されている場合は省略されます。


                                                                                  (注)  


                                                                                  AS パスの長さを計算する場合は、コンフェデレーション セグメントは無視され、AS セットは 1 としてカウントされます。



                                                                                  (注)  


                                                                                  eiBGP は、内部および外部の BGP マルチパス ピアを指定します。eiBGP では、内部および外部のパスを同時に使用できます。


                                                                                7. パス間で起点が異なる場合は、起点の値が低い方のパスが選択されます。内部ゲートウェイ プロトコル(IGP)は EGP よりも低く、EGP は INCOMPLETE より低いと見なされます。

                                                                                8. 該当する場合は、パスの MED が比較されます。等しくない場合は、MED の低いパスが選択されます。

                                                                                  このステップが実行されるかどうかに影響するコンフィギュレーション オプションは多数あります。一般に、MED はパスが両方のパスが同じ AS にあるネイバーから受信された場合に比較され、それ以外の場合は MED 比較はスキップされます。ただし、この動作は特定のコンフィギュレーション オプションによって変更され、考慮すべきいくつかの場合があります。

                                                                                  bgp bestpath med always コマンドが設定されている場合、MED 比較は、パス内のネイバー AS にかかわらず、常に実行されます。それ以外の場合、MED 比較は、次のように、比較する 2 つのパスの AS パスによって異なります。

                                                                                  • パスに AS パスがない場合、または AS パスが AS_SET で始まる場合、パスは内部と見なされ、MED は他の内部パスと比較されます。

                                                                                  • AS パスが AS_SEQUENCE で開始されている場合、ネイバー AS は、シーケンスの最初の AS 番号であり、MED は、同じネイバー AS を持つ他のパスと比較されます。

                                                                                  • AS パスがコンフェデレーション セグメントのみを含むか、コンフェデレーション セグメントで開始されて AS_SET が続く場合、MED は、他のいずれのパスとも比較されません。ただし、bgp bestpath med confed コマンドが設定されている場合を除きます。その場合、パスは内部であると見なされ、MED は他の内部パスと比較されます。

                                                                                  • AS パスがコンフェデレーション セグメントとそれに続く AS_SEQUENCE で開始している場合、ネイバー AS は AS_SEQUENCE の最初の AS 番号であり、MED は同じネイバー AS を持つ他のパスと比較されます。


                                                                                  (注)  


                                                                                  パスとともに MED 属性を受信しなかった場合、MED は 0 であると見なされます。ただし、bgp bestpath med missing-as-worst コマンドが設定されている場合を除きます。この場合、MED 属性が受信されていない場合、MED は最高値と見なされます。


                                                                                9. パスの 1 つを外部ピアから受信し、もう 1 つを内部(またはコンフェデレーション)ピアから受信した場合は、外部ピアからのパスが選択されます。

                                                                                10. パスのネクスト ホップへの IGP メトリックが異なる場合、IGP メトリックが小さい方のパスが選択されます。

                                                                                11. パスの IP コスト コミュニティが等しくない場合は、IP コスト コミュニティの低いパスが最適パスとして選択されます。

                                                                                12. ステップ 1 ~ステップ 10 ですべてのパス パラメータが一致している場合は、ルータ ID が比較されます。送信元属性付きでパスを受信した場合は、この属性が比較対象のルータ ID として使用されます。それ以外の場合は、パスの受信元ネイバーのルータ ID が使用されます。パス間でルータ ID が異なる場合は、ルータ ID の小さい方のパスが選択されます。


                                                                                  (注)  


                                                                                  送信元をルータ ID として使用する場合は、2 つのパスが同じルータ ID を持つことがあります。同じピア ルータと 2 つの BGP セッションを持つこともでき、したがって、同じルータ ID を持つ 2 つのパスを受信することがあります。


                                                                                13. パス間でクラスタ長が異なる場合は、クラスタ長の小さい方のパスが選択されます。クラスタ リスト属性なしでパスを受信した場合、クラスタの長さは 0 であると見なされます。

                                                                                14. 最後に、IP アドレスの小さいネイバーから受信したパスが選択されます。ローカル生成されたパス(たとえば、再配布されたパス)は、ネイバー IP アドレスが 0 であると見なされます。

                                                                                比較の順序

                                                                                BGP 最適パス アルゴリズム実装のパート 2 では、パスの比較順序を決定します。比較順序は次のように決定されます。

                                                                                1. 各グループ内のすべてのパス間で MED を比較できるように、パスがグループ分けされます。2 つのパス間で MED を比較できるかどうかは、パスのペアの比較 と同じルールを使用して決定されます。通常、この比較の結果は、ネイバー AS ごとに 1 グループになります。bgp bestpath med always コマンドが設定されている場合は、パスを含む 1 グループだけがあります。

                                                                                2. 各グループ内の最適パスが決定されます。最適パスは、グループ内のすべてのパスを反復処理し、その時点までの最適なパスを追跡することによって決定されます。各パスが、この時点までの最適なパスと比較され、より適していれば新しいこの時点までの最適なパスになって、グループ内の次のパスと比較されます。

                                                                                3. ステップ 2 の各グループから選択した最適パスで構成される、パスのセットを形成します。このパス セットに対してステップ 2 と同様の比較を繰り返すことによって、全体としての最適パスを選択します。

                                                                                最適パスの変更の抑制

                                                                                実装のパート 3 では、最適パスの変更を抑制するかどうか、つまり、新しい最適パスを使用するのか、既存の最適パスの使用を続行するのかを決定します。最適パス選択アルゴリズムが任意性を持つ部分まで、新規の最適パスと一致している場合は(ルータ ID が同一であることが前提)、引き続き既存の最適パスを使用できます。既存の最適パスの使用を続行すると、ネットワークでのチャーンを回避できます。


                                                                                (注)  


                                                                                この抑制動作は、IETF ネットワーキング ワーキング グループの draft-ietf-idr-bgp4-24.txt 資料に準拠していませんが、IETF ネットワーキング ワーキング グループの draft-ietf-idr-avoid-transition-00.txt 資料に指定されています。


                                                                                この抑制動作は、bgp bestpath compare-routerid コマンドを設定してオフにできます。このコマンドを設定すると、新しい最適パスが常に既存の最適パスよりも優先されます。

                                                                                それ以外の場合は、次の手順を使用して、最適パスの変更を抑制するかどうかが決定されます。

                                                                                1. 既存の最適パスが有効でなくなった場合は、変更を抑制できません。

                                                                                2. 既存または新規の最適パスを内部(またはコンフェデレーション)ピアから受信したか、ローカルで生成した(再配布によるなど)場合は、変更を抑制できません。つまり、抑制は、両方のパスを外部ピアから受信した場合のみ可能です。

                                                                                3. パスを同じピアから受信した場合(通常はパスのルータ ID が同一)は、変更を抑制できません。ルータ ID は、パスのペアの比較 のルールを使用して計算されます。

                                                                                4. パスの重み、ローカル プリファレンス、起点、またはネクスト ホップへの IGP メトリックが異なる場合は、変更を抑制できません。このすべての値は、パスのペアの比較 のルールを使用して計算されます。

                                                                                5. パスの AS パス長が異なり、bgp bestpath as-path ignore コマンドが設定されていない場合は、変更を抑制できません。この場合もやはり、AS パスの長さは、パスのペアの比較 のルールを使用して計算されます。

                                                                                6. パスの MED を比較でき、MED が異なる場合は、変更を抑制できません。MED を比較できるかどうかは、パスのペアの比較 で説明されている MED 値の計算とまったく同じルールによって判定されます。

                                                                                7. ステップ 1 ~ステップ 6 のすべてのパス パラメータに該当しない場合は、変更を抑制できます。

                                                                                BGP アップデートの生成およびアップデート グループ

                                                                                BGP アップデート グループ機能により、BGP アップデートの生成がネイバー設定から分離されます。BGP アップデート グループ機能により、アウトバウンド ルーティング ポリシーに基づいて BGP アップデート グループ メンバーシップを動的に計算するアルゴリズムが導入されます。この機能に対してネットワーク オペレータによる設定は不要です。アップデート グループをベースとするメッセージ生成は自動的かつ個別に行われます。

                                                                                BGP アップデート グループ

                                                                                設定の変更があった場合、ルータでは、アップデート グループ メンバーシップを自動的に再計算し、変更を適用します。

                                                                                BGP アップデート グループの生成を最適化するには、ネットワーク オペレータは、類似するアウトバウンド ポリシーを持つネイバーのアウトバウンド ルーティング ポリシーを同じものにしておくことを推奨します。この機能には、BGP アップデート グループを監視するためのコマンドが含まれます。

                                                                                BGP コスト コミュニティの参照

                                                                                コスト コミュニティ属性は、ルート ポリシーで set extcommunity cost コマンドを設定することにより、内部ルートに適用されます。cost community set 句は、コスト コミュニティ ID 番号(0 ~ 255)およびコスト コミュニティ番号(0 ~ 4294967295)を使用して設定されます。コスト コミュニティ番号によってパスの優先度が判断されます。最も低いコスト コミュニティ番号を持つパスが優先されます。コスト コミュニティ番号を具体的に設定していないパスには、デフォルトのコスト コミュニティ番号である 2147483647(0 ~ 4294967295 の中央値)が割り当てられ、最適パス選択プロセスにより評価されます。2 つのパスが同じコスト コミュニティ番号を使用して設定されている場合、パス選択プロセスでは最も低いコスト コミュニティ ID のパスが優先されます。このコスト拡張コミュニティ リンク属性は、拡張コミュニティ交換がイネーブルなとき、iBGP ピアに伝播します。

                                                                                次のコマンドには route-policy キーワードが含まれています。このキーワードは、cost community set 句を使用して設定されるルート ポリシーを適用するために使用できます。

                                                                                • aggregate-address

                                                                                • redistribute

                                                                                • network

                                                                                BGP ネクスト ホップの参照

                                                                                RIB からのイベント通知は、クリティカルおよび非クリティカルとして分類されます。クリティカルおよび非クリティカル イベントの通知は、別々のバッチで送信されます。BGP は、次のいずれかのイベントが発生したときに通知を受けます。
                                                                                • ネクスト ホップが到達不能になった。

                                                                                • ネクスト ホップが到達可能になった。

                                                                                • ネクスト ホップへの完全な繰り返し IGP メトリックが変更される。

                                                                                • ファースト ホップの IP アドレスまたはファースト ホップのインターフェイスが変更される。

                                                                                • ネクスト ホップが接続された。

                                                                                • ネクスト ホップが接続解除された。

                                                                                • ネクスト ホップがローカル アドレスになった。

                                                                                • ネクスト ホップが非ローカル アドレスになった。


                                                                                (注)  


                                                                                到達可能性および再帰メトリック イベントは、最適パスの再計算をトリガーします。


                                                                                ただし、非クリティカル イベントが保留中であり、クリティカル イベントを読み込む要求がある場合は、非クリティカル イベントがクリティカル イベントとともに送信されます。
                                                                                • クリティカル イベントは、ネクスト ホップの到達可能性(到達可能と到達不能)、接続性(接続と非接続)、および局在性(ローカルと非ローカル)に関係があります。これらのイベントの通知は遅延しません。

                                                                                • 非クリティカル イベントには、IGP メトリックの変更のみが含まれます。これらのイベントは 3 秒の間隔で送信されます。メトリック変更イベントは最後の 1 つが送信されてから 3 秒後にバッチ処理され、送信されます。

                                                                                BGP は、次のいずれかのイベントが発生したときに通知を受けます。

                                                                                • ネクスト ホップが到達不能になった。

                                                                                • ネクスト ホップが到達可能になった。

                                                                                • ネクスト ホップへの完全な繰り返し IGP メトリックが変更される。

                                                                                • ファースト ホップの IP アドレスまたはファースト ホップのインターフェイスが変更される。

                                                                                • ネクスト ホップが接続された。

                                                                                • ネクスト ホップが接続解除された。

                                                                                • ネクスト ホップがローカル アドレスになった。

                                                                                • ネクスト ホップが非ローカル アドレスになった。


                                                                                (注)  


                                                                                到達可能性および再帰メトリック イベントは、最適パスの再計算をトリガーします。


                                                                                クリティカルおよび非クリティカル イベントのネクスト ホップ トリガー遅延は、nexthop trigger-delay コマンドを使用して、クリティカルおよび非クリティカル イベントの最小バッチ間隔を指定するように設定できます。トリガー遅延は、アドレス ファミリに依存します。

                                                                                BGP ネクストホップ トラッキング機能では、次の特性を持つルートを持つネクスト ホップだけを BGP ルートの解決に使用するように指定することができます。

                                                                                • 集約ルートを回避するために、プレフィックスの長さは指定された値よりも長くなっている。

                                                                                • 振動につながる可能性のあるネクスト ホップの解決に BGP ルートが使用されないように、選択したリストにソース プロトコルが含まれている。

                                                                                このルート ポリシーのフィルタリングが可能なのは、RIB により、ネクスト ホップを解決するルートのソース プロトコル、およびこのルートに関連付けられているマスクの長さが特定されるからです。nexthop route-policy コマンドは、ルート ポリシーを指定するために使用します。

                                                                                ピアリング インターフェイスの IPv6 アドレスとしてのネクスト ホップ

                                                                                BGP を使用すると、IPv4 セッションで IPv6 プレフィックスを伝送できます。IPv6 プレフィックスのネクスト ホップは、ネクスト ホップ ポリシーを使用して設定できます。ポリシーが設定されていない場合、ネクスト ホップはピアリング インターフェイスの IPv6 アドレスとして設定されます(いずれかのインターフェイスが設定されている場合は、IPv6 ネイバー インターフェイスまたは IPv6 の更新送信元インターフェイス)。

                                                                                ネクスト ホップ ポリシーが設定されておらず、IPv6 ネイバー インターフェイスも IPv6 更新送信元インターフェイスも設定されていない場合は、ネクスト ホップは IPv4 射影 IPv6 アドレスになります。

                                                                                範囲を指定した IPv4/VPNv4 テーブル ウォーク

                                                                                処理するアドレス ファミリを判別するために、ネクスト ホップと関連付けられたゲートウェイ コンテキストを逆参照し、次に、ゲートウェイ コンテキストを調べてそのゲートウェイ コンテキストを使用しているアドレス ファミリを判別することにより、ネクスト ホップ通知が受信されます。IPv4 ユニキャスト アドレス ファミリと VPNv4 ユニキャスト アドレス ファミリは、RIB 内の IPv4 ユニキャスト テーブルに登録されるため、同じゲートウェイ コンテキストを共有します。その結果、RIB から IPv4 ユニキャスト ネクスト ホップ通知を受信したときは、グローバル IPv4 ユニキャスト テーブルと VPNv4 テーブル両方が処理されます。ネクスト ホップでマスクを保持することで、そのネクスト ホップが、IPv4 ユニキャスト、VPNv4 ユニキャスト、またはこの両方に属しているのどうかを示します。この範囲を指定したテーブル ウォークにより、適切なアドレス ファミリ テーブル内に処理が限定されます。

                                                                                アドレス ファミリ処理の並べ替え

                                                                                ソフトウェアでは、アドレス ファミリの数値に基づいてアドレス ファミリ テーブルを探索します。ネクスト ホップ通知バッチを受信すると、アドレス ファミリ処理の順序が、次の順序に並べ替えられます。

                                                                                • IPv4 トンネル

                                                                                • VPNv4 ユニキャスト

                                                                                • VPNv6 ユニキャスト

                                                                                • IPv4 ラベル付きユニキャスト

                                                                                • IPv4 ユニキャスト

                                                                                • IPv4 MDT

                                                                                • IPv6 ユニキャスト

                                                                                • IPv6 ラベル付きユニキャスト

                                                                                • IPv4 トンネル

                                                                                • VPNv4 ユニキャスト

                                                                                • IPv4 ユニキャスト

                                                                                • IPv6 ユニキャスト

                                                                                ネクスト ホップ処理の新規スレッド

                                                                                spkr プロセスの critical-event スレッドでは、ネクスト ホップ、双方向フォワーディング検出(BFD)、および高速外部フェールオーバー(FEF)の通知のみを処理します。この critical-event スレッドによって、BGP コンバージェンスは、大量の時間を必要とするおそれのある他のイベントによる悪影響が確実に受けなくなります。

                                                                                show、clear、debug コマンド

                                                                                show bgp nexthops コマンドは、ネクスト ホップ通知に関する統計情報、この通知の処理に費やした時間、および RIB に登録されている各ネクスト ホップに関する詳細を表示します。clear bgp nexthop performance-statistics コマンドは、モニタリングを容易にするために、ネクスト ホップの show コマンドの処理部分に関する累積統計情報をクリアします。clear bgp nexthop registration コマンドは、ネクスト ホップを RIB に非同期的に登録します。

                                                                                debug bgp nexthop コマンドは、ネクスト ホップ処理の情報を表示します。out キーワードを指定すると、RIB に登録されている BGP のネクスト ホップに関するデバッグ情報のみが表示されます。in キーワードでは、RIB から受信したネクスト ホップ通知に関するデバッグ情報が表示されます。out キーワードでは、RIB に送信されたネクスト ホップ通知に関するデバッグ情報が表示されます。

                                                                                iBGP マルチパス ロード シェアリングの参照

                                                                                eBGP から取得した到達可能性情報を持つ複数の境界 BGP ルータがあり、ローカル ポリシーが適用されていない場合、境界ルータでは、eBGP パスを最適パスとして選択します。境界ルータでは、この最適パスを ISP ネットワークの内部にアドバタイズします。コア ルータの場合、同じ宛先に対し複数のパスがある場合がありますが、1 つのパスのみを最適パスとして選択し、そのパスを転送用に使用します。iBGP マルチパス ロード シェアリングでは、複数の等距離パス間でロード シェアリングを可能にする機能が追加されます。複数の iBGP の最適パスを設定すると、ルータでは、特定のサイトを宛先とするトラフィックを均等に負担できるようになります。iBGP のマルチパス ロード シェアリング機能は、サービス プロバイダー バックボーンを持つマルチプロトコル ラベル スイッチング(MPLS)バーチャル プライベート ネットワーク(VPN)と同様に機能します。

                                                                                同じ宛先への複数のパスをマルチパスと見なすには、次の基準を満たす必要があります。

                                                                                • すべての属性が同じである必要があります。属性には、重み、ローカル プリファレンス、自律システム パス(長さだけでなく属性全体)、発信元コード、Multi Exit Discriminator(MED)、および Interior Gateway Protocol(IGP)距離が含まれます。

                                                                                • 各マルチパスのネクスト ホップ ルータが異なっている必要があります。

                                                                                基準を満たしていて、複数のパスがマルチパスと見なされても、BGP 対応ルータは、マルチパスの 1 つを最適パスに指定し、この最適パスをそのネイバーにアドバタイズします。

                                                                                (注)  


                                                                                • マルチパス プレフィックスのネクストホップ計算の上書きは許可されていません。next-hop-unchanged multipath コマンドを使用すると、マルチパス プレフィックスのネクストホップ計算の上書きが無効になります。

                                                                                • マルチパスの計算時に as-path オンワードを無視する機能が追加されます。bgp multipath as-path ignore onwards コマンドを使用すると、マルチパスの計算時に as-path オンワードが無視されます。


                                                                                IPv6 ユニキャスト ルーティング

                                                                                Cisco では、インターネット プロトコル バージョン 6(IPv6)の完全なユニキャスト機能を提供しています。

                                                                                IPv6 ユニキャスト アドレスは、単一ノード上の単一インターフェイスの識別子です。ユニキャスト アドレスに送信されたパケットは、そのアドレスが示すインターフェイスに配信されます。Cisco IOS XR ソフトウェアでは、次の IPv6 ユニキャスト アドレス タイプがサポートされます。

                                                                                • 集約可能グローバル アドレス

                                                                                • サイトローカル アドレス

                                                                                • リンクローカル アドレス

                                                                                • IPv4 互換 IPv6 アドレス

                                                                                IPv6 ユニキャスト アドレッシングの詳細については、『IP Addresses and Services Configuration Guide』を参照してください。

                                                                                BGP の AS パスからのプライベート AS 番号の削除および置換

                                                                                プライベート自律システム番号(ASN)は、グローバルに一意な AS 番号を保護するために、インターネット サービス プロバイダー(ISP)およびお客様のネットワークで使用されます。プライベート AS 番号は一意でないため、グローバル インターネットへのアクセスには使用できません。AS 番号はルーティング アップデートの eBGP AS パスに表示されます。プライベート ASN を使用している場合にグローバル インターネットにアクセスするには、AS パスからプライベート ASN を削除する必要があります。

                                                                                パブリックな AS 番号は、InterNIC によって割り当てられ、グローバルに一意です。範囲は 1 ~ 64511 です。プライベート AS 番号は、グローバルに一意な AS 番号(有効な範囲は 64512 ~ 65535)を保護するために使用されます。プライベート AS 番号はグローバル BGP ルーティング テーブルにリークできません。プライベート AS 番号は一意ではなく、BGP 最適パスの計算には一意の AS 番号が必要であるからです。そのため、ルートが BGP ピアに伝播される前に、AS パスからプライベート AS 番号を削除する必要がある可能性があります。

                                                                                外部 BGP(eBGP)では、グローバルなインターネットへのルーティングで、グローバルに一意な AS 番号を使用する必要があります。プライベート AS 番号(これは一意でない)を使用すると、グローバルなインターネットにアクセスできません。BGP の AS パスからプライベート ASN を削除および交換する機能によって、プライベート AS に属するルータがグローバルなインターネットにアクセスできるようになりました。ネットワーク管理者は、発信アップデート メッセージに含まれる AS パスからプライベート AS を削除するようにルータを設定します。場合によっては、これらの番号をローカル ルータの ASN で置き換えて、AS パス長が変化しないようにします。

                                                                                AS パスからプライベート ASN を削除および交換する機能は、次のように拡張されました。

                                                                                • remove-private-as コマンドでは、AS パスにパブリックとプライベートの両方の ASN が含まれる場合でも、AS パスからプライベート AS 番号が削除されます。

                                                                                • remove-private-as コマンドでは、AS パスにプライベート AS 番号のみが含まれる場合でも、AS パスからプライベート AS 番号が削除されます。このコマンドは eBGP ピアのみに適用され、その場合、eBGP ピアではローカル ルータの AS 番号が AS パスに付加されるため、長さ 0 の AS パスにはなることはありません。

                                                                                • remove-private-as コマンドでは、AS パスでコンフェデレーション セグメントの前にプライベート ASN が出現する場合でも、プライベート AS 番号が削除されます。

                                                                                • replace-as コマンドでは、パスから削除されるプライベート AS の番号をローカルの AS 番号に置き換えることができるため、AS パスの長さは同じままに保つことができます。

                                                                                この機能は、アドレス ファミリごとにネイバーに適用できます(アドレス ファミリ コンフィギュレーション モード)。そのため、この機能をあるアドレス ファミリのネイバーには適用して、別のアドレス ファミリでは適用しないようにすることで、機能が設定されているアドレス ファミリのみのアウトバウンド側のアップデート メッセージに影響を与えることができます。

                                                                                プライベート AS 番号が削除または交換されたことを確認するには、show bgp neighbors コマンドおよび show bgp update-group コマンドを使用します。

                                                                                BGP アップデート メッセージのエラー処理

                                                                                BGP アップデート メッセージのエラー処理によって、セッションのリセットを避けるためにエラー アップデート メッセージの処理における BGP の動作が変わります。IETF IDR I-D:draft-ietf-idr-error-handling で説明されているアプローチに基づいて、Cisco IOS XR BGP アップデート メッセージのエラー処理を実装すると、重大度、更新エラーが発生する可能性、属性のタイプなどの要素に基づいて、BGP 更新エラーはさまざまなカテゴリに分類されます。各カテゴリで発生したエラーは、ドラフトに沿って処理されます。セッションのリセットは、エラーの処理プロセス中は可能な限り回避されます。一部のカテゴリのエラー処理は、デフォルトの動作を有効または無効にする設定コマンドによって制御されます。

                                                                                基本の BGP 仕様に応じて、不正な属性を含むアップデート メッセージを受信した BGP スピーカは、不正な属性が受信されたセッションをリセットする必要があります。セッションのリセットは、不正な属性があるルートだけでなくセッションを介して交換される他の有効なルートにも影響するので、この動作は好ましくありません。

                                                                                BGP のエラー処理と属性フィルタリングの syslog メッセージ

                                                                                不正な形式のアップデート パケットをルータが受信すると、ROUTING-BGP-3-MALFORM_UPDATE タイプの ios_msg がコンソールに出力されます。このレートは、すべてのネイバーで 1 分間に 1 つのメッセージになるよう制限されています。不正なパケットが「Discard Attribute」(A5)または「Local Repair」(A6)アクションの対象になった場合は、ネイバー 1 つおよびアクション 1 つごとに ios_msg メッセージが出力されます。これは、ネイバーが直前の「Established」状態に到達して以降に受信した不正な形式のアップデートの数とは関係ありません。

                                                                                BGP エラー処理の syslog メッセージの例を次に示します。
                                                                                %ROUTING-BGP-3-MALFORM_UPDATE : Malformed UPDATE message received from neighbor 13.0.3.50 - message length 90 bytes,
                                                                                 error flags 0x00000840, action taken "TreatAsWithdraw". 
                                                                                Error details: "Error 0x00000800, Field "Attr-missing", Attribute 1 (Flags 0x00, Length 0), Data []"
                                                                                
                                                                                
                                                                                これは「Discard Attribute」アクションに対する BGP 属性フィルタリングの syslog メッセージの例です。
                                                                                [4843.46]RP/0/0/CPU0:Aug 21 17:06:17.919 : bgp[1037]: %ROUTING-BGP-5-UPDATE_FILTERED : 
                                                                                One or more attributes were filtered from UPDATE message received from neighbor 40.0.101.1 - message length 173 bytes,
                                                                                 action taken "DiscardAttr".
                                                                                 Filtering details: "Attribute 16 (Flags 0xc0): Action "DiscardAttr"". NLRIs: [IPv4 Unicast] 88.2.0.0/17
                                                                                
                                                                                
                                                                                これは「Treat-as-withdraw」アクションに対する BGP 属性フィルタリングの syslog メッセージの例です。
                                                                                [391.01]RP/0/0/CPU0:Aug 20 19:41:29.243 : bgp[1037]: %ROUTING-BGP-5-UPDATE_FILTERED :
                                                                                 One or more attributes were filtered from UPDATE message received from neighbor 40.0.101.1 - message length 166 bytes,
                                                                                 action taken "TreatAsWdr".
                                                                                 Filtering details: "Attribute 4 (Flags 0xc0): Action "TreatAsWdr"". NLRIs: [IPv4 Unicast] 88.2.0.0/17
                                                                                
                                                                                

                                                                                ユーザ定義の Martian チェック

                                                                                このソリューションによって、次の IP アドレス プレフィックスに対する Martian チェックを無効化できます。

                                                                                • IPv4 アドレス プレフィックス

                                                                                  • 0.0.0.0/8

                                                                                  • 127.0.0.0/8

                                                                                  • 224.0.0.0/4

                                                                                • IPv6 アドレス プレフィックス

                                                                                  • ::

                                                                                  • ::0002 - ::ffff

                                                                                  • ::ffff:a.b.c.d

                                                                                  • fe80:xxxx

                                                                                  • ffxx:xxxx