MPLS的模拟学习过程

1、场景拓扑

使用小凡模拟器搭建了如下网络拓扑,使用的镜像为:c3640-jk9o3s-mz.122-15.T9.bin

image

相关的配置在下方

如果重复实验,需要清空设备的配置,知道路由器的密码,操作步骤如下:

(1)登入路由器,输入enbale命令启动超级用户模式,在该模式下,输入enable password命令

(2)输入configure terminal命令,启动全局配置模式

(3)输入config-register 0x2142命令

(4)输入end命令,并输入write erase命令删除路由器当前的启动配置

(5)输入reload命令重启路由器 当系统询问是否要保存配置时,选择no

当路由器完成重启后,所有参数将会恢复为出厂时的默认设置

2、术语解释

LSR:标签交换路由器,这里的LSR就是P

边缘LSR:只要一台LSR拥有非MPLS邻居,那么就可以将他看成一台边界LSR,这里的边界LSR就是PE

LSP():标签交换路径

FEC(转发等价类):可以将转发等价类概念想象为一组以相同的方式,走相同的路径,按一致的转发优先级进行转发的数据包。

TDP():标记分发协议

LDP():标签分发协议

3、基本配置

3.1 基本IP的配置

CE1

hostname CE1
no ip domain lookup
no voice hpi capture buffer
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
interface Ethernet0/0
 ip address 192.168.1.1 255.255.255.252
 half-duplex

PE1

hostname PE1
no ip domain lookup
   interface Loopback0
 ip address 2.2.2.2 255.255.255.255
!
interface Ethernet0/0
 ip address 192.168.1.2 255.255.255.252
 half-duplex
!
interface Ethernet0/1
 ip address 10.1.1.1 255.255.255.252
 half-duplex
!

P

hostname P
no ip domain lookup
interface Loopback0
 ip address 3.3.3.3 255.255.255.255
!
interface Ethernet0/0
 ip address 10.1.1.5 255.255.255.252
 half-duplex
!
interface Ethernet0/1
 ip address 10.1.1.2 255.255.255.252
 half-duplex

PE2

hostname PE2
no ip domain lookup
interface Loopback0
 ip address 4.4.4.4 255.255.255.255
!
interface Ethernet0/0
 ip address 10.1.1.6 255.255.255.252
 half-duplex
!
interface Ethernet0/1
 ip address 192.168.2.1 255.255.255.252
 half-duplex
!

CE2

hostname CE2
no ip domain lookup
!
interface Loopback0
 ip address 5.5.5.5 255.255.255.255
!
interface Ethernet0/0
 no ip address
 shutdown
 half-duplex
!
interface Ethernet0/1
 ip address 192.168.2.2 255.255.255.252
 half-duplex
!

3.2 MPLS VPN实验

主要的配置在PE和PE2

分别如下步骤:

3.2.1 pe1 p pe2 路由器之间运行 ospf. 将所有的路由宣告

例如在pe1执行如下命令

router ospf 10
 router-id 2.2.2.2
network 2.2.2.2 0.0.0.0 area 0
 network 10.1.1.0 0.0.0.3 area 0

3.2.2 启用 ip cef 验证现在的路由是基于每一跳

例如在pe1上执行如下命令

ip cef

3.2.3 启用 vrf rd 用来唯一区别不同的 vpn

创建了vrf,并定义路由区别符(RD)和路由目标(RT)

ip vrf vpna
rd 100:2
route-target export 100:1
route-target import 100:1

3.2.4 启用 ibgp 主要用来承载大量的私有前缀

例如在pe1上执行如下

pe1(config)#router bgp 100
pe1(config-router)#bgp router-id 2.2.2.2
pe1(config-router)#nei 4.4.4.4 remote-as 100 
pe1(config-router)#nei 4.4.4.4 update-source Loopback0
pe1(config-router)# no auto-summary
pe1(config-router)# no synchronization
pe1(config-router)#exit

激活标准的ipv4 bgp会话,这里的进程100应该是进程号,使用100这个进程号与邻居4.4.4.4进行会话

BGP进程通过使用BGP自身的地址家族,来激活携带vpn-ipv4前缀的MP-IBGP会话,在这里将邻居激活,neighbor 4.4.4.4 send-community extended(不输入也会默认添加)这个命令将指示BGP通告扩展团体属性。

3.2.5 启用 address-family vpnv4 的扩展团体属性

pe1(config)#router bgp 100
pe1(config-router)#address-family vpnv4
pe1(config-router-af)#nei 4.4.4.4 activate 注意在这里要激活邻居。
pe1(config-router-af)# neighbor 4.4.4.4 send-community extended
pe1(config-router-af)#exi
pe1(config-router)#exit

BGP进程通过使用BGP自身的地址家族,来激活携带vpn-ipv4前缀的MP-IBGP会话,在这里将邻居激活,neighbor 4.4.4.4 send-community extended(不输入也会默认添加)这个命令将指示BGP通告扩展团体属性。

3.2.6 启用 address-family ipv4 vrf vpna

pe1(config)#router bgp 100
pe1(config-router)#address-family ipv4 vrf vpna
pe1(config-router-af)#no au
pe1(config-router-af)#no sy
pe1(config-router-af)#end

客户路由添加到vrf后,需要跨越mpls-vpn主干网通告这些路由,mp-ibgp将这些路由作为vpn-ipv4前缀,为此,需要配置BGP进程中的路由环境,用来告诉BGP需要通告的vrf路由,这里告诉BGP需要通告的vrf为vpna

3.2.7 将vpn 应用到接口中 , 注意是 pe 与 ce 相连的接口

pe1(config)#int e0/0
pe1(config-if)#ip vrf forwarding vpna
pe1(config-if)#ip add 192.168.1.2 255.255.255.252
pe1(config-if)#end

