这几天一直在学习MPLS ×××,看了一些视频和文档,虽然还有很多地方没有搞懂,先总结一下,以免自己忘了。
MPLS ×××中重要的几个内容:
VRF(RD、RT)
MP-BPG
MPLS
Address-family
经典拓扑:
1、配置接口的VRF和地址。
R1配置:
R1#conf t
R1(config)#int fa0/0
R1(config-if)#ip add 13.1.1.1 255.255.255.0
R1(config-if)#no shut
R1(config-if)#int fa1/0
R1(config-if)#ip add 12.1.1.1 255.255.255.0
R1(config-if)#no shut
R1(config-if)#int lo0
R1(config-if)#ip add 1.1.1.1 255.255.255.255
R2配置:
R2#conf t
R2(config)#int fa0/0
R2(config-if)#ip add 12.1.1.2 255.255.255.0
R2(config-if)#no shut
R2(config-if)#exit
R2(config)#ip vrf A
R2(config-vrf)#rd 10:10
R2(config-vrf)#route-target 11:11
R2(config-vrf)#exit
R2(config)#ip vrf B
R2(config-vrf)#rd 20:20
R2(config-vrf)#route-target 21:21
R2(config-vrf)#exit
R2(config)#int s2/0
R2(config-if)#ip vrf forwarding A
R2(config-if)#ip add 24.1.1.2 255.255.255.0
R2(config-if)#no shut
R2(config-if)#exit
R2(config)#int s2/1
R2(config-if)#ip vrf forwarding B
R2(config-if)#ip add 26.1.1.2 255.255.255.0
R2(config-if)#no shut
R2(config-if)#exit
R2(config)#int lo0
R2(config-if)#ip add 2.2.2.2 255.255.255.255
R3配置:
R3#conf t
R3(config)#int fa1/0
R3(config-if)#ip add 13.1.1.3 255.255.255.0
R3(config-if)#no shut
R3(config-if)#int lo0
R3(config-if)#ip add 3.3.3.3 255.255.255.255
R3(config-if)#exit
R3(config)#ip vrf A
R3(config-vrf)#rd 10:10
R3(config-vrf)#route-target 11:11
R3(config-vrf)#exit
R3(config)#ip vrf B
R3(config-vrf)#rd 20:20
R3(config-vrf)#route-target 21:21
R3(config-vrf)#exit
R3(config)#int s2/0
R3(config-if)#ip vrf forwarding A
R3(config-if)#ip add 35.1.1.3 255.255.255.0
R3(config-if)#no shut
R3(config-if)#int s2/1
R3(config-if)#ip vrf forwarding B
R3(config-if)#ip add 37.1.1.3 255.255.255.0
R3(config-if)#no shut
R4配置:
R4#conf t
R4(config)#int s2/0
R4(config-if)#ip add 24.1.1.4 255.255.255.0
R4(config-if)#no shut
R4(config-if)#int lo0
R4(config-if)#ip add 4.4.4.4 255.255.255.0
R5配置:
R5#conf t
R5(config)#int s2/0
R5(config-if)#ip add 35.1.1.5 255.255.255.0
R5(config-if)#no shut
R5(config-if)#int lo0
R5(config-if)#ip add 5.5.5.5 255.255.255.0
R5(config-if)#no shut
R6配置:
R6#conf t
R6(config)#int s2/1
R6(config-if)#ip add 26.1.1.6 255.255.255.0
R6(config-if)#no shut
R6(config-if)#int lo0
R6(config-if)#ip add 6.6.6.6 255.255.255.0
R7配置:
R7#conf t
R7(config)#int s2/1
R7(config-if)#ip add 37.1.1.7 255.255.255.0
R7(config-if)#no shut
R7(config-if)#int lo0
R7(config-if)#ip add 7.7.7.7 255.255.255.0
2、运营商内部起用OSPF
R1配置:
R1(config)#router ospf 110
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 12.1.1.1 0.0.0.0 area 0
R1(config-router)#network 13.1.1.1 0.0.0.0 area 0
R1(config-router)#network 1.1.1.1 0.0.0.0 area 0
R2配置:
R2(config)#router ospf 110
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 12.1.1.2 0.0.0.0 area 0
R2(config-router)#network 2.2.2.2 0.0.0.0 area 0 !!!环回口要宣告进OSPF,因为后面要用环回口建BGP和LDP邻居。
R3配置:
R3(config)#router ospf 110
R3(config-router)#router-id 3.3.3.3
R3(config-router)#network 13.1.1.3 0.0.0.0 area 0
R3(config-router)#network 3.3.3.3 0.0.0.0 area 0
3、运营商内部起用MPLS
R1配置:
R1(config)#mpls ldp router-id lo0
R1(config)#int fa0/0
R1(config-if)#mpls ip
R1(config-if)#int fa1/0
R1(config-if)#mpls ip
*Jun 11 19:24:04.343: %LDP-5-NBRCHG: LDP Neighbor 2.2.2.2:0 (1) is UP
*Jun 11 19:24:15.463: %LDP-5-NBRCHG: LDP Neighbor 3.3.3.3:0 (2) is UP
R2配置:
R2(config)#mpls ldp router-id lo0 force
R2(config)#int fa0/0
R2(config-if)#mpls ip
*Jun 11 19:24:03.615: %LDP-5-NBRCHG: LDP Neighbor 1.1.1.1:0 (1) is UP
R3配置:
R3#conf t
R3(config)#mpls ldp router-id lo0 force
R3(config)#int fa1/0
R3(config-if)#mpls ip
*Jun 11 19:24:15.043: %LDP-5-NBRCHG: LDP Neighbor 1.1.1.1:0 (1) is UP
4、R2和R3建立BGP ×××V4邻接关系
R2配置:
R2(config)#router bgp 1
R2(config-router)#no auto-summary
R2(config-router)#no synchronization
R2(config-router)#no bgp default ipv4-unicast
R2(config-router)#bgp router-id 2.2.2.2
R2(config-router)#neighbor 3.3.3.3 remote-as 1
R2(config-router)#neighbor 3.3.3.3 next-hop-self
R2(config-router)#neighbor 3.3.3.3 update-source lo0
R2(config-router)#address-family ***v4
R2(config-router-af)#neighbor 3.3.3.3 activate
R2(config-router-af)#neighbor 3.3.3.3 send-community extended
R3配置:
R3(config)#router bgp 1
R3(config-router)#no auto-summary
R3(config-router)#no synchronization
R3(config-router)#bgp router-id 3.3.3.3
R3(config-router)#neighbor 2.2.2.2 remote-as 1
*Jun 11 19:18:00.291: %BGP-5-ADJCHANGE: neighbor 2.2.2.2 Up
R3(config-router)#neighbor 2.2.2.2 next-hop-self
R3(config-router)#neighbor 2.2.2.2 update-source lo0
R3(config-router)#address-family ***v4
R3(config-router-af)#neighbor 2.2.2.2 activate
R3(config-router-af)#neighbor 2.2.2.2 send-community extended
在这里先把A公司的×××配好,然后再配B公司的。
5(A)、在PE和CE之间运行路由协议,让PE获取×××路由条目。
R2和R4运行RIP
R2配置:
R2(config)#router rip
R2(config-router)#address-family ipv4 vrf A
R2(config-router-af)#version 2
R2(config-router-af)#no auto-summary
R2(config-router-af)#network 24.1.1.0
R4配置:
R4(config)#router rip
R4(config-router)#version 2
R4(config-router)#no auto-summary
R4(config-router)#network 24.1.1.0
R4(config-router)#network 4.4.4.0
R3和R5运行EIGRP
R3配置:
R3(config)#router eigrp 90
R3(config-router)#no auto-summary
R3(config-router)#address-family ipv4 vrf A autonomous-system 100
R3(config-router-af)#network 35.1.1.3 0.0.0.0
R3(config-router-af)#no auto-summary
R3(config-router-af)#eigrp router-id 3.3.3.3
R3(config-router-af)#end
*Jun 11 19:59:52.055: %DUAL-5-NBRCHANGE: EIGRP-IPv4 100: Neighbor 35.1.1.5 (Serial2/0) is up: new adjacency
R5配置:
R5(config)#router eigrp 100
R5(config-router)#no auto-summary
R5(config-router)#network 35.1.1.5 0.0.0.0
R5(config-router)#network 5.5.5.5 0.0.0.0
6(A)、把IGP重分发进BGP,再把BGP重分发进IGP
R2配置:
R2(config)#router bgp 1
R2(config-router)#address-family ipv4 vrf A
R2(config-router-af)#redistribute rip metric 2
R2(config-router-af)#exit
R2(config-router)#exit
R2(config)#router rip
R2(config-router)#address-family ipv4 vrf A
R2(config-router-af)#redistribute bgp 1 metric 1
R3配置:
R3(config)#router bgp 1
R3(config-router)#address-family ipv4 vrf A
R3(config-router-af)#redistribute eigrp 100 metric 1
R3(config-router-af)#end
R3#conf t
R3(config)#router eigrp 90
R3(config-router)#address-family ipv4 vrf A autonomous-system 100
R3(config-router-af)#redistribute bgp 1 metric 10000 100 255 1 1500
A公司×××通了!!
R4#traceroute 5.5.5.5 source 4.4.4.4
Type escape sequence to abort.
Tracing the route to 5.5.5.5
VRF info: (vrf in name/id, vrf out name/id)
1 24.1.1.2 8 msec 12 msec 8 msec
2 12.1.1.1 [MPLS: Labels 16/19 Exp 0] 52 msec 48 msec 52 msec
3 35.1.1.3 [MPLS: Label 19 Exp 0] 48 msec 40 msec 40 msec
4 35.1.1.5 52 msec 52 msec 40 msec
接下来再来配B公司的
5(B)、在PE和CE之间运行路由协议,让PE获取×××路由条目。
R2和R6运行OSPF
R2配置:
R2(config)#router ospf 1 vrf B
R2(config-router)#network 26.1.1.2 0.0.0.0 area 1
R6配置:
R6(config)#router ospf 1
R6(config-router)#network 26.1.1.6 0.0.0.0 a 1
R6(config-router)#network 6.6.6.6 0.0.0.0 a 1
R3和R7运行BGP
R3配置:
R3(config)#router bgp 1
R3(config-router)#no bgp default ipv4-unicast
R3(config-router)#neighbor 37.1.1.7 remote-as 7
R3(config-router)#address-family ipv4 vrf B
R3(config-router-af)#neighbor 37.1.1.7 remote-as 7
R7配置:
R7(config)#router bgp 7
R7(config-router)#no auto-summary
R7(config-router)#no synchronization
R7(config-router)#bgp router-id 7.7.7.7
R7(config-router)#neighbor 37.1.1.3 remote-as 1
R7(config-router)#network 7.7.7.0 mask 255.255.255.0
6(B)、把OSPF重分发进BGP,再把BGP重分发进OSPF,BPG不用重分发
R2配置:
R2(config)#router ospf 1 vrf B
R2(config-router)#redistribute bgp 1 metric 1000 subnets
R2(config-router)#end
R2#conf t
R2(config)#router bgp 1
R2(config-router)#address-family ipv4 vrf B
R2(config-router-af)#redistribute ospf 1 metric 100
B公司×××也通了!!!
R6#traceroute 7.7.7.7 source 6.6.6.6
Type escape sequence to abort.
Tracing the route to 7.7.7.7
VRF info: (vrf in name/id, vrf out name/id)
1 26.1.1.2 12 msec 20 msec 12 msec
2 12.1.1.1 [MPLS: Labels 16/21 Exp 0] 48 msec 60 msec 52 msec
3 37.1.1.3 [MPLS: Label 21 Exp 0] 40 msec 76 msec 76 msec
4 37.1.1.7 48 msec 48 msec 48 msec
今天就写到这吧,到后面B公司我自己都不知道怎么配通的,有点晕!
附件为GNS3最终配置!