マルチプロトコル ラベル スイッチング(MPLS) : MPLS

MPLS VPN の基本設定

2009 年 3 月 12 日 - ライター翻訳版
その他のバージョン: PDFpdf | 機械翻訳版 (2013 年 8 月 21 日) | 英語版 (2007 年 11 月 16 日) | フィードバック

目次

概要
前提条件
      要件
      使用するコンポーネント
      関連製品
      表記法
設定
      ネットワーク ダイアグラム
      設定手順
      設定例
確認
トラブルシューティング
関連するシスコ サポート コミュニティ ディスカッション
関連情報

概要

このドキュメントでは、お客様のサイトで Border Gateway Protocol(BGP; ボーダー ゲートウェイ プロトコル)または Routing Information Protocol (RIP) が使用されている場合の、ATM 上での Multiprotocol Label Switching(MPLS; マルチプロトコル ラベル スイッチング)VPN の設定例を紹介します。

VPN 機能を MPLS と組み合せて使用すると、複数のサイトがサービス プロバイダーのネットワークを通じて透過的に相互接続できます。1 つのサービス プロバイダー ネットワークで複数の IP VPN をサポートできます。各 VPN は、ユーザからは他のすべてのネットワークから切り離されたプライベート ネットワークのように見えます。1 つの VPN を通じて、各サイトは同じ VPN 内にある他のサイトに IP パケットを送信できます。

各 VPN は 1 つ以上の VPN Routing or Forwarding instance(VRF; VPN ルーティング/転送インスタンス)に関連付けられます。VRF は、IP ルーティング テーブル、生成された Cisco Express Forwarding(CEF; Cisco 高速転送)テーブル、およびこの転送テーブルを使用するインターフェイスのセットから構成されます。

ルータは VRF ごとに異なるルーティング テーブルと CEF テーブルを保持します。そのため、情報が VPN の外部に送信されることがなく、さらに IP アドレスの重複問題を気にせずに複数の VPN で同じサブネットを使用できます。

Multiprotocol BGP(MP-BGP)を使用するルータは、MP-BGP 拡張コミュニティを使用して VPN ルーティング情報を配布します。

VPN 経由でのアップデートの配布についての詳細は、下記のドキュメントを参照してください。

前提条件

要件

このドキュメントに関する特別な要件はありません。

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。

P および PE ルータ

  • Cisco IOS(R) ソフトウェア リリース 12.2(6h) には MPLS VPN 機能が含まれています。

  • P 機能は 7200 シリーズ以上の Cisco ルータでサポートされています。PE 機能は Cisco 2691 ルータ、さらに Cisco 3640 シリーズ以上のルータでサポートされています。

C および CE ルータ

  • PE ルータとルーティング情報を交換できる、すべてのルータを使用できます。

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

関連製品

MPLS 機能を実装するには、Cisco 2600 か、それより上位のルータが必要です。MPLS 機能が備わった必要な Cisco IOS を選択するには、Software Advisor登録ユーザ専用)を使用してください。MPLS 機能をルータで実行するために追加する必要のある RAM とフラッシュ メモリも確認してください。WIC-1T、WIC-2T、および シリアル インターフェイスが使用できます。
一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことを、ご了承ください。

表記法

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

次のアルファベットは、使用されるルータおよびスイッチの各種タイプを表します。

  • P:プロバイダーのコア ルータ

  • PE:プロバイダーのエッジ ルータ

  • CE:カスタマーのエッジ ルータ

  • C:カスタマーのルータ

上記の表記法によって標準的なコンフィギュレーションを図示すると、次のようになります。

mplsvpn.gif

設定

このセクションでは、このドキュメントで説明する機能を設定するために必要な情報を提供します。

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

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

このドキュメントでは、次のネットワーク構成を使用しています。

new_mpls_vpn_basic1.gif

設定手順

詳細は、『MPLS バーチャル プライベート ネットワーク』を参照してください。

ip cef のイネーブル化

