IP : IP ルーティング

シングルホームおよびマルチホーム環境における、BGP を使用したロード シェアリング:設定例

2008 年 7 月 23 日 - ライター翻訳版
その他のバージョン: PDFpdf | 機械翻訳版 (2013 年 8 月 21 日) | 英語版 (2005 年 8 月 23 日) | フィードバック

目次

概要
前提条件
      要件
      使用するコンポーネント
      表記法
BGP ネイバーとしてループバック アドレスを使用するロード シェアリング
      ネットワーク ダイアグラム
      設定例
      確認
      トラブルシューティング
1 台のローカル ルータを経由して 1 つの Internet Service Provider(ISP; インターネット サービス プロバイダー)にデュアルホームしている場合のロード シェアリング
      ネットワーク ダイアグラム
      設定例
      確認
      トラブルシューティング
複数のローカル ルータを経由して 1 つの ISP にデュアルホームしている場合のロード シェアリング
      ネットワーク ダイアグラム
      設定例
      確認
      トラブルシューティング
1 台のローカル ルータを経由して 2 つの ISP にマルチホームしている場合のロード シェアリング
      ネットワーク ダイアグラム
      設定例
      確認
      トラブルシューティング
複数のローカル ルータを経由して 2 つの ISP にマルチホームしている場合のロード シェアリング
      ネットワーク ダイアグラム
      設定例
      確認
      トラブルシューティング
関連するシスコ サポート コミュニティ ディスカッション
関連情報

概要

ロード シェアリングでは、ルータ上の発信トラフィックと着信トラフィックを複数のパスの間で分散できます。パスは、スタティックに生成されるか、次のようなダイナミック プロトコルによって生成されます。

  • Routing Information Protocol(RIP; ルーティング情報プロトコル)

  • Enhanced Interior Gateway Routing Protocol(EIGRP)

  • Open Shortest Path First(OSPF)プロトコル

  • Interior Gateway Routing Protocol(IGRP)

デフォルトでは、Border Gateway Protocol(BGP; ボーダー ゲートウェイ プロトコル)で最適パスが 1 つだけ選択され、ロード バランシングは行われません。このドキュメントでは、BGP を使用したさまざまなシナリオでロード シェアリングを行う方法を紹介しています。ロード バランシングについての詳細は、『ロード バランシングの機能の仕方』を参照してください。

前提条件

要件

この設定を開始する前に、次の要件が満たされていることを確認してください。

使用するコンポーネント

このドキュメントは、特定のソフトウェアやハードウェアに限定されるものではありません。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定から作業を開始しています。対象のネットワークが実稼働中である場合には、どのような作業についても、その潜在的な影響について確実に理解しておく必要があります。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

BGP ネイバーとしてループバック アドレスを使用するロード シェアリング

このシナリオでは、複数(最大 6 個)の等コスト リンクがある場合にロード シェアリングを実現する方法を示しています。各リンクは、ローカルの Autonomous System(AS; 自律システム)にある 1 つのルータとシングルホーム BGP 環境内のリモート AS にある別のルータで終端されています。次のネットワーク ダイアグラムは、その一例です。

注:このドキュメントで使用されているコマンドの詳細を調べるには、Command Lookup Tool登録ユーザ専用)を使用してください。
一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことを、ご了承ください。

ネットワーク ダイアグラム

このセクションでは、次のネットワーク構成を使用しています。

40a.gif

設定例

このセクションでは、次の設定を使用しています。

RouterA
interface loopback 0
 ip address 1.1.1.1 255.255.255.0

interface serial 0
 ip address 160.20.20.1 255.255.255.0
 no ip route-cache
  
interface serial 1
 ip address 150.10.10.1 255.255.255.0
 no ip route-cache
  
router bgp 11
neighbor 2.2.2.2 remote-as 10
neighbor 2.2.2.2 update-source loopback 0

!--- ループバック インターフェイスの IP アドレスを TCP 接続に使用します。

neighbor 2.2.2.2 ebgp-multihop

!--- 外部 BGP(eBGP)接続が同じネットワーク アドレス上にない場合は、
!--- 常に ebgp-multihop を設定する必要があります。


router eigrp 12
network 1.0.0.0
network 150.10.0.0
network 160.20.0.0
no auto-summary

RouterB
interface loopback 0
 ip address 2.2.2.2 255.255.255.0

interface serial 0
 ip address 160.20.20.2 255.255.255.0
 no ip route-cache

interface serial 1
 ip address 150.10.10.2 255.255.255.0
 no ip route-cache

router bgp 10
neighbor 1.1.1.1 remote-as 11
neighbor 1.1.1.1 update-source loopback 0

!--- ループバック インターフェイスの IP アドレスを TCP 接続に使用します。


neighbor 1.1.1.1 ebgp-multihop

!--- eBGP 接続が同じネットワーク アドレス上にない場合は、常に ebgp-multihop
!--- を設定する必要があります。

router eigrp 12
network 2.0.0.0
network 150.10.0.0
network 160.20.0.0
no auto-summary

注:ルーティング プロトコルの代わりにスタティック ルートを使用して、宛先に到達する 2 つの等コスト パスを導入することもできます。この場合のルーティング プロトコルは EIGRP です。

確認

このセクションでは、設定が正常に動作していることを確認しています。

特定の show コマンドが、アウトプットインタープリタ登録ユーザ専用)(OIT)でサポートされています。OIT を使用して、show コマンド出力の解析を表示できます。
一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことを、ご了承ください。

