＜前頁 次頁＞ ＜＜ ＞＞ ↓ 目次 （番号順 (詳細)・ 回線別 (詳細)・ 機能別 (詳細)）

CentreCOM AR550S 設定例集 2.9 #125

# BGP-4：2つのISPに対するマルチホーム（ASパス長の操作による負荷分散）

ドメイン間経路制御プロトコルBGP-4（Border Gateway Protocol version 4）の設定例です。ここでは、2つのISPに接続するマルチホームの構成例を示します。BGP-4では、経路情報にさまざまな「属性」を付加することにより、他ASの経路選択プロセスに影響を与えることができます。この例では、各ISPに通知する経路のAS_PATH（ASパス）属性を操作することにより、下りトラフィックの負荷分散を試みます。また、自AS宛でないトラフィックの通過（トランジットサービス）を行わないよう設定します。

> Note - 本機能はオプション機能ですので、ご使用にはフィーチャー（追加機能）ライセンスが必要です。

ここでは、次のような構成のネットワークを例に解説します。

AS 65030は3つのサブネット（プレフィックス）を持っており、ルーターA経由でISP1（AS 65010）と、ルーターB経由でISP2（AS 65020）と接続しています。AS 65030では、各ISPからの下りトラフィックが次のように負荷分散されることを望んでいます。

- 192.168.10.0/24宛：ルーターA（ISP1）経由
- 192.168.20.0/24宛：ルーターB（ISP2）経由

これを実現するため、AS 65030は各ISPに対し、各プレフィックス（192.168.10.0/24と192.168.20.0/24）のAS_PATH（ASパス）属性を次のように操作してISPに通知します。

- ISP1（ルーターA側）とのE-BGPセッション
  - 192.168.10.0/24：AS_PATH=65030
  - 192.168.20.0/24：AS_PATH=65030 65030 65030 65030（自AS番号を3つ余計に追加）
- ISP2（ルーターB側）とのE-BGPセッション
  - 192.168.10.0/24：AS_PATH=65030 65030 65030 65030（自AS番号を3つ余計に追加）
  - 192.168.20.0/24：AS_PATH=65030

ASパスは、プレフィックスがどのASを通って通知されてきたかを示すAS番号のリストです。BGP-4が経路を選択する場合は、ASパスが最も短い経路を選択します。このことを利用して、特定のプレフィックス宛のトラフィックを受け取りたくない場合に、ASパスを意識的に長くして他のASに通知することができます。
またこの例では、自AS宛のトラフィックだけを受け取るため、自AS内のプレフィックスだけをISP1、ISP2に通知するようにします。

> Note - ISP2から学習した経路をISP1に再通知すると、ISP1からISP2に宛たトラフィックが自ASを通過する可能性があります。複数のASに接続しているときは、不要なトラフィックが自ASに流れ込まないよう、通知する経路情報の選別が必要です。

ルーターAの設定

1. 専用線の設定を行います。

   `SET PRI=0 MODE=TDM TDMSLOTS=1-24 ↓
   CREATE TDM GROUP=isp1 INT=pri0 SLOTS=1-24 ↓
   `
2. PPPインターフェースを作成します。

   `CREATE PPP=0 OVER=TDM-isp1 ↓
   `
3. IPモジュールを有効にします。

   `ENABLE IP ↓`
4. 各インターフェースにIPアドレスを割り当てます。

   `ADD IP INT=eth0 IP=192.168.30.1 MASK=255.255.255.0 ↓
   ADD IP INT=vlan1 IP=192.168.10.1 MASK=255.255.255.0 ↓
   ADD IP INT=ppp0 IP=192.168.100.1 MASK=255.255.255.0 ↓
   `
5. 自AS番号を設定します。

   `SET IP AUTONOMOUS=65030 ↓`
6. ISP1（AS 65010）のBGPピアを指定します。自分と異なるAS番号を持つピアはE-BGPピア（外部ピア）となります。

   `ADD BGP PEER=192.168.100.2 REMOTEAS=65010 ↓`
7. ルーターBをBGPピアとして指定します。自分と同じAS番号を持つピアはI-BGPピア（内部ピア）となります。「NEXTHOPSELF=YES」は、自分自身をNEXT_HOPとして通知するための設定です。

   `ADD BGP PEER=192.168.30.2 REMOTEAS=65030 NEXTHOPSELF=YES ↓`
8. 自AS内のプレフィックスにマッチするASパスフィルター「1」を作成します。ASパス正規表現「^65030*$」は、ASパスが空であるか自AS番号（65030）のみ、すなわち、自AS内でBGPにインポートされた経路であることを示します。

   `ADD IP ASPATHLIST=1 ENTRY=1 INCLUDE="^65030*$" ↓`