ip cef をイネーブルにするには、次の手順を使用します。パフォーマンスを向上させるには、ip cef distributed を使用します(使用可能な場合)。MPLS の設定後(インターフェイスで tag-switching ip を設定後)、PE で次の手順をすべて実行します。

  1. ip vrf <VPN routing/forwarding instance name> コマンドを使用して、接続された各 VPN に 1 つの VRF を作成します。

    このときに、次のことを行います。

    • その VPN で使用される適切なルート区分を指定します。これは IP アドレスを拡張するために使用されるため、これによって IP アドレスがどの VPN に所属するのかを特定できます。

      rd <VPN route distinguisher>
      
      
    • MP-BGP 拡張コミュニティのインポートおよびエクスポート プロパティを設定します。これらのプロパティは、インポートおよびエクスポート プロセスをフィルタリングするために使用されます。

      route-target [export|import|both] <target VPN extended community>
      
      
  2. ip vrf forwarding <VPN routing/forwarding instance name> コマンドを使用して、各インターフェイスに転送詳細情報を設定します。その後で、IP アドレスを設定することを忘れないようにしてください。

  3. PE-CE 間で使用するルーティング プロトコルに応じて、PE と CE の間でスタティック ルートまたはルーティング プロトコル(RIP、Open Shortest Path First [OSPF]、または BGP)を設定できます。詳細な設定例は、『MPLS over ATM のサポート』ページで公開されています。

MP-BGP の設定

PE ルータの間で MP-BGP を設定します。BGP の設定には、ルート リフレクタやコンフェデレーション方式を使用するなど、いくつかの方法があります。ここで使用する方法(直接近接ルータを設定する方法)は最も簡単ですが、最もスケーラビリティの低い方法です。

  1. それぞれの近接ルータを宣言します。

  2. この PE ルータでの各 VPN 表示に対して、address-family ipv4 vrf <VPN routing/forwarding instance name> コマンドを入力します。

    必要に応じて、次のステップを 1 回以上実行します。

    • スタティック ルーティング、RIP、または OSPF 情報を再配送します。

    • 接続されているルーティング情報を再配送します。

    • BGP による CE ルータとの近接関係をアクティブにします。

  3. address-family vpnv4 モードに入り、次のステップを実行します。

    • 近接ルータをアクティブにします。

    • 拡張コミュニティを使用する必要があることを指定します。これは必須です。

設定例

このドキュメントでは、次の設定を使用しています。

Pescara

Current configuration:
!
version 12.2
!
hostname Pescara
!
ip cef
!


!--- Customer A のコマンド

ip vrf Customer_A

!--- VPN ルーティングおよび転送(VRF)ルーティング テーブルをイネーブルにします。
!--- このコマンドは、グローバルにも、 
!--- ルータ設定モードにも使用できます。 

 rd 100:110

!--- ルート識別子により、VRF 用の 
!--- ルーティング/転送テーブルが作成されます。

 route-target export 100:1000

!--- 指定された VRF 用に、インポートとエクスポートの 
!--- ルート ターゲット拡張コミュニティのリストを作成します。

 route-target import 100:1000
!


!--- Customer B のコマンド

ip vrf Customer_B
 rd 100:120
 route-target export 100:2000
 route-target import 100:2000
!
interface Loopback0
 ip address 10.10.10.4 255.255.255.255
 ip router isis


!--- Customer A のコマンド

interface Loopback101
ip vrf forwarding Customer_A

!--- VRF インスタンスをインターフェイスまたはサブインターフェイスと関連付けます。

 ip address 200.0.4.1 255.255.255.0

!--- Loopback101 と 102 では、同じ IP アドレス 200.0.4.1 が使用されます。 
!--- これは、これらループバックが 2 つの異なったカスタマーの 
!--- VRF に属しているため許可されます。 

 no ip directed-broadcast
!


!--- Customer B のコマンド

interface Loopback102
 ip vrf forwarding Customer_B
 ip address 200.0.4.1 255.255.255.0

!--- Loopback101 と 102 では、同じ IP アドレス 200.0.4.1 が使用されます。 
!--- これは、これらループバックが 2 つの異なったカスタマーの 
!--- VRF に属しているため許可されます。
 
 no ip directed-broadcast
!
interface Serial2/0
 no ip address
 no ip directed-broadcast
 encapsulation frame-relay
 no fair-queue
!
interface Serial2/0.1 point-to-point
 description link to Pauillac
 bandwidth 512
 ip address 10.1.1.14 255.255.255.252
 no ip directed-broadcast
 ip router isis 
 tag-switching ip
 frame-relay interface-dlci 401   
!
router isis 
 net 49.0001.0000.0000.0004.00
 is-type level-1
!         
router bgp 100
 bgp log-neighbor-changes

!--- BGP ネイバーのリセットのロギングをイネーブルにします。

 neighbor 10.10.10.6 remote-as 100

!--- BGP またはマルチプロトコル BGP ネイバー テーブルにエントリを追加します。

 neighbor 10.10.10.6 update-source Loopback0

!--- BGP セッションをイネーブルにして、TCP 接続に 
!--- 特定の動作可能インターフェイスを使用するようにします。

!
 