show ip route コマンドの出力には、2.2.2.0 ネットワークへの両方のパスが EIGRP 経由で学習されたことが示されています。traceroute コマンドの出力から、2 つのシリアル回線の間で負荷が分散されていることがわかります。このシナリオでは、ロード シェアリングはパケット単位で行われます。シリアル インターフェイスで ip route-cache コマンドを発行すれば、宛先単位でのロード シェアリングを実行できます。また、Cisco Express Forwarding を使用して、パケット単位と宛先単位のロード バランシングを設定することも可能です。Cisco Express Forwarding の設定方法についての詳細は、『Cisco Express Forwarding の設定』を参照してください。

RouterA# show ip route

!--- 出力を省略。

Gateway of last resort is not set

     1.0.0.0/24 is subnetted, 1 subnets
C       1.1.1.0 is directly connected, Loopback0
     2.0.0.0/24 is subnetted, 1 subnets
D       2.2.2.0 [90/2297856] via 150.10.10.2, 00:00:45, Serial1
                [90/2297856] via 160.20.20.2, 00:00:45, Serial0
     160.20.0.0/24 is subnetted, 1 subnets
C       160.20.20.0 is directly connected, Serial0
     150.10.0.0/24 is subnetted, 1 subnets
C       150.10.10.0 is directly connected, Serial1

RouterA# traceroute 2.2.2.2 

Type escape sequence to abort.
Tracing the route to 2.2.2.2

1 160.20.20.2 16 msec
    150.10.10.2 8 msec *

トラブルシューティング

現在のところ、この設定に関する特定のトラブルシューティング情報はありません。

1 台のローカル ルータを経由して 1 つの Internet Service Provider(ISP; インターネット サービス プロバイダー)にデュアルホームしている場合のロード シェアリング

このシナリオでは、リモート AS とローカル AS の間に複数のリンクがある場合にロード シェアリングを実現する方法を紹介しています。これらのリンクは、ローカル AS にある 1 つのルータとシングルホーム BGP 環境内のリモート AS にある複数のルータで終端されています。次のネットワーク ダイアグラムは、そのようなネットワークの一例です。

この設定例では、maximum-paths コマンドを使用しています。デフォルトでは、BGP により、1 つの AS から学習した、実行可能な等コスト パスの中から最適なパスが 1 つ選択されます。ただし、受け入れられる等コスト パラレル パスの最大数は変更できます。変更するには、BGP コンフィギュレーションに maximum-paths paths コマンドを入れます。paths 引数には、1 〜 6 の数字を使用します。

ネットワーク ダイアグラム

このセクションでは、次のネットワーク構成を使用しています。

40b.gif

設定例

このセクションでは、次の設定を使用しています。

RouterA
interface Loopback0
 ip address 1.1.1.1 255.255.255.0
!
interface Serial 0
 ip address 160.20.20.1 255.255.255.0
!
!  
interface Serial 1
 ip address 150.10.10.1 255.255.255.0
!
! 
router bgp 11
neighbor 160.20.20.2 remote-as 10
neighbor 150.10.10.2 remote-as 10
network 1.0.0.0
maximum-paths 2

!--- このコマンドでは、特定の宛先用にルーティング テーブルに
!--- インストールするパスの最大数を指定します。


RouterB
interface Ethernet0 
 ip address 2.2.2.1 255.255.255.0
!
interface Serial 0
 ip address 160.20.20.2 255.255.255.0
!
!
router bgp 10
neighbor 160.20.20.1 remote-as 11
network 2.0.0.0
auto-summary

RouterC
interface Ethernet0 
 ip address 2.2.2.2 255.255.255.0
!
interface Serial 1
 ip address 150.10.10.2 255.255.255.0
!
!
router bgp 10
neighbor 150.10.10.1 remote-as 11
network 2.0.0.0 
auto-summary

確認

このセクションでは、設定が正常に動作していることを確認しています。

特定の show コマンドが、アウトプットインタープリタ登録ユーザ専用)(OIT)でサポートされています。OIT を使用して、show コマンド出力の解析を表示できます。
一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことを、ご了承ください。

show ip route コマンドの出力には、2.2.2.0 ネットワークへの両方のパスが BGP 経由で学習されたことが示されています。traceroute コマンドの出力から、2 つのシリアル回線の間で負荷が分散されていることがわかります。このシナリオでは、ロード シェアリングは宛先単位で行われます。show ip bgp コマンドでは、2.0.0.0 のネットワークの有効なエントリが表示されます。

RouterA# show ip route

!--- 出力を省略。

Gateway of last resort is not set

     1.0.0.0/24 is subnetted, 1 subnets
C       1.1.1.0 is directly connected, Loopback0
B    2.0.0.0/8 [20/0] via 150.10.10.2, 00:04:23
               [20/0] via 160.20.20.2, 00:04:01
     160.20.0.0/24 is subnetted, 1 subnets
C       160.20.20.0 is directly connected, Serial0
     150.10.0.0/24 is subnetted, 1 subnets
C       150.10.10.0 is directly connected, Serial1
 
RouterA# traceroute 2.2.2.2 

Type escape sequence to abort.
Tracing the route to 2.2.2.2

1 160.20.20.2 16 msec
    150.10.10.2 8 msec * 

RouterA# show ip bgp

BGP table version is 3, local router ID is 1.1.1.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete 
        
Network         Next Hop        Metric  LocPrf  Weight Path    
*> 1.0.0.0   0.0.0.0                         0       32768  i    
*> 2.0.0.0        160.20.20.2  0                  0       10 i    
*               150.10.10.2  0                  0       10 i

トラブルシューティング

現在のところ、この設定に関する特定のトラブルシューティング情報はありません。

複数のローカル ルータを経由して 1 つの ISP にデュアルホームしている場合のロード シェアリング

