1、MPLS-VPN 功能讲解以及 show 排错读取目录一、MPLS-VPN 功能类型 31、 MPLS-L2VPN32、 MPLS-L3VPN4二、MPLS 概述 42.1MPLS 拓扑图 52.2MPLS 配置思路 52.3MPLS 配置信息 51)PE-A 端 52)PA 端 63)PB 端 64)PE-B72.4 验证结果 8三、MPLS-L2VPN 概述 92.1MPLS-L2VPN 拓扑图 102.2 配置思路:102.3 配置信息 101)PEA 配置 102)PA 配置 113)PB 配置信息 124)PEB 配置信息 132.4 验证结果:142.5SHOW 信息分析 141、
2、两端 PE 的 LDP bindings vfi 信息 142、 PE 和 P 的 LDP bindings 表信息 153、通过以上两者 show 信息,抓图是否和 show LDP 标签库比对 17四、MPLS-L3VPN 概述 184.1MPLS-L3VPN 拓扑图 194.2 配置思路 194.3 配置信息 20PE-A 配置信息 20PE-B 配置信息 214.4 验证结果 234.5 抓包分析 254.6 总结 26一、MPLS-VPN 功能类型传 统 的 VPN 一 般 是 通 过 GRE( Generic Routing Encapsulation) 、L2TP( Layer
3、2 Tunneling Protocol) 、 PPTP( Point to Point Tunneling Protocol) 、 IPSec 协 议 等 隧 道 协 议 来 实 现 私 有 网 络 间 数 据 流 在 公 网 上 的 传 送 。 而LSP 本 身 就 是 公 网 上 的 隧 道 , 所 以 用 MPLS 来 实 现 VPN 有 天 然 的 优 势 。 基 于 MPLS 的 VPN 就 是 通 过 LSP 将 私 有 网 络 的 不 同 分 支 联 结 起 来 , 形 成 一 个 统一 的 网 络 。 基 于 MPLS 的 VPN 还 支 持 对 不 同 VPN 间 的 互
4、通 控 制 。 CE( Customer Edge) 是 用 户 边 缘 设 备 , 可 以 是 路 由 器 , 也 可 以 是 交 换 机 或 主 机 。 PE( Provider Edge) 是 服 务 商 边 缘 路 由 器 , 位 于 骨 干 网 络 。MPLS-VPN 主 要 分 为 二 层 和 三 层 分 别 为 : MPLS-L2VPN 和 MPLS-L3VPN。1、 MPLS-L2VPN主 要 通 过 二 层 报 文 进 行 数 据 转 发 。 如 图 全 网 中 每 个 CE 客 户 端 的 IP 地 址 都 是 属于 同 一 个 网 段 地 址 , 以 二 层 方 式 通
5、过 MPLS-L2VPN 转 发 到 每 个 CE 端 。P E P EP BP AC E C EI p : 1 0 . 1 . 1 . 2 / 2 4C EC E C EC EI p : 1 0 . 1 . 1 . 1 / 2 4I p : 1 0 . 1 . 1 . 3 / 2 4I P : 1 0 . 1 . 1 . 5 / 2 4I p : 1 0 . 1 . 1 . 4 / 2 4I p : 1 0 . 1 . 1 . 6 / 2 4M P L S - L 2 V P N2、 MPLS-L3VPNMPLS-L3VPN 主要通过三层数据包进行转发,如图每个 CE 端与 PE 端连接都是
6、独立点对点网络。但是只要 PE 端将 6 个站点设置在同一个区域内就可以让他们全网通信。P E P EP BP AC E C EI p : 1 0 . 1 . 1 . 1 6 / 3 0C EC E C EC EI p : 1 0 . 1 . 1 . 4 / 3 0I p : 1 0 . 1 . 1 . 8 / 3 0I P : 1 0 . 1 . 1 . 0 / 3 0I p : 1 0 . 1 . 1 . 2 0 / 3 0I p : 1 0 . 1 . 1 . 1 2 / 3 0M P L S - L 3 V P N通过了解 MPLS-VPN 类型后,我们先从 MPLS 入手一步步深入。
7、二、MPLSMPLS(Multiprotocol Label Switching)是多协议标签交换的简称, MPLS把路由选择和数据转发分开,由标签来规定一个分组通过网络的路径。MPLS网络由核心部分的标签交换路由器(Label Switching Router, 简称LSR)以及边缘部分的标签边缘路由器(Label Edge Router,简称LER )组成。在 MPLS网络中,支持标签交换的设备被称为标签交换路由器,这些标签交换路由器相连接组成标签交换路经(Label Switching Path, LSP)。LSR之间通过标签分发协议(LDP ),扩展的路由协议以及其他方式交换标签信息。
8、LSP的入口LSR根据分组的网络层信息(比如IP头部)为其加上标签,出口LSR 将标签去除,其它LSR对报文的转发仅依据标签来完成。2.1MPLS 拓扑图R i d : 1 . 1 . 1 . 1 R i d : 2 . 2 . 2 . 2 R i d : 3 . 3 . 3 . 3 R i d : 4 . 4 . 4 . 4G 0 / 1G 0 / 1G 0 / 1G 0 / 1G 0 / 0G 0 / 0P E - A P E - BP BP A2.2MPLS 配置思路1、 全网通信为基础特别省略2、 全局开启 MPLS 功能3、 全局定义 LSR 标识(注意:不定义 LDP 标识,接口无
9、法开启 LDP 标签协议)4、 接口下分别开启 MPLS 与 LDP 标签协议2.3MPLS 配置信息1)PE-A 端PE-A#show running-config hostname PE-Ampls ip全局开启 MPLSmpls ldp router-id 1.1.1.1设置 LSR 标识信息interface Loopback0ip address 1.1.1.1 255.255.255.255设置回环接口 IP 地址no ip directed-broadcast!interface GigaEthernet0/1ip address 192.168.1.1 255.255.255.
10、252no ip directed-broadcastmpls ip接口开启 MPLSmpls ldp enable接口开启 LDP 标签!router ospf 1network 192.168.1.0 255.255.255.252 area 0network 1.1.1.1 255.255.255.255 area 0!2)PA 端PA#show running-config Building configuration.hostname PAmpls ip全局开启 MPLSmpls ldp router-id 2.2.2.2设置 LSR 标识信息interface Loopback0i
11、p address 2.2.2.2 255.255.255.255设置回环接口 IP 地址no ip directed-broadcast!interface GigaEthernet0/0ip address 192.168.2.1 255.255.255.252no ip directed-broadcastmpls ip接口开启 MPLSmpls ldp enable接口开启 LDP 标签!interface GigaEthernet0/1ip address 192.168.1.2 255.255.255.252no ip directed-broadcastmpls ip接口开启 M
12、PLSmpls ldp enable接口开启 LDP 标签! router ospf 1network 0.0.0.0 0.0.0.0 area 0!3)PB 端pb#show runrunning-config - Current configurationpb#show running-config Building configuration.hostname pb!mpls ip全局开启 MPLSmpls ldp router-id 3.3.3.3接口开启 LDP 标签!interface Loopback0ip address 3.3.3.3 255.255.255.255设置回环接
13、口 IP 地址no ip directed-broadcast!interface GigaEthernet0/0ip address 192.168.2.2 255.255.255.252no ip directed-broadcastmpls ip接口开启 MPLSmpls ldp enable接口开启 LDP 标签!interface GigaEthernet0/1ip address 192.168.3.1 255.255.255.252no ip directed-broadcastmpls ip接口开启 MPLSmpls ldp enable接口开启 LDP 标签!router o
14、spf 1network 3.3.3.3 255.255.255.255 area 0network 0.0.0.0 0.0.0.0 area 04)PE-B 端PE-B#show running-config hostname PE-B!mpls ip全局开启 MPLSmpls ldp router-id 4.4.4.4!interface Loopback0ip address 4.4.4.4 255.255.255.255设置回环接口 IP 地址no ip directed-broadcast!interface GigaEthernet0/1ip address 192.168.3.2
15、 255.255.255.252no ip directed-broadcastmpls ip接口开启 MPLSmpls ldp enable接口开启 LDP 标签router ospf 1network 4.4.4.4 255.255.255.255 area 0network 192.168.3.0 255.255.255.252 area 0network 6.6.6.6 255.255.255.255 area 02.4 验证结果PA_config#show mpl forMPLS Forwarding Table:InOut Prefix tag 1030Downstream bin
16、ding : lsr 4.4.4.4 ; tag 1029MTU: 1500, Control Word: NO, Fragement: NOPE-B#show mpls ldp bindings vfi PW id/100 type/VLAN, MTU: 1500, Control Word: NOT, Fragement: NOUpstream binding : lsr 1.1.1.1 ; tag 1029Downstream binding : lsr 1.1.1.1 ; tag 1030MTU: 1500, Control Word: NO, Fragement: NO看到 PE 设
17、备之间的 vfi 的 LDP 标签表内有接收标签和发送标签。2)PE 和 P 的 LDP bindings 库信息PE-A1#show mpls ldp bindings 1.1.1.1/32Upstream binding : lsr 2.2.2.2 ; tag imp-null2.2.2.2/32Downstream binding : lsr 2.2.2.2 ; tag imp-null3.3.3.3/32Downstream binding : lsr 2.2.2.2 ; tag 10394.4.4.4/32Downstream binding : lsr 2.2.2.2 ; tag
18、1037192.168.2.0/30Downstream binding : lsr 2.2.2.2 ; tag imp-null192.168.3.0/30Downstream binding : lsr 2.2.2.2 ; tag 1038PEPA#show mpls ldp bindings 1.1.1.1/32Upstream binding : lsr 3.3.3.3 ; tag 1036Downstream binding : lsr 1.1.1.1 ; tag imp-null2.2.2.2/32Upstream binding : lsr 3.3.3.3 ; tag imp-n
19、ullUpstream binding : lsr 1.1.1.1 ; tag imp-null3.3.3.3/32Upstream binding : lsr 1.1.1.1 ; tag 1039Downstream binding : lsr 3.3.3.3 ; tag imp-null4.4.4.4/32Upstream binding : lsr 1.1.1.1 ; tag 1037Downstream binding : lsr 3.3.3.3 ; tag 1035192.168.1.0/30Upstream binding : lsr 3.3.3.3 ; tag imp-null1
20、92.168.2.0/30Upstream binding : lsr 1.1.1.1 ; tag imp-null192.168.3.0/30Upstream binding : lsr 1.1.1.1 ; tag 1038Downstream binding : lsr 3.3.3.3 ; tag imp-nullPB#show mpls ldp bindings 1.1.1.1/32Upstream binding : lsr 4.4.4.4 ; tag 1037Downstream binding : lsr 2.2.2.2 ; tag 10362.2.2.2/32Upstream b
21、inding : lsr 4.4.4.4 ; tag 1034Downstream binding : lsr 2.2.2.2 ; tag imp-null3.3.3.3/32Upstream binding : lsr 2.2.2.2 ; tag imp-nullUpstream binding : lsr 4.4.4.4 ; tag imp-null4.4.4.4/32Upstream binding : lsr 2.2.2.2 ; tag 1035Downstream binding : lsr 4.4.4.4 ; tag imp-null192.168.1.0/30Upstream b
22、inding : lsr 4.4.4.4 ; tag 1033Downstream binding : lsr 2.2.2.2 ; tag imp-null192.168.2.0/30Upstream binding : lsr 4.4.4.4 ; tag imp-null192.168.3.0/30Upstream binding : lsr 2.2.2.2 ; tag imp-nullPE-B#show mpls ldp bindings 1.1.1.1/32Downstream binding : lsr 3.3.3.3 ; tag 10372.2.2.2/32Downstream bi
23、nding : lsr 3.3.3.3 ; tag 10343.3.3.3/32Downstream binding : lsr 3.3.3.3 ; tag imp-null4.4.4.4/32Upstream binding : lsr 3.3.3.3 ; tag imp-null192.168.1.0/30Downstream binding : lsr 3.3.3.3 ; tag 1033192.168.2.0/30Downstream binding : lsr 3.3.3.3 ; tag imp-null通过每台设备的 LDP 库内容,可以发现去往每个网段都是有关联的,证明了数据通过
24、LDP 库内容建立了 MPLS 转发表进行了 MPLS 转发。这时候大家都会有疑问,为什么会有 LDP VFI 标签库和 LDP 标签库,两者之间到底什么关系?两者之间什么怎么进行转发和识别的?以下抓图就可以解释一切情况。3)通过以上两者 show 信息,抓图是否和 show LDP 标签库比对图PA 向 PB 发送的报文,可以看出我们数据是带有两层 MPLS 标签。1) 、首先我们先看红色框,里面封装了 vlan100。2) 、然后我们再看黄色框,封装了标签 1029,可以证明 Downstream binding 就是发送时封装的标签,Upstream binding 表示本地接收的标签。
25、3) 、最后看蓝色框,也是最外层封装了 1035,证明MPLS 网络中会将 vfi 标签再外层再封装一层标签,此标签是为了通过 MPLS 区域而封装的。从图我们可以不难理解 MPLS 给报文封装的结构,并且可以理解 MPLS 每经过一个设备时的路径选择情况。图是 PB 向 PA 发送的报文,大家可以试着去分析上面的报文,就可以相应的理解 LDP标签库的内容。建议大家通过自己的理解方式去理解命令,理解 show 信息,这样方便日后对于 MPLS 网络的排错方式。四、MPLS-L3VPNMPLS L3VPN也可称为MPLS VRF VPN或MPLS BGP VPN,它是MPLS与VRF技术的一种结
26、合运用。通常,一个VPN 包含一组客户网络,它们在服务商路由器上共享一个公共的路由表。每个客户网络都与服务商网络设备的接口连接,服务商设备则将每个接口关联到一个VPN路由表。一个VPN 路由表也被称为一个VRF(VPN Routing/Forwarding table)。MPLS L3VPN网络主要由三种类型的设备组成:客户边缘路由器CE,服务商边缘路由器PE以及服务商路由器P。CE设备在客户网络的边缘连接着PE,CE与PE 之间通过动态协议或静态配置建立路由,CE设备不需要支持VRF。PE设备可以同时连接着不同客户网络的CE设备,并通过配置 VRF,将不同客户网络的路由分配到不同的VPN 路
27、由表, PE设备之间通过MP-BGP 协议互相学习VRF 路由,同时MP-BGP协议为每条 VRF路由分配一个VPN标签。服务商网络的内部不需要部署VRF,因而P设备并不了解客户网络的路由状况。P 与PE 设备之间通过运行标签分发协议(LDP)建立动态的LSP,客户网络的报文在服务商网络中被封装为MPLS形式转发。4.1MPLS-L3VPN 拓扑图R i d : 1 . 1 . 1 . 1 R i d : 2 . 2 . 2 . 2 R i d : 3 . 3 . 3 . 3 R i d : 4 . 4 . 4 . 4G 0 / 1G 0 / 1G 0 / 1G 0 / 1G 0 / 0G 0
28、 / 0P E - A P E - BP BP AC E - A C E - BI p : 2 0 . 1 . 1 . 2网 关 : 2 0 . 1 . 1 . 1I p : 3 0 . 1 . 1 . 2网 关 : 3 0 . 1 . 1 . 14.2 配置思路1、 将所有 MPLS 区域全网通信。2、 开启 MPLS 和 LDP3、 接口上应用 MPLS 和 LDP4、 开启 vrf,设置 RD 5、 在接口上应用 vrf6、 设置 BGP,将 vrf 路由重分布到 BGP 路由中。4.3 配置信息其中 P 的设备配置信息省略了。PE-A 配置信息PE-A1#show running-co
29、nfig hostname PE-A1mpls ip/开启 MPLSmpls ldp discovery targeted-hello accept/开启 LDP 远程邻居建立mpls ldp neighbor4.4.4.4 targeted/建立远程邻居关系mpls ldp router-id 1.1.1.1 /设置 LDP 前缀 ID!ip vrf l3vpn/建立 vrf 表rd 100:1/建立 RD 标识route-target export 100:1/输出策略属性route-target import 100:1/输入策略属性!interface Loopback0ip addr
30、ess 1.1.1.1 255.255.255.255no ip directed-broadcast!interface GigaEthernet0/1ip address 192.168.1.1 255.255.255.252no ip directed-broadcastmpls ipmpls ldp enableip http firewalltype 0!interface GigaEthernet0/3ip vrf forwarding l3vpn/端口上设置 vrfip address 20.1.1.1 255.255.255.252no ip directed-broadcas
31、tip http firewalltype 0!router ospf 1router-id 1.1.1.1network 192.168.1.0 255.255.255.252 area 0network 1.1.1.1 255.255.255.255 area 0!router bgp 1/建立 BGP 路由no synchronization/关闭同步bgp log-neighbor-changes/开启 BGP 邻居变化日志neighbor 4.4.4.4 remote-as 1 /建立邻居自治系统neighbor 4.4.4.4 update-source Loopback0/建立邻
32、居更新接口address-family vpnv4 /进入 BGP vpnneighbor 4.4.4.4 activate/激活邻居 BGP vpnbgp redistribute-internal/vpn 路由转入内部网关路由协议 exit-address-familyaddress-family ipv4 vrf l3vpn/进入 vrf address-family 模式no synchronizationbgp redistribute-internalredistribute connected/将直接路由重分布 BGPexit-address-family! !PE-B 配置信息
33、PE-B#show running-config hostname PE-B!mpls ip/开启 MPLSmpls ldp discovery targeted-hello accept/开启 LDP 远程邻居建立mpls ldp neighbor1.1.1.1 targeted/建立远程邻居关系mpls ldp router-id 4.4.4.4 /设置 LDP 前缀 ID!ip vrf l3vpnrd 100:1route-target export 100:1route-target import 100:1interface Loopback0ip address 4.4.4.4 2
34、55.255.255.255no ip directed-broadcast!interface GigaEthernet0/0no ip addressno ip directed-broadcastip http firewalltype 0!interface GigaEthernet0/0.1no ip addressno ip directed-broadcastencapsulation dot1Q 100bandwidth 1000000delay 1mpls l2vpn vfi vpn1ip http firewalltype 0!interface GigaEthernet0
35、/1ip address 192.168.3.2 255.255.255.252no ip directed-broadcastmpls ipmpls ldp enableip http firewalltype 0!interface GigaEthernet0/3ip vrf forwarding l3vpnip address 30.1.1.1 255.255.255.0no ip directed-broadcastip http firewalltype 0!router ospf 1router-id 4.4.4.4network 192.168.3.0 255.255.255.2
36、52 area 0network 4.4.4.4 255.255.255.255 area 0!router bgp 1/建立 BGP 路由no synchronization/关闭同步bgp log-neighbor-changes/开启 BGP 邻居变化日志neighbor 1.1.1.1 remote-as 1 /建立邻居自治系统neighbor 1.1.1.1 update-source Loopback0/建立邻居更新接口address-family vpnv4 /进入 BGP vpnneighbor 1.1.1.1 activate/激活邻居 BGP vpnbgp redistri
37、bute-internal/vpn 路由转入内部网关路由协议 exit-address-familyaddress-family ipv4 vrf l3vpn/进入 vrf address-family 模式no synchronizationbgp redistribute-internalredistribute connected/将直接路由重分布 BGPexit-address-family! ip route cache !4.4 验证结果Switch_config#ping 30.1.1.2PING 30.1.1.2 (30.1.1.2): 56 data bytes!- 30.1
38、.1.2 ping statistics -5 packets transmitted, 5 packets received, 0% packet lossround-trip min/avg/max = 0/0/0 msSwitch_config#traceroute 30.1.1.2traceroute to 30.1.1.2 (30.1.1.2), 30 hops max, 36 byte packets1 20.1.1.1 0 ms 0 ms 0 ms2 2.2.2.2 0 ms 0 ms 0 ms3 3.3.3.3 0 ms 0 ms 10 ms4 30.1.1.2 0 ms 0
39、ms 0 ms2.4 Show 信息分析PE-A1#show mpls ftn-table vrf l3vpnMPLS global ftn table:Prefix&Len Creator Status OutLabel Next Hop OutIntf =30.1.1.0/24 MPBGP inuse 1038 4.4.4.4:01055 192.168.1.2:0 g0/1 /以上表示 去往 30.1.1.0/24 使用 MPBGP 分装标签 1038 转发至 4.4.4.4.PE-A1#show ip route vrf l3vpnCodes: C - connected, S - s
40、tatic, R - RIP, B - BGP, BC - BGP connectedD - BEIGRP, DEX - external BEIGRP, O - OSPF, OIA - OSPF inter areaON1 - OSPF NSSA external type 1, ON2 - OSPF NSSA external type 2OE1 - OSPF external type 1, OE2 - OSPF external type 2, L - LocalDHCP - DHCP type, L1 - IS-IS level-1, L2 - IS-IS level-2VRF ID
41、: 1C 20.1.1.0/30 is directly connected, GigaEthernet0/3B 30.1.1.0/24 200,0 via 4.4.4.4/根据 vrf 路由表可以学习到对端重分布的路由条目PE-B#show mpls ftn-table vrf l3vpnMPLS global ftn table:Prefix&Len Creator Status OutLabel Next Hop OutIntf =20.1.1.0/30 MPBGP inuse 1041 1.1.1.1:01041 192.168.3.1:0 g0/1 PE-B#show ip rou
42、vrf l3vpnCodes: C - connected, S - static, R - RIP, B - BGP, BC - BGP connectedD - BEIGRP, DEX - external BEIGRP, O - OSPF, OIA - OSPF inter areaON1 - OSPF NSSA external type 1, ON2 - OSPF NSSA external type 2OE1 - OSPF external type 1, OE2 - OSPF external type 2, L - LocalDHCP - DHCP type, L1 - IS-
43、IS level-1, L2 - IS-IS level-2VRF ID: 1B 20.1.1.0/30 200,0 via 1.1.1.1C 30.1.1.0/24 is directly connected, GigaEthernet0/34.5 抓包分析以上图可以证明了,从 20.1.1.0/24 去往 30.1.1.0/24 网段分装 1038LDP。以上图同样可以证明了从 30.1.1.0/24 去往 20.1.1.0/24 网段的封装 LDP1041.4.6 总结通过 MPLS-L3VPN 基本实验,可以了解到 vrf 通过将路由表给区分,可以理解为核心路由表与客户路由表。彼此之间通过 PE 设备进行维护。