ことなかれblog 備忘録

何事もなく無事でありますように

cisco simulator – mpls

○cisco simulatorの続き

とりあえず、PE-P-PEのRouter間はlabel switchでルーティングしてみます。
構成図はこちら

(前提)
MPLSネットワークを確立するため、リンクステートなIGP(OSPF/IS-IS)でpureIP網を構成する
必要があります。

*IGPで、LDP or RSVPメッセージを配布してもらいます。

MPLSをenableにして、OSPFでpureIP網を構成します。
○R1の設定

* 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

上記の設定を、R1-R4(P,PE-Router)に設定します。 で、動作確認をしていきます。

* 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を受信していることが確認できます。

ここまでで、ようやく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



コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>