このシナリオでは、複数のローカル ルータを経由して同じ ISP に向かう複数の接続がある場合にロード シェアリングを実現する方法を紹介しています。2 つの eBGP ピアが 2 台の異なるローカル ルータで終端されています。BGP では eBGP と internal BGP(iBGP; 内部 BGP)で学習されたネットワークの中で最適なパスが 1 つだけ選択されるため、2 つのリンクでロード バランシングを行うことはできません。AS 10 への複数のパスの間でロード シェアリングを行うのが次善の策になります。このタイプのロード シェアリングを使用すると、特定のネットワークへのトラフィックは、事前に定義されたポリシーに基づいて、両方のリンク経由で転送されます。また各リンクは相互に、一方のリンクで障害が発生した場合のバックアップの役割を果たします。

話を簡単にするため、AS 11 の BGP ルーティング ポリシーを次のように想定します。

  • AS 11 は、AS 10 のローカル ルートと、それ以外のインターネットへのデフォルトルートを受け入れます。

  • 発信トラフィック ポリシーは次のとおりです。

    • R101 からインターネットに向かうトラフィックはすべて、R101-R103 リンクを通ります。

    • R101-R103 リンクで障害が発生した場合、R101 からインターネットに向かうトラフィックはすべて、R102 を経由して AS10 に送信されます。

    • 同様に、R102 からインターネットに向かうトラフィックはすべて、R102-R104 リンクを通ります。

    • R102-R104 リンクで障害が発生した場合、R102 からインターネットに向かうトラフィックはすべて、R101 を経由して AS10 に送信されます。

  • 着信トラフィック ポリシーは次のとおりです。

    • インターネットから来るネットワーク 192.168.11.0/24 宛てのトラフィックは、R103-R101 リンクから到達します。

    • インターネットから来るネットワーク 192.168.12.0/24 宛てのトラフィックは、R104-R102 リンクから到達します。

    • AS 10 へのリンクの一方で障害が発生した場合は、他方のリンクがすべてのネットワーク宛のトラフィックをインターネットから AS 11 へルーティングします。

これを実現するには、R101 から R103 に対して 192.168.11.0 をアナウンスする際に、R102 から R104 へのアナウンスメントよりも短い AS_PATH が含まれるようにします。これにより、AS 10 は R103-R101 リンクを通るパスを最適パスと見なします。同様に、R102-R104 リンクを通じて 192.168.12.0 をアナウンスする際に、より短いパスが含まれるようにします。そうすれば、AS 10 は AS 11 内の 192.168.12.0 宛てのトラフィックに関して R104-R102 リンクを優先的に選択します。

発信トラフィックについては、eBGP で学習したルートに基づいて BGP が最適パスを決定します。これらのルートは、iBGP から学習したルートよりも優先されます。R101 は、eBGP で R103 から、iBGP で R102 から 10.10.34.0 を学習します。外部パスの方が内部パスよりも優先的に選択されます。そのため、R101 の設定にある BGP テーブルを見ると、10.10.34.0 へのルートは R101-R103 のリンクを通り、ネクストホップは 10.10.13.3 に設定されています。R102 では、10.10.34.0 へのルートは R102-R104 のリンクを通り、ネクストホップは 10.10.24.4 になっています。このようにして、10.10.34.0 宛てのトラフィックのロード シェアリングが実現されます。同様の考え方が R101 と R102 のデフォルト ルートにも当てはまります。BGP のパス選択基準についての詳細は、『BGP で最適パスを選択するアルゴリズム』を参照してください。

ネットワーク ダイアグラム

このセクションでは、次のネットワーク構成を使用しています。

40c.gif

設定例

このセクションでは、次の設定を使用しています。

R101
hostname R101

!
interface Ethernet0/0
 ip address 192.168.11.1 255.255.255.0 secondary
 ip address 192.168.12.1 255.255.255.0
!
interface Serial8/0
 ip address 10.10.13.1 255.255.255.0
!
router bgp 11
 no synchronization
 bgp log-neighbor-changes
 network 192.168.11.0
 network 192.168.12.0
 neighbor 10.10.13.3 remote-as 10
 neighbor 10.10.13.3 route-map R101-103-MAP out

!--- AS_PATH が 192.168.12.0 用に増分されています。

 neighbor 192.168.12.2 remote-as 11
 neighbor 192.168.12.2 next-hop-self
 maximum-paths 2
 no auto-summary
!
access-list 1 permit 192.168.12.0
access-list 2 permit 192.168.11.0
route-map R101-103-MAP permit 10
 match ip address 1
 set as-path prepend 11 11 11
!         
route-map R101-103-MAP permit 20
 match ip address 2

R102
hostname R102
!

interface Ethernet0/0
 ip address 192.168.11.2 255.255.255.0 secondary
 ip address 192.168.12.2 255.255.255.0
!
interface Serial8/0
 ip address 10.10.24.2 255.255.255.0
!
router bgp 11
 no synchronization
 bgp log-neighbor-changes
 network 192.168.11.0
 network 192.168.12.0
 neighbor 10.10.24.4 remote-as 10
 neighbor 10.10.24.4 route-map R102-104-MAP out

!--- AS_PATH が 192.168.11.0 用に増分されています。

 neighbor 192.168.12.1 remote-as 11
 neighbor 192.168.12.1 next-hop-self
 no auto-summary
!
access-list 1 permit 192.168.11.0
access-list 2 permit 192.168.12.0
route-map R102-104-MAP permit 10
 match ip address 1
 set as-path prepend 11 11 11
!         
route-map R102-104-MAP permit 20
 match ip address 2
!

R103
hostname R103
!
interface Ethernet0/0
 ip address 10.10.34.3 255.255.255.0
!
interface Serial8/0
 ip address 10.10.13.3 255.255.255.0
!
router bgp 10
no synchronization
 bgp log-neighbor-changes
 network 10.10.34.0 mask 255.255.255.0
 neighbor 10.10.13.1 remote-as 11
 neighbor 10.10.13.1 default-originate
 neighbor 10.10.34.4 remote-as 10
 neighbor 10.10.34.4 next-hop-self
 no auto-summary
 !

