cisco simulator – mpls
○cisco simulatorの続き
とりあえず、PE-P-PEのRouter間はlabel switchでルーティングしてみます。
構成図はこちら
(前提)
MPLSネットワークを確立するため、リンクステートなIGP(OSPF/IS-IS)でpureIP網を構成する
必要があります。
*IGPで、LDP or RSVPメッセージを配布してもらいます。
* MPLSを使用するときは、cef(Cisco Express Forwarding)をenableにする
R1(config)# ip cef
* MPLSコアを接続するinterfaceでmplsをenableに
R1(config-if)# mpls ip
* ospf の設定 (loopback + Labelswitchさせるip-interface)
R1(config)# router ospf 100
R1(config-router)# router-id 10.10.10.1
R1(config-router)# log-adjacency-changes
R1(config-router)# redistribute connected subnets < -- CE-CEの到達性を確保するために一時的にospfへredis
R1(config-router)# network 10.10.10.0 0.0.0.255 area 0
R1(config-router)# network 192.168.12.0 0.0.0.255 area 0
R1(config-router)# network 192.168.13.0 0.0.0.255 area 0
R1(config-router)# network 192.168.14.0 0.0.0.255 area 0
* mpls-inerfaceを確認する
R1# show mpls interface
Interface IP Tunnel BGP Static Operational
Serial1/0 Yes (ldp) No No No Yes
Serial1/1 Yes (ldp) No No No Yes
* ldp neighborを確認する
R1# show mpls ldp neighbor
Peer LDP Ident: 10.10.10.4:0; Local LDP Ident 10.10.10.1:0
TCP connection: 10.10.10.4.65201 - 10.10.10.1.646
State: Oper; Msgs sent/rcvd: 37/37; Downstream
Up time: 00:19:50
LDP discovery sources:
Serial1/0, Src IP addr: 192.168.14.4
Addresses bound to peer LDP Ident:
192.168.24.4 10.10.10.4 192.168.34.4 192.168.14.4
Peer LDP Ident: 10.10.10.2:0; Local LDP Ident 10.10.10.1:0
TCP connection: 10.10.10.2.28725 - 10.10.10.1.646
State: Oper; Msgs sent/rcvd: 37/37; Downstream
Up time: 00:19:48
LDP discovery sources:
Serial1/1, Src IP addr: 192.168.12.2
Addresses bound to peer LDP Ident:
192.168.24.2 10.10.10.2 192.168.12.2 192.168.23.2
"Peer LDP Ident"として、隣接RouterのLoopbackがみえています。
* LIB(Label information base)と呼ばれる、やりとりしたlabelの情報を確認する
R1# show mpls ldp bindings
lib entry: 10.10.10.1/32, rev 8
local binding: label: imp-null
remote binding: lsr: 10.10.10.4:0, label: 18
remote binding: lsr: 10.10.10.2:0, label: 21
lib entry: 10.10.10.2/32, rev 14
local binding: label: 18
remote binding: lsr: 10.10.10.4:0, label: 17
remote binding: lsr: 10.10.10.2:0, label: imp-null
lib entry: 10.10.10.3/32, rev 12
local binding: label: 17
remote binding: lsr: 10.10.10.4:0, label: 16
remote binding: lsr: 10.10.10.2:0, label: 16
・・・省略
* MPLSのFIBとなるLFIB(label fowarding information base)を確認します
PE-R1#show mpls forwarding-table
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16 Pop Label 10.10.10.4/32 0 Se1/0 point2point
17 16 10.10.10.3/32 0 Se1/1 point2point
16 10.10.10.3/32 0 Se1/0 point2point
18 Pop Label 10.10.10.2/32 44 Se1/1 point2point
19 Pop Label 192.168.34.0/24 0 Se1/0 point2point
20 Pop Label 192.168.24.0/24 0 Se1/1 point2point
Pop Label 192.168.24.0/24 0 Se1/0 point2point
21 Pop Label 192.168.23.0/24 0 Se1/1 point2point
22 18 192.168.13.0/24 0 Se1/1 point2point
20 192.168.13.0/24 0 Se1/0 point2point
23 19 192.168.36.0/24 0 Se1/1 point2point *1)
22 192.168.36.0/24 0 Se1/0 point2point
"Local Label" -- > 自分がつけたlabel
"Outgoing Label" -- > 転送するときに付与するlabel,Pop Labelはlabelをはずして転送
"Prefix or Tunnel"- > 対象のprefix or tunnel
"Out-int" -- > どのinterfaceから転送するか
Ciscoだと、defaultでPHP(Penultimate Hop Popping)が有効になっていて、
last-hop-Routerの手前でlabelをはずします。
LSPでQoS制御するなどした場合にlast-hop-Routerで利かないというデメリットがあります。
R(config)# mpls ldp explicit-null
というオプションで回避可能
* 実際に"Label Switch"でルーティングされていることを確認します。
R2# debug mpls packet
としてから CEであるR5→R6へpingをなげます。
R5# ping 192.168.36.6
R2#
*Sep 7 16:51:13.303: MPLS turbo: Se1/0: rx: Len 108 Stack {19 0 254} - ipv4 data
*Sep 7 16:51:13.375: MPLS turbo: Se1/0: rx: Len 108 Stack {19 0 254} - ipv4 data
*Sep 7 16:51:13.403: MPLS turbo: Se1/0: rx: Len 108 Stack {19 0 254} - ipv4 data
R1のLFIB *1)をみてください。
"prefix" -- > 192.168.36.0/24
"Out-int" -- > Se1/1 (R2のinterface)
"Outgoing Label" -- > 19
R2のSe1/0 rx で19のLabel-packetを受信していることが確認できます。
MPLSをenableにして、OSPFでpureIP網を構成します。
○R1の設定
ここまでで、ようやくLabel Switchingができました。 皆さんご承知のとおり、pureIPをルーティングしているだけでは、MPLSのメリットがありません。 (labelでroutingしなくても結果は同じだ) 次回から、 ・MPLS VPN (L3/L2) point L3はPEでVRFを動かして、Customer経路のRoutingTableをわけます。 L2ではPE間でtunnelを設定して、connectするimageで ・RSVP-TE point tunnelを設定して、経路と帯域幅を指定して、traffic ngineeringします。 に対応していきます。 ○おまけ @ITさんの古い記事です。基本の復習は大事 http://www.atmarkit.co.jp/fnetwork/tokusyuu/11mpls/mpls01.html
Categorised as: cisco | lab | mpls