!--- Customer A および Customer B のコマンド

 address-family vpnv4

!--- 標準の VPN バージョン 4 アドレス プレフィクスを使用する 
!--- BGP などのルーティング セッションを設定するために 
!--- アドレス ファミリ設定モードに入ります。

 neighbor 10.10.10.6 activate
 neighbor 10.10.10.6 send-community both
 
!--- コミュニティ アトリビュートを BGP ネイバーに送信します。

 exit-address-family
 !


!--- Customer B のコマンド

 address-family ipv4 vrf Customer_B

!--- 標準の VPN バージョン 4 アドレス プレフィクスを使用する 
!--- BGP などのルーティング セッションを設定するために 
!--- アドレス ファミリ設定モードに入ります。

 redistribute connected
 no auto-summary
 no synchronization
 exit-address-family
 !
 

!--- Customer A のコマンド

 address-family ipv4 vrf Customer_A
 redistribute connected
 no auto-summary
 no synchronization
 exit-address-family
!
ip classless
!
end

Pesaro

Current configuration:
!
version 12.1
!
hostname Pesaro
!


!--- Customer A のコマンド

ip vrf Customer_A
 rd 100:110
 route-target export 100:1000
 route-target import 100:1000
!


!--- Customer B のコマンド

ip vrf Customer_B
 rd 100:120
 route-target export 100:2000
 route-target import 100:2000
!
ip cef

!
interface Loopback0
 ip address 10.10.10.6 255.255.255.255
 ip router isis 


!--- Customer A のコマンド

interface Loopback101
 ip vrf forwarding Customer_A
 ip address 200.0.6.1 255.255.255.0
!


!--- Customer B のコマンド

interface Loopback102
 ip vrf forwarding Customer_B
 ip address 200.0.6.1 255.255.255.0
!


!--- Customer A のコマンド

interface Loopback111
 ip vrf forwarding Customer_A
 ip address 200.1.6.1 255.255.255.0
!
interface Serial0/0
 no ip address
 encapsulation frame-relay
 no ip mroute-cache
 random-detect
!
interface Serial0/0.1 point-to-point
 description link to Pomerol
 bandwidth 512
 ip address 10.1.1.22 255.255.255.252
 ip router isis 
 tag-switching ip
 frame-relay interface-dlci 603   
!
router isis 
 net 49.0001.0000.0000.0006.00
 is-type level-1
!
router bgp 100
 neighbor 10.10.10.4 remote-as 100
 neighbor 10.10.10.4 update-source Loopback0
 !


!--- Customer B のコマンド

 address-family ipv4 vrf Customer_B
 redistribute connected
 no auto-summary
 no synchronization
 exit-address-family
 !


!--- Customer A のコマンド

 address-family ipv4 vrf Customer_A
 redistribute connected
 no auto-summary
 no synchronization
 exit-address-family
 !


!--- Customer A および Customer B のコマンド

 address-family vpnv4
 neighbor 10.10.10.4 activate
 neighbor 10.10.10.4 send-community both
 exit-address-family
!
ip classless
!         
end

Pomerol

Current configuration:
!
version 12.0
!
hostname Pomerol
!
ip cef

!
interface Loopback0
 ip address 10.10.10.3 255.255.255.255
 ip router isis 

!
interface Serial0/1
 no ip address
 no ip directed-broadcast
 encapsulation frame-relay
 random-detect
!
interface Serial0/1.1 point-to-point
 description link to Pauillac
 ip address 10.1.1.6 255.255.255.252
 no ip directed-broadcast
 ip router isis 
 tag-switching mtu 1520
 tag-switching ip 
 frame-relay interface-dlci 301   
!
interface Serial0/1.2 point-to-point
 description link to Pulligny
 ip address 10.1.1.9 255.255.255.252
 no ip directed-broadcast
 ip router isis 
 tag-switching ip
 frame-relay interface-dlci 303   
!
interface Serial0/1.3 point-to-point
 description link to Pesaro
 ip address 10.1.1.21 255.255.255.252
 no ip directed-broadcast
 ip router isis 
 tag-switching ip

 frame-relay interface-dlci 306   
!
router isis 
 net 49.0001.0000.0000.0003.00
 is-type level-1
!
ip classless
!
end

Pulligny

Current configuration:
!
version 12.1
!
hostname Pulligny
!
!
ip cef

!
!
interface Loopback0
 ip address 10.10.10.2 255.255.255.255
!
interface Serial0/1
 no ip address
 encapsulation frame-relay
 random-detect