R104
hostname R104
!

interface Ethernet0/0
 ip address 10.10.34.4 255.255.255.0

!
interface Serial8/0
 ip address 10.10.24.4 255.255.255.0
!
router bgp 10
 no synchronization
 bgp log-neighbor-changes
 neighbor 10.10.24.2 remote-as 11
 neighbor 10.10.24.2 default-originate
 neighbor 10.10.34.3 remote-as 10
 neighbor 10.10.34.3 next-hop-self
 no auto-summary
!

確認

このセクションでは、設定が正常に動作しているかどうかを確認する際に役立つ情報を示しています。

特定の show コマンドは、アウトプットインタープリタ登録ユーザ専用)でサポートされています。このツールを使用すると、show コマンドの出力を分析できます。
一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことを、ご了承ください。

AS 11 と AS 10 の間のリンクがどちらも稼働している場合の確認

発信トラフィックの確認

注:show ip bgp コマンドの出力中に見られる大なり記号(>)は、実行可能なパスの中で対象のネットワーク用に使用される最適なパスを表します。詳細は、『BGP で最適パスを選択するアルゴリズム』を参照してください。

次に示す R101 の BGP テーブルは、インターネットへ向かうすべての発信トラフィックの最適パスが R101-R103 リンクを通ることを示しています。show ip route コマンドの出力で、ルーティング テーブルにあるルートを確認できます。

R101# show ip bgp

BGP table version is 5, local router ID is 192.168.12.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
* i0.0.0.0          192.168.12.2                  100      0 10 i
*>                  10.10.13.3                             0 10 i  
!--- これは R103 のネクストホップです。

* i10.10.34.0/24    192.168.12.2                  100      0 10 i
*>                  10.10.13.3               0             0 10 i  
!--- これは R103 のネクストホップです。

* i192.168.11.0     192.168.12.2             0    100      0 i
*>                  0.0.0.0                  0         32768 i
* i192.168.12.0     192.168.12.2             0    100      0 i
*>                  0.0.0.0                  0         32768 i

R101# show ip route

!--- 出力を省略。

Gateway of last resort is 10.10.13.3 to network 0.0.0.0

C    192.168.12.0/24 is directly connected, Ethernet0/0
C    192.168.11.0/24 is directly connected, Ethernet0/0
     10.0.0.0/24 is subnetted, 2 subnets
C       10.10.13.0 is directly connected, Serial8/0
B       10.10.34.0 [20/0] via 10.10.13.3, 00:08:53 
!--- これは R103 のネクストホップです。

B*   0.0.0.0/0 [20/0] via 10.10.13.3, 00:08:53     
!--- これは R103 のネクストホップです。

次に、R102 の BGP テーブルとルーティング テーブルを示します。ポリシーに従って、R102 は AS 10 へのすべてのトラフィックを R102-R104 リンクを通じてルーティングします。

R102# show ip bgp

BGP table version is 7, local router ID is 192.168.12.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 0.0.0.0          10.10.24.4                             0 10 i   
!--- これは R104 のネクストホップです。

* i                 192.168.12.1                  100      0 10 i
*> 10.10.34.0/24    10.10.24.4                             0 10 i   
!--- これは R104 のネクストホップです。

* i                 192.168.12.1             0    100      0 10 i
* i192.168.11.0     192.168.12.1             0    100      0 i
*>                  0.0.0.0                  0         32768 i
* i192.168.12.0     192.168.12.1             0    100      0 i
*>                  0.0.0.0                  0         32768 i

R102# show ip route

!--- 出力を省略。

Gateway of last resort is 10.10.24.4 to network 0.0.0.0

C    192.168.12.0/24 is directly connected, Ethernet0/0
C    192.168.11.0/24 is directly connected, Ethernet0/0
     10.0.0.0/24 is subnetted, 2 subnets
C       10.10.24.0 is directly connected, Serial8/0
B       10.10.34.0 [20/0] via 10.10.24.4, 00:11:21   
!--- これは R104 のネクストホップです。

B*   0.0.0.0/0 [20/0] via 10.10.24.4, 00:11:21       
!--- これは R104 のネクストホップです。

AS 10 から AS 11 への着信トラフィックの確認

ネットワーク 192.168.11.0 と 192.168.12.0 は AS 11 に属します。ポリシーに従って、AS 11 ではネットワーク 192.168.11.0 宛てのトラフィックでは R103-R101 リンクが優先され、ネットワーク 192.168.12.0 宛てのトラフィックでは R104-R102 リンクが優先されます。

R103# show ip bgp

BGP table version is 4, local router ID is 10.10.34.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 10.10.34.0/24    0.0.0.0                  0         32768 i
*> 192.168.11.0     10.10.13.1               0             0 11 i             
!--- ネクストホップは R101。

*  192.168.12.0     10.10.13.1               0             0 11 11 11 11 i   
*>i                 10.10.34.4               0    100      0 11 i             
!--- ネクストホップは R104。


R103# show ip route

!--- 出力を省略。

Gateway of last resort is not set

B    192.168.12.0/24 [200/0] via 10.10.34.4, 00:04:46  
!--- ネクストホップは R104。

B    192.168.11.0/24 [20/0] via 10.10.13.1, 00:04:46   
!--- ネクストホップは R101。

     10.0.0.0/24 is subnetted, 2 subnets
C       10.10.13.0 is directly connected, Serial8/0
C       10.10.34.0 is directly connected, Ethernet0/0

R103 では、ネットワーク 192.168.11.0 への最適パスは R103-R101 リンクを通り、ネットワーク 192.168.12.0 への最適パスは R104 を経由して AS 11 に向かいます。この場合は、最短パス長によって最適パスが決定されています。

