此配置示例显示了如何设置多协议标签交换 (MPLS) 网络,以便执行后续任务,例如虚拟专用网络 (VPN) 或流量工程(要了解更多配置示例,请访问 MPLS 支持页)。
尝试此配置之前,请确保满足下列前提条件:
为了实施 MPLS,您需要 Cisco 2600 路由器或者更高版本的路由器。
检查在路由器上运行 MPLS 功能所需的其他 RAM 和闪存。可以使用 WAN 接口卡 (WIC)、WIC-1T 和 WIC-2T。
本文档中的信息基于以下软件和硬件版本。
Cisco 3640、Cisco 3660、Cisco 4500 和 Cisco 2610 路由器
Cisco IOS® 软件版本 12.2(6h) 在所有路由器上运行
本文档中的信息都是基于特定实验室环境中的设备创建的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您是在真实网络上操作,请确保您在使用任何命令前已经了解其潜在影响。
MPLS 网络通常是由支持 MPLS 的路由器(称为标签交换路由器 (LSR))组成的骨干网络。 一般来说,该网络由带有边缘 LSR 的核心 LSR 组成,该边缘 LSR 负责将标签应用于数据包。
MPLS 网络的设置机制如下。
不同 LSR 的路由表使用 Interior Gateway Protocol (IGP) 进行计算。如果您要部署 MPLS Traffic Engineering,则需要链路状态协议,例如 Open Shortest Path First (OSPF) 或者 Intermediate System-to-Intermediate System (IS-IS)。
标签分发协议 (LDP) 通告路由与标签之间的绑定。根据路由表检查这些绑定。如果通过 LDP 获知的路由(前缀/掩码和下一跳)与通过路由表中的 IGP 获知的路由匹配,则会在 LSR 上转发信息库的标签 (LFIB) 中创建一个条目。
LSR 使用以下转发机制。
当某个边缘 LSR 收到无标签数据包时,将立即检查 Cisco 快速转发表,如果需要,会为数据包附加标签。此 LSR 称为入口 LSR。
当某个核心 LSR 的入站接口收到有标签的数据包时,LFIB 将提供出站接口和与出站数据包关联的新标签。
最后一个 LSR 之前的路由器(倒数第二跳)将弹出标签并传输不带标签的数据包。最后一跳称为出口 LSR。
以下图表说明此网络设置。
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
本部分提供有关如何配置本文档所述功能的信息。
注:要查找有关本文档中使用的命令的其他信息,请使用命令查找工具(仅注册客户)。
本文档使用以下网络设置:
本文档使用以下配置:
完成下列步骤以配置 MPLS:
照常建立您的网络(MPLS 需要一个标准的 IP 连接来建立转发库)。
确保路由协议(OSPF 或 IS-IS)工作正常。在这一部分的配置中,这些命令以斜体显示。
在一般配置模式下(在这一部分的配置中以粗体显示),使用 ip cef 命令(如果可用,也可使用 ip cef distributed 命令以提高性能)来启用。
在一般配置模式下并且在每一个接口(在这一部分的配置中以粗体显示)中使用 mpls ip 命令(或者早期 Cisco IOS 软件版本中的 tag-switching ip 命令)来启用。
注意: LSR 必须有采用 32 位地址掩码的(可用)环回接口。
波梅罗 |
---|
Current configuration: ! version 12.2 ! hostname Pomerol ! ip cef !--- Enables Cisco Express Forwarding globally. ! interface Loopback0 ip address 10.10.10.3 255.255.255.255 ip router isis !--- Assigns an IP address to interface loopback0 !--- and enables IS-IS for IP on the interface. ! interface Serial0/0 encapsulation frame-relay ! interface Serial0/0.1 point-to-point ip address 10.1.1.6 255.255.255.252 ip router isis tag-switching ip !--- Enables dynamic Label Switching of !--- IPv4 packets on an interface. frame-relay interface-dlci 301 ! interface Serial0/0.2 point-to-point ip address 10.1.1.9 255.255.255.252 ip router isis tag-switching ip frame-relay interface-dlci 303 ! interface Serial0/0.3 point-to-point ip address 10.1.1.21 255.255.255.252 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 |
普利尼 |
---|
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 ! interface Serial0/0.1 point-to-point ip address 10.1.1.2 255.255.255.252 ip router isis tag-switching ip frame-relay interface-dlci 201 ! interface Serial0/0.2 point-to-point ip address 10.1.1.10 255.255.255.252 ip router isis tag-switching ip frame-relay interface-dlci 203 ! router isis redistribute static ip passive-interface Loopback0 net 49.0001.0000.0000.0002.00 is-type level-1 !--- Enables the IS-IS process on the router, !--- makes loopback interface passive !--- (does not send IS-IS packets on interface), !--- and assigns area and system ID to router. ! ip classless ! end |
波亚克 |
---|
Current configuration : 2366 bytes ! 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 ! interface Serial0/0.1 point-to-point 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 ip address 10.1.1.5 255.255.255.252 ip access-group 150 out ip router isis tag-switching ip frame-relay interface-dlci 103 ! interface Serial0/0.3 point-to-point bandwidth 512 ip address 10.1.1.13 255.255.255.252 ip router isis tag-switching ip frame-relay interface-dlci 104 ! interface Serial0/0.4 point-to-point ip address 10.1.1.17 255.255.255.252 ip router isis tag-switching ip frame-relay interface-dlci 105 ! ! router isis net 49.0001.0000.0000.0001.00 is-type level-1 ! ip classless ! end |
本部分所提供的信息可用于确认您的配置是否正常工作。
命令输出解释程序工具(仅限注册用户)支持某些 show 命令,使用此工具可以查看对 show 命令输出的分析。
show tag-switching tdp neighbor
show tag-switching tdp bindings
show tag-switching forwarding-table
show tag-switching forwarding-table a.b.c.d detail
traceroute a.b.c.d
详尽的命令列表包含在 MPLS 命令参考中。其他 show 命令示例在使用 OSPF 配置基本的 MPLS 中进行了描述。
此输出集中于 LDP。当前在 IOS 中实施的 LDP 是 TDP(标签分发协议),它包含了一些 Cisco 专有的扩展,但是它应该和 LDP 一起使用,LDP 是标签分发的 IETF 正式协议。未来 TDP 将会被 LDP 所取代。
您可以使用 show tag-switching tdp * 命令来验证 TDP 的状态。您可以使用 show tag-switching tdp neighbor 命令来查看邻居。
Pulligny# show tag-switching tdp discovery Local TDP Identifier: 10.10.10.2:0 TDP Discovery Sources: Interfaces: Serial0/0.1: xmit/recv TDP Id: 10.10.10.1:0 Serial0/0.2: xmit/recv TDP Id: 10.10.10.3:0 !--- Ensure you are able to ping this IP address !--- If not, check whether a route exists in the routing table
Pulligny# show tag-switching tdp neighbor Peer TDP Ident: 10.10.10.1:0; Local TDP Ident 10.10.10.2:0 TCP connection: 10.10.10.1.711 - 10.10.10.2.11001 State: Oper; PIEs sent/rcvd: 27907/27925; ; Downstream Up time: 2w2d TDP discovery sources: Serial0/0.1 Addresses bound to peer TDP Ident: 10.1.1.1 10.1.1.13 10.1.1.17 10.10.10.1 10.1.1.5 10.200.28.89 Peer TDP Ident: 10.10.10.3:0; Local TDP Ident 10.10.10.2:0 TCP connection: 10.10.10.3.11001 - 10.10.10.2.711 State: Oper; PIEs sent/rcvd: 22893/22874; ; Downstream Up time: 1w6d TDP discovery sources: Serial0/0.2 Addresses bound to peer TDP Ident: 10.200.28.91 10.1.1.6 10.1.1.9 10.1.1.21 10.10.10.3
您可以使用 show tag-switching tdp bindings 命令来查看标签和路由之间建立的绑定。
Pulligny# show tag-switching tdp bindings (...) tib entry: 10.10.10.4/32, rev 22 local binding: tag: 21 remote binding: tsr: 10.10.10.1:0, tag: 22 remote binding: tsr: 10.10.10.3:0, tag: 25 tib entry: 10.10.10.6/32, rev 51 local binding: tag: 23 remote binding: tsr: 10.10.10.3:0, tag: 18 remote binding: tsr: 10.10.10.1:0, tag: 20 (...)
您可以使用 show tag-switching forwarding-table 命令来查看哪些绑定用于建立 LFIB。
Pulligny# show tag-switching forwarding-table Local Outgoing Prefix Bytes tag Outgoing Next Hop tag tag or VC or Tunnel Id switched interface 16 Pop tag 10.1.1.4/30 0 Se0/0.2 point2point Pop tag 10.1.1.4/30 0 Se0/0.1 point2point 17 Pop tag 10.1.1.20/30 0 Se0/0.2 point2point 18 Pop tag 10.10.10.3/32 0 Se0/0.2 point2point 19 Pop tag 10.10.10.1/32 0 Se0/0.1 point2point 20 Pop tag 10.1.1.12/30 0 Se0/0.1 point2point 21 Pop tag 10.1.1.16/30 0 Se0/0.1 point2point 22 20 10.10.10.5/32 0 Se0/0.1 point2point 23 22 10.10.10.6/32 0 Se0/0.2 point2point 24 22 10.10.10.4/32 0 Se0/0.1 point2point
您可以使用 show tag-switching forwarding-table 10.10.10.4 detail 命令来查看给定目标的详细信息。
Pulligny# show tag-switching forwarding-table 10.10.10.4 detail Local Outgoing Prefix Bytes tag Outgoing Next Hop tag tag or VC or Tunnel Id switched interface 21 22 10.10.10.4/32 12103 Se0/0.1 point2point MAC/Encaps=4/8, MTU=1500, Tag Stack{22} 30918847 00016000 Per-packet load-sharing
如果网络传播 IP TTL,您还可以使用 traceroute 命令来查看跳跃。有关 mpls ip ttl propagate 命令的详细信息,请参阅 Cisco 路由器上的多协议标签交换。
Pesaro# traceroute 10.10.10.4 Type escape sequence to abort. Tracing the route to 10.10.10.4 1 10.1.1.21 [MPLS: Label 25 Exp 0] 296 msec 256 msec 244 msec 2 10.1.1.5 [MPLS: Label 22 Exp 0] 212 msec 392 msec 352 msec 3 10.1.1.14 436 msec * 268 msec
注意:如果实验字段用于服务质量(QoS),则输出中将显示Exp 0。
目前没有针对此配置的故障排除信息。
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
16-Nov-2007 |
初始版本 |