9. ルーターBから受信した自AS内のプレフィックスにマッチするASパスフィルター「2」を作成します。ASパス正規表現「^$」はASパスが空であることを示します。

   `ADD IP ASPATHLIST=2 ENTRY=1 INCLUDE="^$" ↓`
10. ルートマップ「add_myasn」を作成し、ASパスフィルター「2」にマッチする経路のASパスに自AS番号を3個余分に追加するエントリー「1」を追加します。

    `ADD IP ROUTEMAP=add_myasn ENTRY=1 MATCH ASPATH=2 ↓
    ADD IP ROUTEMAP=add_myasn ENTRY=1 SET ASPATH=65030,65030,65030 ↓
    `
11. BGPで配布する経路情報を指定します。ここでは静的経路（ローカル経路）を配布します。

    `ADD BGP IMPORT=STATIC ↓`
12. ISP1のE-BGPピア（192.168.100.2）に経路を通知するときに、ASパスフィルター「1」にマッチしたもの（自AS起源の経路）だけを通知するよう設定します。これにより、自AS宛のトラフィックだけがISP1から流れ込むようにします。

    `SET BGP PEER=192.168.100.2 OUTPATHFILTER=1 ↓`
13. ルーターB（192.168.30.2）から経路を受信するときに、ルートマップ「add_myasn」を適用し、自AS内起源の経路に自AS番号を3個余計に追加するよう設定します。

    `SET BGP PEER=192.168.30.2 INROUTEMAP=add_myasn ↓`
14. 各BGPピアとのセッションを開始します。

    `ENABLE BGP PEER=192.168.100.2 ↓
    ENABLE BGP PEER=192.168.30.2 ↓
    `

ルーターBの設定

1. 専用線の設定を行います。

   `SET PRI=0 MODE=TDM TDMSLOTS=1-24 ↓
   CREATE TDM GROUP=isp2 INT=pri0 SLOTS=1-24 ↓
   `
2. PPPインターフェースを作成します。

   `CREATE PPP=0 OVER=TDM-isp2 ↓
   `
3. IPモジュールを有効にします。

   `ENABLE IP ↓`
4. 各インターフェースにIPアドレスを割り当てます。

   `ADD IP INT=eth0 IP=192.168.30.2 MASK=255.255.255.0 ↓
   ADD IP INT=vlan1 IP=192.168.20.1 MASK=255.255.255.0 ↓
   ADD IP INT=ppp0 IP=192.168.110.1 MASK=255.255.255.0 ↓
   `
5. 自AS番号を設定します。

   `SET IP AUTONOMOUS=65030 ↓`
6. ISP2（AS 65020）のBGPピアを指定します。自分と異なるAS番号を持つピアはE-BGPピア（外部ピア）となります。

   `ADD BGP PEER=192.168.110.2 REMOTEAS=65020 ↓`
7. ルーターAをBGPピアとして指定します。自分と同じAS番号を持つピアはI-BGPピア（内部ピア）となります。「NEXTHOPSELF=YES」は、自分自身をNEXT_HOPとして通知するための設定です。

   `ADD BGP PEER=192.168.30.1 REMOTEAS=65030 NEXTHOPSELF=YES ↓`
8. 自AS内のプレフィックスにマッチするASパスフィルター「1」を作成します。ASパス正規表現「^65030*$」は、ASパスが空であるか自AS番号（65030）のみ、すなわち、自AS内でBGPにインポートされた経路であることを示します。

   `ADD IP ASPATHLIST=1 ENTRY=1 INCLUDE="^65030*$" ↓`
9. ルーターAから受信した自AS内のプレフィックスにマッチするASパスフィルター「2」を作成します。ASパス正規表現「^$」はASパスが空であることを示します。

   `ADD IP ASPATHLIST=2 ENTRY=1 INCLUDE="^$" ↓`
10. ルートマップ「add_myasn」を作成し、ASパスフィルター「2」にマッチする経路のASパスに自AS番号を3個余分に追加するエントリー「1」を追加します。

    `ADD IP ROUTEMAP=add_myasn ENTRY=1 MATCH ASPATH=2 ↓
    ADD IP ROUTEMAP=add_myasn ENTRY=1 SET ASPATH=65030,65030,65030 ↓
    `
11. BGPで配布する経路情報を指定します。ここでは静的経路（ローカル経路）を配布します。

    `ADD BGP IMPORT=STATIC ↓`
12. ISP2のE-BGPピア（192.168.110.2）に経路を通知するときに、ASパスフィルター「1」にマッチしたもの（自AS起源の経路）だけを通知するよう設定します。これにより、自AS宛のトラフィックだけがISP2から流れ込むようにします。

    `SET BGP PEER=192.168.110.2 OUTPATHFILTER=1 ↓`
13. ルーターA（192.168.30.1）から経路を受信するときに、ルートマップ「add_myasn」を適用し、自AS内起源の経路に自AS番号を3個余計に追加するよう設定します。

    `SET BGP PEER=192.168.30.1 INROUTEMAP=add_myasn ↓`