同様に、R104 でも BGP テーブルとルーティング テーブルは次のようになります。

R104# show ip bgp

BGP table version is 13, local router ID is 10.10.34.4
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*>i10.10.34.0/24    10.10.34.3               0    100      0 i
*>i192.168.11.0     10.10.34.3               0    100      0 11 i
*                   10.10.24.2               0             0 11 11 11 11 i
*> 192.168.12.0     10.10.24.2               0             0 11 i

R104# show ip route

!--- 出力を省略。

Gateway of last resort is not set

B    192.168.12.0/24 [20/0] via 10.10.24.2, 00:49:06    
!--- ネクストホップは R102。

B    192.168.11.0/24 [200/0] via 10.10.34.3, 00:07:36   
!--- ネクストホップは R103。

     10.0.0.0/24 is subnetted, 2 subnets
C       10.10.24.0 is directly connected, Serial8/0
C       10.10.34.0 is directly connected, Ethernet0/0

R101-R103 リンクで障害が発生した場合の確認

R101-R103 リンクで障害が発生すると、すべてのトラフィックが R102 を経由するように再ルーティングされます。次の図はこの変更を示しています。

40d.gif

この状況をシミュレートするために、R103 で R103-R101 リンクをシャットダウンします。

R103(config)# interface serial 8/0
R103(config-if)# shutdown

*May 1 00:52:33.379: %BGP-5-ADJCHANGE: neighbor 10.10.13.1 Down Interface flap  
*May 1 00:52:35.311: %LINK-5-CHANGED: Interface Serial8/0, changed state to 
 administratively down
*May 1 00:52:36.127: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial8/0, changed 
 state to down

AS 10 への発信ルートを確認します。

R101# show ip bgp

BGP table version is 17, local router ID is 192.168.12.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*>i0.0.0.0          192.168.12.2                  100      0 10 i   
!--- これは R102 のネクストホップです。

*>i10.10.34.0/24    192.168.12.2                  100      0 10 i   
!--- これは R102 のネクストホップです。

* i192.168.11.0     192.168.12.2             0    100      0 i
*>                  0.0.0.0                  0         32768 i
* i192.168.12.0     192.168.12.2             0    100      0 i
*>                  0.0.0.0                  0         32768 i

R101# show ip route

!--- 出力を省略。

Gateway of last resort is 192.168.12.2 to network 0.0.0.0

C    192.168.12.0/24 is directly connected, Ethernet0/0
C    192.168.11.0/24 is directly connected, Ethernet0/0
     10.0.0.0/24 is subnetted, 1 subnets
B       10.10.34.0 [200/0] via 192.168.12.2, 00:01:34
B*   0.0.0.0/0 [200/0] via 192.168.12.2, 00:01:34      
!--- 発信トラフィックはすべて R102 を経由。

     
R102# show ip route

!--- 出力を省略。

Gateway of last resort is 10.10.24.4 to network 0.0.0.0

C    192.168.12.0/24 is directly connected, Ethernet0/0
C    192.168.11.0/24 is directly connected, Ethernet0/0
     10.0.0.0/24 is subnetted, 2 subnets
C       10.10.24.0 is directly connected, Serial8/0
B       10.10.34.0 [20/0] via 10.10.24.4, 00:13:22
B*   0.0.0.0/0 [20/0] via 10.10.24.4, 00:55:22         
!--- R102 上の発信トラフィックはすべて R104 を経由。

R101-R103 がダウンしたときの着信トラフィックのルートを確認します。

R103# show ip bgp

BGP table version is 6, local router ID is 10.10.34.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 10.10.34.0/24    0.0.0.0                  0         32768 i
*>i192.168.11.0     10.10.34.4               0    100      0 11 11 11 11 i
*>i192.168.12.0     10.10.34.4               0    100      0 11 i

R103# show ip route

!--- 出力を省略。

Gateway of last resort is not set

B    192.168.12.0/24 [200/0] via 10.10.34.4, 00:14:55      
!--- ネクストホップは R104。

B    192.168.11.0/24 [200/0] via 10.10.34.4, 00:05:46      
!--- ネクストホップは R104。

     10.0.0.0/24 is subnetted, 1 subnets
C       10.10.34.0 is directly connected, Ethernet0/0

R104 では、192.168.11.0 および 192.168.12.0 宛てのトラフィックは R104-R102 リンクを通ります。

R104# show ip route

!--- 出力を省略。

Gateway of last resort is not set

B    192.168.12.0/24 [20/0] via 10.10.24.2, 00:58:35    
!--- ネクストホップは R102。

B    192.168.11.0/24 [20/0] via 10.10.24.2, 00:07:57    
!--- ネクストホップは R102。

     10.0.0.0/24 is subnetted, 2 subnets
C       10.10.24.0 is directly connected, Serial8/0
C       10.10.34.0 is directly connected, Ethernet0/0

トラブルシューティング

現在のところ、この設定に関する特定のトラブルシューティング情報はありません。

1 台のローカル ルータを経由して 2 つの ISP にマルチホームしている場合のロード シェアリング

このシナリオでは、マルチホーム環境でロード バランシングは使用できないので、使用できるのはロード シェアリングだけになります。BGP では、複数の AS から学習された BGP ルートの中で宛先への最適なパスが 1 つだけ選択されるので、ロード バランシングは使用できません。ここでは、1.0.0.0 〜 128.0.0.0 の範囲のルートについては ISP(A)から学習した方に大きいメトリックを設定し、それ以外のルートについては ISP(B)から学習した方に大きいメトリックを設定します。次のネットワーク ダイアグラムは、その一例です。

詳細は、『2 つの異なるサービス プロバイダー(マルチホーミング)を使用した BGP の設定例』を参照してください。

ネットワーク ダイアグラム

このセクションでは、次のネットワーク構成を使用しています。