!
interface Serial0/1.1 point-to-point
 description link to Pauillac
 ip address 10.1.1.2 255.255.255.252
 ip router isis 
 tag-switching ip 
 frame-relay interface-dlci 201   
!
interface Serial0/1.2 point-to-point
 description link to Pomerol
 ip address 10.1.1.10 255.255.255.252
 ip router isis 
 tag-switching ip 
 frame-relay interface-dlci 203   
!
router isis 
 passive-interface Loopback0
 net 49.0001.0000.0000.0002.00
 is-type level-1
!
ip classless
!
end

Pauillac

!
version 12.1
!
hostname pauillac
!
ip cef

!
interface Loopback0
 ip address 10.10.10.1 255.255.255.255
 ip router isis  
!
interface Serial0/0
 no ip address
 encapsulation frame-relay
 no ip mroute-cache
 tag-switching ip
 no fair-queue
!
interface Serial0/0.1 point-to-point
 description link to Pomerol
 bandwith 512
 ip address 10.1.1.1 255.255.255.252
 ip router isis 
 tag-switching ip 
 frame-relay interface-dlci 102   
!
interface Serial0/0.2 point-to-point
 description link to Pulligny ip address 10.1.1.5 255.255.255.252

 ip router isis 
 tag-switching ip 
 frame-relay interface-dlci 103   
!
interface Serial0/0.3 point-to-point
 description link to Pescara
 bandwidth 512
 ip address 10.1.1.13 255.255.255.252
 ip router isis 
 tag-switching ip 
 frame-relay interface-dlci 104   
!
router isis 
 net 49.0001.0000.0000.0001.00
 is-type level-1
!
ip classless
!
end

確認

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

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

  • show ip vrf:正しい VRF が存在することを確認する。

  • show ip vrf interfaces:アクティベートされているインターフェイスを確認する。

  • show ip route vrf Customer_A:PE ルータでのルーティング情報を確認する。

  • traceroute vrf Customer_A 200.0.6.1:PE ルータでのルーティング情報を確認する。

  • show ip bgp vpnv4 tag:BGP を確認する。

  • show ip cef vrf Customer_A 200.0.6.1 detail:PE ルータでのルーティング情報を確認する。

MPLS VPN ソリューション トラブルシューティング ガイド』には、さらに多くのコマンドの詳細情報が紹介されています。

show ip vrf コマンドのコマンド出力例を次に示します。

Pescara#show ip vrf 
  Name                             Default RD          Interfaces
  Customer_A                       100:110             Loopback101
  Customer_B                       100:120             Loopback102

show ip vrf interfaces コマンドのコマンド出力例を次に示します。

Pesaro#show ip vrf interfaces 
Interface              IP-Address      VRF                              Protocol
Loopback101            200.0.6.1       Customer_A                       up      
Loopback111            200.1.6.1       Customer_A                       up      
Loopback102            200.0.6.1       Customer_B                       up      

次の show ip route vrf コマンドでは、両方の出力に同じプレフィクスである 200.0.6.0/24 が表示されます。これは、リモート PE が Customer_A と Customer_B という 2 つのカスタマー用に同じネットワークを使用しているためです。これは一般的な MPLS VPN ソリューションで可能です。

Pescara#show ip route vrf Customer_A
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR

Gateway of last resort is not set

C    200.0.4.0/24 is directly connected, Loopback101
B    200.0.6.0/24 [200/0] via 10.10.10.6, 05:10:11
B    200.1.6.0/24 [200/0] via 10.10.10.6, 04:48:11
 
Pescara#show ip route vrf Customer_B
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
           N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
           E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
           i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
           * - candidate default, U - per-user static route, o - ODR       
           P - periodic downloaded static route
            
Gateway of last resort is not set
C 200.0.4.0/24 is directly connected, Loopback102
 
B 200.0.6.0/24 [200/0] via 10.10.10.6, 00:03:24

Customer_A の 2 つのサイト間で traceroute を実行することにより、MPLS ネットワークが使用するラベル スタックを確認できます(mpls ip ttl ... でそのように設定されている場合)。

Pescara#traceroute vrf Customer_A 200.0.6.1

Type escape sequence to abort.
Tracing the route to 200.0.6.1

  1 10.1.1.13 [MPLS: Labels 20/26 Exp 0] 400 msec 276 msec 264 msec
  2 10.1.1.6 [MPLS: Labels 18/26 Exp 0] 224 msec 460 msec 344 msec
  3 200.0.6.1 108 msec *  100 msec

注:  Exp 0 は、Quality of Service(QoS)に使用する実験的なフィールドです。

トラブルシューティング

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


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

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


関連情報


Document ID: 13733