只有运行cef交换的接口才能够与vrf相关联,cef交换机制是mpls/vpn数据成功转发的首要条件,因为标签压入是通过cef交换路径完成的

注:将接口关联到一个vrf后,他的ip地址将从全局路由表中删除

3.2.8 在ce与pe上,增加 ce 到 pe 的路由。可以是静态, ospf eigrp 或是 ebgp ripv2,此实验使用静态路由

例如在ce1和pe1上执行如下命令

ce1(config)#ip route 5.5.5.5 255.255.255.255 192.168.1.2
pe1(config)#ip route vrf vpna 1.1.1.1 255.255.255.255 192.168.1.1


3.2.9 将静态路由重分布到 address-family ipv4 vrf vpna 中(bgp学习静态)

pe1(config)#router bgp 100
pe1(config-router)# address-family ipv4 vrf vpna
pe1(config-router-af)# redistribute static
pe1(config-router-af)#end


3.2.10 启用 mpls ip, 注意,是在 pe 与 p 相连的接口上启用 mpls ip

interface Ethernet0/1
 ip address 10.1.1.1 255.255.255.252
 half-duplex
 tag-switching ip

3.2.11 测试 mpls 交换

全部设备配置完后,在ce1测试

CE1#ping 5.5.5.5 so 1.1.1.1 re 10

Type escape sequence to abort.
Sending 10, 100-byte ICMP Echos to 5.5.5.5, timeout is 2 seconds:
Packet sent with a source address of 1.1.1.1
!!!!!!!!!!
Success rate is 100 percent (10/10), round-trip min/avg/max = 20/38/112 ms


以下每台设备的配置:

CE1配置

设置去往5.5.5.5的静态路由

hostname CE1
no ip domain lookup
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
!
interface Ethernet0/0
 ip address 192.168.1.1 255.255.255.252
 half-duplex
!
ip route 5.5.5.5 255.255.255.255 192.168.1.2

PE1配置

hostname PE1
no ip domain lookup
ip vrf vpna
 rd 100:2
 route-target export 100:1
 route-target import 100:1
!
ip cef
ip audit notify log
ip audit po max-events 100
mpls ldp logging neighbor-changes
interface Loopback0
 ip address 2.2.2.2 255.255.255.255
!
interface Ethernet0/0
 ip vrf forwarding vpna
 ip address 192.168.1.2 255.255.255.252
 half-duplex
!
interface Ethernet0/1
 ip address 10.1.1.1 255.255.255.252
 half-duplex
 tag-switching ip
!
router ospf 10
 router-id 2.2.2.2
network 2.2.2.2 0.0.0.0 area 0
 network 10.1.1.0 0.0.0.3 area 0
!
router bgp 100
 no synchronization
 bgp router-id 2.2.2.2
 bgp log-neighbor-changes
 neighbor 4.4.4.4 remote-as 100
 neighbor 4.4.4.4 update-source Loopback0
 no auto-summary
 !
 address-family vpnv4
 neighbor 4.4.4.4 activate
 neighbor 4.4.4.4 send-community extended
 no auto-summary
 exit-address-family
 !
 address-family ipv4 vrf vpna
 redistribute static
 no auto-summary
 no synchronization
 exit-address-family
!
ip route vrf vpna 1.1.1.1 255.255.255.255 192.168.1.1

P配置

hostname P
no ip domain lookup
ip cef
interface Loopback0
 ip address 3.3.3.3 255.255.255.255
!
interface Ethernet0/0
 ip address 10.1.1.5 255.255.255.252
 half-duplex
 tag-switching ip
!
interface Ethernet0/1
 ip address 10.1.1.2 255.255.255.252
 half-duplex
 tag-switching ip
router ospf 10
 router-id 3.3.3.3
 log-adjacency-changes
 network 3.3.3.3 0.0.0.0 area 0
 network 10.1.1.0 0.0.0.3 area 0
 network 10.1.1.4 0.0.0.3 area 0

PE2配置

hostname PE2
no ip domain lookup
ip vrf vpnb
 rd 100:3
 route-target export 100:1
 route-target import 100:1
!
ip cef
mpls ldp logging neighbor-changes

interface Loopback0
 ip address 4.4.4.4 255.255.255.255
!
interface Ethernet0/0
 ip address 10.1.1.6 255.255.255.252
 half-duplex
 tag-switching ip
!
interface Ethernet0/1
 ip vrf forwarding vpnb
 ip address 192.168.2.1 255.255.255.252
 half-duplex
router ospf 10
 router-id 4.4.4.4
 log-adjacency-changes
 network 4.4.4.4 0.0.0.0 area 0
 network 10.1.1.4 0.0.0.3 area 0
!
router bgp 100
 no synchronization
 bgp router-id 4.4.4.4
 bgp log-neighbor-changes
 neighbor 2.2.2.2 remote-as 100
 neighbor 2.2.2.2 update-source Loopback0
 no auto-summary
 !
 address-family vpnv4
 neighbor 2.2.2.2 activate
 neighbor 2.2.2.2 send-community extended
 no auto-summary
 exit-address-family
 !
 address-family ipv4 vrf vpnb
 redistribute static
 no auto-summary
 no synchronization
 exit-address-family
!
ip route vrf vpnb 5.5.5.5 255.255.255.255 192.168.2.2

CE2

hostname CE2
no ip domain lookup
interface Loopback0
 ip address 5.5.5.5 255.255.255.255
!
interface Ethernet0/0
 no ip address
 shutdown
 half-duplex
!
interface Ethernet0/1
 ip address 192.168.2.2 255.255.255.252
 half-duplex
ip route 1.1.1.1 255.255.255.255 192.168.2.1

猜你喜欢

转载自www.cnblogs.com/fuqu/p/10403768.html