40e.gif

設定例

このセクションでは、次の設定を使用しています。

RouterA
interface Serial 0
 ip address 160.20.20.1 255.255.255.0
 no ip route-cache
    
interface Serial 1
 ip address 150.10.10.1 255.255.255.0
 no ip route-cache
   
router bgp 11
neighbor 160.20.20.2 remote-as 10
neighbor 160.20.20.2 route-map UPDATES-1 in

!--- ここでは、128.0.0.0 までのネットワークだけが許可されます。

neighbor 150.10.10.2 remote-as 12
neighbor 150.10.10.2 route-map UPDATES-2 in

!--- ここでは、128.0.0.0 を超える任意のネットワークが許可されます。

auto-summary
  
route-map UPDATES-1 permit 10
match ip address 1
set weight 100
 
route-map UPDATES-1 permit 20
match ip address 2
  
route-map UPDATES-2 permit 10
match ip address 1
  
route-map UPDATES-2 permit 20
match ip address 2
set weight 100
  
access-list 1 permit 0.0.0.0  127.255.255.255
access-list 2 deny 0.0.0.0 127.255.255.255
access-list 2 permit any

RouterB
interface Loopback0
 ip address 2.2.2.2 255.255.255.0
int loopback 1
 ip address 170.16.6.5 255.255.255.0
 
interface Serial 0
 ip address 160.20.20.2 255.255.255.0
 no ip route-cache
  
router bgp 10
neighbor 160.20.20.1 remote-as 11
network 2.0.0.0
network 170.16.0.0
auto-summary

RouterC
interface Loopback0 
 ip address 170.16.6.6 255.255.255.0
 
interface Loopback1 
 ip address 2.2.2.1 255.255.255.0
  
interface Serial 1
 ip address 150.10.10.2 255.255.255.0
 no ip route-cache
  
router bgp 12
neighbor 150.10.10.1 remote-as 11
network 2.0.0.0 
network 170.16.0.0
auto-summary

確認

このセクションでは、設定が正常に動作していることを確認しています。

特定の show コマンドが、アウトプットインタープリタ登録ユーザ専用)(OIT)でサポートされています。OIT を使用して、show コマンド出力の解析を表示できます。
一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことを、ご了承ください。

show ip route コマンドの出力と traceroute コマンドの出力には、128.0.0.0 より下のネットワークが 160.20.20.2 から RouterA を出て行くことが示されています。このルートは、serial 0 インターフェイスからのネクストホップです。残りのネットワークは、150.10.10.2 から出て行きます。このルートは serial 1 インターフェイスからのネクストホップです。

RouterA# show ip route

!--- 出力を省略。

Gateway of last resort is not set
B    170.16.0.0/16 [20/0] via 150.10.10.2, 00:43:43       
!--- これは serial 1 から出る場合のネクストホップです。

B    2.0.0.0/8 [20/0] via 160.20.20.2, 00:43:43                   
!--- これは serial 0 から出る場合のネクストホップです。

    160.20.0.0/24 is subnetted, 1 subnets
C               160.20.20.0 is directly connected, Serial0
    150.10.0.0/24 is subnetted, 1 subnets
C               150.10.10.0 is directly connected, Serial1

RouterA# show ip bgp

BGP table version is 3, local router ID is 160.20.20.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
 Network Next Hop Metric LocPrf Weight Path
   Network          Next Hop            Metric LocPrf Weight Path
*  2.0.0.0          150.10.10.2              0             0 12 i
*>                  160.20.20.2              0           100 10 i
*  170.16.0.0       160.20.20.2              0             0 10 i
*>                  150.10.10.2              0           100 12 i
  
RouterA# traceroute  2.2.2.2

Type escape sequence to abort.
Tracing the route to 2.2.2.2 

1   160.20.20.2 16 msec * 16 msec 

RouterA# traceroute  170.16.6.6

Type escape sequence to abort.
Tracing the route to 170.16.6.6

1   150.10.10.2 4 msec * 4 msec

トラブルシューティング

現在のところ、この設定に関する特定のトラブルシューティング情報はありません。

複数のローカル ルータを経由して 2 つの ISP にマルチホームしている場合のロード シェアリング

2 つの ISP を使用したマルチホーム環境では、ロード バランシングは使用できません。BGP では、複数の AS から学習された BGP パスの中で宛先への最適なパスが 1 つだけ選択されるので、ロード バランシングは使用できません。ただし、このようなマルチホーム BGP ネットワークではロード シェアリングを使用できます。事前定義したポリシーに基づき、各種の BGP アトリビュートを使用してトラフィック フローをコントロールします。

このセクションでは、最も頻繁に使用されるマルチホーム設定について説明しています。次の設定は、ロード シェアリングを実現する方法を示しています。次の「ネットワーク ダイアグラム」を見てください。この図では、AS 100 のマルチホームで信頼性とロード シェアリングが実現されています。

注:この例で使用する IP アドレスは、RFC 1918leavingcisco.com 標準のプライベート アドレス レンジに倣っているので、実際のインターネット上でのルーティングには使用できません。

話を簡単にするため、AS 100 の BGP ルーティング ポリシーを次のように想定します。

  • AS 100 は、両プロバイダーのローカル ルートと、それ以外のインターネット ルートのデフォルトを受け入れます。

  • 発信トラフィック ポリシーは次のとおりです。

    • AS 300 宛てのトラフィックは、R1 - ISP(A)リンクを通ります。

    • AS 400 宛てのトラフィックは、R2 - ISP(B)リンクを通ります。

    • その他のトラフィックはすべてデフォルト ルート 0.0.0.0 を優先し、R1 - ISP(A)リンクを通ります。

    • R1 - ISP(A)リンクで障害が発生した場合は、すべてのトラフィックが R2 - ISP(B)リンクを通ります。

  • 着信トラフィック ポリシーは次のとおりです。

    • インターネットからのネットワーク 10.10.10.0/24 宛てのトラフィックは、ISP(A)- R1 リンクから到達します。

    • インターネットからのネットワーク 10.10.20.0/24 宛てのトラフィックは、ISP(B)- R2 リンクから到達します。

    • 一方の ISP で障害が発生した場合は、すべてのネットワークに対して、他方の ISP がインターネットから AS 100 へトラフィックをルーティングします。