14. 各BGPピアとのセッションを開始します。

    `ENABLE BGP PEER=192.168.110.2 ↓
    ENABLE BGP PEER=192.168.30.1 ↓
    `

メモ

■ 経路表を確認するには、SHOW IP ROUTEコマンドを使います。

`SHOW IP ROUTE ↓`

■ BGPピアの状態はSHOW BGP PEERコマンドで確認します。

`SHOW BGP PEER ↓
SHOW BGP PEER=192.168.100.2 ↓
`

■ BGP-4の経路表を確認するには、SHOW BGP ROUTEコマンドを使います。

`SHOW BGP ROUTE ↓
`

■ BGP-4の設定情報を確認するにはSHOW BGPコマンドを使います。

`SHOW BGP ↓`

■ ASパスフィルターの設定内容はSHOW IP ASPATHLISTコマンドで確認します。

`SHOW IP ASPATHLIST ↓`

■ ルートマップの設定内容はSHOW IP ROUTEMAPコマンドで確認します。

`SHOW IP ROUTEMAP ↓`

まとめ

ルーターAのコンフィグ [テキスト版]

`SET PRI=0 MODE=TDM TDMSLOTS=1-24 ↓ CREATE TDM GROUP=isp1 INT=pri0 SLOTS=1-24 ↓ CREATE PPP=0 OVER=TDM-isp1 ↓ ENABLE IP ↓ ADD IP INT=eth0 IP=192.168.30.1 MASK=255.255.255.0 ↓ ADD IP INT=vlan1 IP=192.168.10.1 MASK=255.255.255.0 ↓ ADD IP INT=ppp0 IP=192.168.100.1 MASK=255.255.255.0 ↓ SET IP AUTONOMOUS=65030 ↓ ADD BGP PEER=192.168.100.2 REMOTEAS=65010 ↓ ADD BGP PEER=192.168.30.2 REMOTEAS=65030 NEXTHOPSELF=YES ↓ ADD IP ASPATHLIST=1 ENTRY=1 INCLUDE="^65030*$" ↓ ADD IP ASPATHLIST=2 ENTRY=1 INCLUDE="^$" ↓ ADD IP ROUTEMAP=add_myasn ENTRY=1 MATCH ASPATH=2 ↓ ADD IP ROUTEMAP=add_myasn ENTRY=1 SET ASPATH=65030,65030,65030 ↓ ADD BGP IMPORT=STATIC ↓ SET BGP PEER=192.168.100.2 OUTPATHFILTER=1 ↓ SET BGP PEER=192.168.30.2 INROUTEMAP=add_myasn ↓ ENABLE BGP PEER=192.168.100.2 ↓ ENABLE BGP PEER=192.168.30.2 ↓`

ルーターBのコンフィグ [テキスト版]

`SET PRI=0 MODE=TDM TDMSLOTS=1-24 ↓ CREATE TDM GROUP=isp2 INT=pri0 SLOTS=1-24 ↓ CREATE PPP=0 OVER=TDM-isp2 ↓ ENABLE IP ↓ ADD IP INT=eth0 IP=192.168.30.2 MASK=255.255.255.0 ↓ ADD IP INT=vlan1 IP=192.168.20.1 MASK=255.255.255.0 ↓ ADD IP INT=ppp0 IP=192.168.110.1 MASK=255.255.255.0 ↓ SET IP AUTONOMOUS=65030 ↓ ADD BGP PEER=192.168.110.2 REMOTEAS=65020 ↓ ADD BGP PEER=192.168.30.1 REMOTEAS=65030 NEXTHOPSELF=YES ↓ ADD IP ASPATHLIST=1 ENTRY=1 INCLUDE="^65030*$" ↓ ADD IP ASPATHLIST=2 ENTRY=1 INCLUDE="^$" ↓ ADD IP ROUTEMAP=add_myasn ENTRY=1 MATCH ASPATH=2 ↓ ADD IP ROUTEMAP=add_myasn ENTRY=1 SET ASPATH=65030,65030,65030 ↓ ADD BGP IMPORT=STATIC ↓ SET BGP PEER=192.168.110.2 OUTPATHFILTER=1 ↓ SET BGP PEER=192.168.30.1 INROUTEMAP=add_myasn ↓ ENABLE BGP PEER=192.168.110.2 ↓ ENABLE BGP PEER=192.168.30.1 ↓`

CentreCOM AR550S 設定例集 2.9 #125

(C) 2005-2012 アライドテレシスホールディングス株式会社

PN: J613-M0710-04 Rev.M

＜前頁 次頁＞ ＜＜ ＞＞ ↑ 目次 （番号順 (詳細)・ 回線別 (詳細)・ 機能別 (詳細)）