ネットワーク ダイアグラム

このセクションでは、次のネットワーク構成を使用しています。

40f.gif

設定例

このセクションでは、次の設定を使用しています。

R2
interface Ethernet0
 ip address 192.168.21.2 255.255.255.0
 !
interface Serial0
  ip address 192.168.42.2 255.255.255.0  
router bgp 100  
 no synchronization  
 bgp log-neighbor-changes  

!--- 次の 2 行は、BGP ピアへのネットワークのアナウンスになります。

 network 10.10.10.0 mask 255.255.255.0  
 network 10.10.20.0 mask 255.255.255.0  

!--- 次の行は、R1 での iBGP の設定になります。
 
  neighbor 192.168.21.1 remote-as 100  
  neighbor 192.168.21.1 next-hop-self  

!--- 次の行は、ISP(B)との eBGP の設定になります。
 
 neighbor 192.168.42.4 remote-as 400  

!--- これは、特定のルートにアトリビュートを適用するための 
!--- 着信ポリシー ルート マップです。
 
 neighbor 192.168.42.4 route-map AS-400-INCOMING in  

!--- これは、特定のルートにアトリビュートを適用するための 
!--- 発信ポリシー ルート マップです。
 
 neighbor 192.168.42.4 route-map AS-400-OUTGOING out  
 no auto-summary  
!  
!  

!--- この行は AS パス アクセス リストを設定します。
!--- この行では、プロバイダーのルーティング ドメイン内部にあるすべてのルートが許可されます。

ip as-path access-list 1 permit ^400$  
!  

!--- 次の 2 行では、アクセス リストが設定されます。
 
access-list 10 permit 10.10.10.0 0.0.0.255  
access-list 20 permit 10.10.20.0 0.0.0.255  

!--- 次の 3 行では、AS パス アクセス リスト 1 に一致するルートの 
!--- LOCAL_PREF が設定されます。
 
route-map AS-400-INCOMING permit 10  
 match as-path 1  
 set local-preference 150  

!--- ここでは、アクセス リスト 10 で許可されたネットワークの BGP アップデートに対して、 
!--- ルート マップで AS 100 を先頭に追加しています。
 
route-map AS-400-OUTGOING permit 10  
 match ip address 10  
 set as-path prepend 100  

!--- この行では、アクセス リスト 20 で許可されたネットワークを
!--- BGP アトリビュートを変更せずにアナウンスします。
 
route-map AS-400-OUTGOING permit 20  
 match ip address 20

R1
interface Serial0/0   
 ip address 192.168.31.1 255.255.255.0  
!  
interface Ethernet1/0  
 ip address 192.168.21.1 255.255.255.0  
!  
router bgp 100  
 no synchronization  
 bgp log-neighbor-changes  
 network 10.10.10.0 mask 255.255.255.0  
 network 10.10.20.0 mask 255.255.255.0
   
!--- R2 との iBGP ピアリング 
neighbor 192.168.21.2 remote-as 100  
neighbor 192.168.21.2 next-hop-self  
! 

!--- この行では、ISP(A)との eBGP ピアリングを設定しています。
 
neighbor 192.168.31.3 remote-as 300  
!  

!--- これは、特定のルートにアトリビュートを適用するための 
!--- 発信ポリシー ルート マップです。
 
 neighbor 192.168.31.3 route-map AS-300-INCOMING in  
!  

!--- これは、特定のルートにアトリビュートを適用するための 
!--- 発信ポリシー ルート マップです。
 
neighbor 192.168.31.3 route-map AS-300-OUTGOING out  
 no auto-summary  
  

!--- この行は AS パス アクセス リストを設定します。
!--- この行では、プロバイダーのルーティング ドメイン内部にあるすべてのルートが許可されます。

ip as-path access-list 1 permit ^300$  
!  

!--- 次の 2 行では、IP アクセス リストが設定されます。

access-list 10 permit 10.10.20.0 0.0.0.255  
access-list 20 permit 10.10.10.0 0.0.0.255  


!--- 次の 3 行では、AS パス アクセス リスト 1 に一致するルートの 
!--- LOCAL_PREF が設定されます。
 
route-map AS-300-INCOMING permit 10  
 match as-path 1  
 set local-preference 200  
!  

!--- ここでは、アクセス リスト 10 で許可されたネットワークの BGP アップデートに対して、 
!--- ルート マップで AS 100 を先頭に追加しています。
 
route-map AS-300-OUTGOING permit 10  
 match ip address 10  
 set as-path prepend 100  
!  

!--- 次の行では、アクセス リスト 20 で許可されたネットワークを 
!--- BGP アトリビュートを変更せずにアナウンスします。
 
route-map AS-300-OUTGOING permit 20  
 match ip address 20  
!

確認

このセクションでは、設定が正常に動作していることを確認しています。

特定の show コマンドが、アウトプットインタープリタ登録ユーザ専用)(OIT)でサポートされています。OIT を使用して、show コマンド出力の解析を表示できます。
一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことを、ご了承ください。

show ip bgp コマンドを発行して、発信/着信ポリシーが正しく動作していることを確認します。

注:show ip bgp の出力中に見られる大なり記号(>)は、実行可能なパスの中で対象のネットワーク用に使用される最適なパスを表します。詳細は、『BGP で最適パスを選択するアルゴリズム』を参照してください。

R1# show ip bgp

BGP table version is 6, local router ID is 192.168.31.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

BGP table version is 6, local router ID is 192.168.31.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

Network          Next Hop            Metric LocPrf Weight Path
*> 0.0.0.0          192.168.31.3                  200      0 300 i

!--- この行は、AS 300(ISP(A))を介してデフォルト ルート 0.0.0.0/0 が 
!--- 優先されることを示しています。

* i10.10.10.0/24    192.168.21.2             0    100      0 i
*>                  0.0.0.0                  0         32768 i
* i10.10.20.0/24    192.168.21.2             0    100      0 i
*>                  0.0.0.0                  0         32768 i
*> 30.30.30.0/24    192.168.31.3             0    200      0 300 i
*>i40.40.40.0/24    192.168.21.2             0    150      0 400 i

!--- R1-ISP(A)リンクを介して、ネットワーク 30.30.30.0/24(AS 300)への 
!--- ルートが優先されます。
!--- R2-ISP(B)リンクを介してネットワーク 40.40.40.0/24(AS 400)への 
!--- ルートが優先されます。

次に、R2 での show ip bgp の出力を示します。

R2# show ip bgp 

BGP table version is 8, local router ID is 192.168.42.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*  0.0.0.0          192.168.42.4                  150      0 400 i  
*>i                 192.168.21.1                  200      0 300 i

!--- この行は、AS 300、次に R2-ISP(B)リンクを介して
!--- デフォルト ルート 0.0.0.0/0 が優先されることを示しています。

*> 10.10.10.0/24    0.0.0.0                  0         32768 i
* i                 192.168.21.1             0    100      0 i
*> 10.10.20.0/24    0.0.0.0                  0         32768 i
* i                 192.168.21.1             0    100      0 i
*>i30.30.30.0/24    192.168.21.1             0    200      0 300 i 
*> 40.40.40.0/24    192.168.42.4             0    150      0 400 i

!--- R1-ISP(A)リンクを介して、ネットワーク 30.30.30.0/24(AS 300)への 
!--- ルートが優先されます。
!--- R2-ISP(B)リンクを介してネットワーク 40.40.40.0/24(AS 400)への 
!--- ルートが優先されます。

R6 で show ip bgp コマンドを発行し、ネットワーク 10.10.10.0/24 と 10.10.20.0/24 の着信ポリシーを確認します。

R6# show ip bgp

BGP table version is 15, local router ID is 192.168.64.6
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 10.10.10.0/24    192.168.63.3                           0 300 100 100 i

!--- この行は、ネットワーク 10.10.10.0/24 では AS 300 経由で
!--- ISP(A)- R1 リンクを使用してルーティングが行われることを示しています。

*                   192.168.64.4                           0 400 100 100 100 i
*  10.10.20.0/24    192.168.63.3                           0 300 100 100 i
*>                  192.168.64.4                           0 400 100 i

!--- この行は、ネットワーク 10.10.20.0/24 では AS 400 経由で
!--- ISP(B)- R2 リンクを使用してルーティングが行われることを示しています。

*> 30.30.30.0/24    192.168.63.3             0             0 300 i
*> 40.40.40.0/24    192.168.64.4             0             0 400 i

R1 上で R1 - ISP(A)リンクをシャットダウンして BGP テーブルを確認します。インターネットへのトラフィックはすべて R2 - ISP(B)リンクを通るようにルーティングされるものと予想されます。

R1(config)# interface serial 0/0
R1(config-if)# shutdown
 
*May  2 19:00:47.377: %BGP-5-ADJCHANGE: neighbor 192.168.31.3 Down Interface flap 
*May  2 19:00:48.277: %LINK-5-CHANGED: Interface Serial0/0, changed state to 
 administratively  down 
*May 23 12:00:51.255: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0, changed 
 state to down 

R1# show ip bgp 

BGP table version is 12, local router ID is 192.168.31.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*>i0.0.0.0          192.168.21.2                  150      0 400 i  

!--- 現在の最適なデフォルト パスは R2 - ISP(B)リンクを経由します。

* i10.10.10.0/24    192.168.21.2             0    100      0 i
*>                  0.0.0.0                  0         32768 i
* i10.10.20.0/24    192.168.21.2             0    100      0 i
*>                  0.0.0.0                  0         32768 i
*>i40.40.40.0/24    192.168.21.2             0    150      0 400 i

R2# show ip bgp 

BGP table version is 14, local router ID is 192.168.42.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 0.0.0.0          192.168.42.4                  150      0 400 i  

!--- 現在の最適なデフォルト ルートは、ローカル プリファレンス 150 で 
!--- ISP(B)を経由します。

* i10.10.10.0/24    192.168.21.1             0    100      0 i
*>                  0.0.0.0                  0         32768 i
* i10.10.20.0/24    192.168.21.1             0    100      0 i
*>                  0.0.0.0                  0         32768 i
*> 40.40.40.0/24    192.168.42.4             0    150      0 400 i

R6 でのネットワーク 10.10.10.0/24 のルートを見てみましょう。

R6# show ip bgp 

BGP table version is 14, local router ID is 192.168.64.6
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 10.10.10.0/24    192.168.64.4                           0 400 100 100 i  

!--- ネットワーク 10.10.10.0 へは、AS パス プリペンドを指定して
!--- ネットワークをアナウンスしている
!--- ISP(B)を経由して到達できます。
 
*> 10.10.20.0/24    192.168.64.4                           0 400 100 i
*> 30.30.30.0/24    192.168.63.3             0             0 300 i
*> 40.40.40.0/24    192.168.64.4             0             0 400 i

トラブルシューティング

現在のところ、この設定に関する特定のトラブルシューティング情報はありません。


関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 13762