一、实验要求
二、实验步骤
1、IP地址规划
本实验没有要求IP地址,所以自己分配规划各个设备的IP地址,如下图所示。
[r2]int lo0
[r2-LoopBack0]ip ad 2.2.2.2 24
[r2-LoopBack0]int g 0/0/1
[r2-GigabitEthernet0/0/1]ip ad 23.1.1.1 24
[r3-LoopBack0]ip ad 3.3.3.3 24
[r3-LoopBack0]int g 0/0/0
[r3-GigabitEthernet0/0/0]ip ad 23.1.1.2 24
[r3-GigabitEthernet0/0/1]ip ad 34.1.1.1 24
[r4-LoopBack0]ip ad 4.4.4.4 24
[r4-LoopBack0]int g 0/0/0
[r4-GigabitEthernet0/0/0]ip ad 34.1.1.2 24
[r4-GigabitEthernet0/0/0]int g 0/0/2
[r4-GigabitEthernet0/0/2]ip add 47.1.1.1 24
2、配置公网的IGP路由
使公网通
[r2]ospf 1 router-id 2.2.2.2
[r2-ospf-1]area 0
[r2-ospf-1-area-0.0.0.0]network 23.1.1.1 0.0.0.0
[r2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[r3]ospf 1 router-id 3.3.3.3
[r3-ospf-1]area 0
[r3-ospf-1-area-0.0.0.0]network 3.3.3.3 0.0.0.0
[r3-ospf-1-area-0.0.0.0]network 23.1.1.2 0.0.0.0
[r4]ospf 1 router-id 4.4.4.4
[r4-ospf-1]area 0
[r4-ospf-1-area-0.0.0.0]network 4.4.4.4 0.0.0.0
[r4-ospf-1-area-0.0.0.0]network 34.1.1.2 0.0.0.0
[r4-ospf-1-area-0.0.0.0]network 47.1.1.1 0.0.0.0
[r4-ospf-1]silent-interface GigabitEthernet 0/0/2 该接口调成沉默接口
因为AR4会宣告该接口,但AR4不应该往AR7发hello包
3、配置MPLS域
给公网配置MPLS域,为后面BGP建立邻居防止路由黑洞。
以AR2为例,AR3、AR4(47之间不用做)做相同的配置。
[r2]mpls lsr-id 2.2.2.2
必须定义mpls的router-id,且为本地设备的真实ip地址,且邻居可达
[r2]mpls 开启mpls协议
[r2-mpls]mpls ldp 激活LDP协议
[r2]interface GigabitEthernet 0/0/1 在需要的标签经过的接口上开启协议
[r2-GigabitEthernet0/0/1]mpls 开启MPLS协议
[r2-GigabitEthernet0/0/1]mpls ldp 激活LDP协议协议
注:在关联到vrf空间前不能配置用户接口ip,否则该地址的直连路由将进入公网路由器的公有路由表
查看结果
4、配置MPLS VPN
配置MPLS VPN空间用来区分A1和B1两个区域相同私有地址
以AR2为例,AR4做相同的配置
[r2]ip vpn-instance B1 创建名为B1的vrf空间
[r2-vpn-instance-B1]ipv4-family 进入IPV4的配置模式
[r2-vpn-instance-B1-af-ipv4]route-distinguisher 1:1 配置RD值
[r2-vpn-instance-B1-af-ipv4]vpn-target 1:1 配置RT值,必须对端的PE端一致
[r2]int g0/0/0 进入链接CE端的接口
[r2-GigabitEthernet0/0/0]ip binding vpn-instance B1 将其接口绑定到1:1的vrf空间
[r2-GigabitEthernet0/0/0]ip address 192.168.2.2 24 配置私有ip地址
[r2]ip vpn-instance A1
[r2-vpn-instance-A1]ipv4-family
[r2-vpn-instance-A1-af-ipv4]route-distinguisher 2:2
[r2-vpn-instance-A1-af-ipv4]vpn-target 2:2
[r2]int g0/0/2
[r2-GigabitEthernet0/0/2]ip binding vpn-instance A1
[r2-GigabitEthernet0/0/2]ip address 192.168.2.2 24
5、建立BGP邻居
在AR2与AR4两个PE间建立BGP邻居
以AR2为例,AR4做相同的配置
[r2]bgp 1
[r2-bgp]route-id 2.2.2.2 和对端建立正常BGP邻居关系,可用于传递正常的公网路由
[r2-bgp]peer 4.4.4.4 as-number 1
[r2-bgp]peer 4.4.4.4 connect-interface LoopBack 0 改更新源
[r2-bgp]peer 4.4.4.4 next-hop-local
再在IPV4的家族模式中,与对端建立一个VPNV4的邻居关系,用于传递VPNV4路由
[r2-bgp]ipv4-family vpnv4
[r2-bgp-af-vpnv4]peer 4.4.4.4 enable
查看结果
再配置AR1、AR5、AR6、AR7上的接口IP地址及换回地址
6、实现AR1与AR5、AR6与AR7之间的通信
(1)配置B1与B2空间
AR1有1.0和2.0网段的路由,用手写静态路由学习AR5的3.0与4.0网段路由
[r1]ip route-static 192.168.3.0 255.255.255.0 192.168.2.2
[r1]ip route-static 192.168.4.0 255.255.255.0 192.168.2.2
[r5]ip route-static 192.168.1.0 255.255.255.0 192.168.3.1
[r5]ip route-static 192.168.2.0 255.255.255.0 192.168.3.1
在对PE端书写静态时,需要注意进入VPN空间书写,否则是使用路由器的物理接口建立静态,导致路由不可达。
[r2]ip route-static vpn-instance B1 192.168.1.0 24 192.168.2.1
[r4]ip route-static vpn-instance B2 192.168.4.0 255.255.255.0 192.168.3.2
将本地vrf空间内的静态和直连路由重发布到BGP协议传递到对端的PE
[r2]bgp 1
[r2-bgp]ipv4 vpn-instance B1
[r2-bgp-a]import-route direct
[r2-bgp-a]import-route static
[r4]bgp 1
[r4-bgp]ipv4 vpn-instance B2
[r4-bgp-a]import-route direct
[r4-bgp-a]import-route static
(2)配置A1与A2空间
[r6]rip 1
[r6-rip-1]version 2
[r6-rip-1]un su
[r6-rip-1]network 192.168.1.0
[r6-rip-1]network 192.168.2.0
[r7]ospf 2 vpn-instance A2
[r7-ospf-2]area 0
[r7-ospf-2-area-0.0.0.0]network 192.168.3.1 0.0.0.0
[r7-ospf-2-area-0.0.0.0]network 192.168.4.1 0.0.0.0
[r2]rip 1 vpn-instance A1
[r2-rip-1]version 2
[r2-rip-1]un su
[r2-rip-1]network 192.168.1.0
[r2-rip-1]network 192.168.2.0
[r4]ospf 2 vpn-instance A2
[r4-ospf-2]area 0
[r4-ospf-2-area-0.0.0.0]network 192.168.3.1 0.0.0.0
再到AR2、AR4上使用双向重发布,实现路由共享
[r2]bgp 1
[r2-bgp]ipv4-family vpn-instance A1
[r2-bgp-a]import-route ospf 2
[r2]rip 1 vpn-instance A1
[r2-rip-1]import-route bgp
[r4]bgp 1
[r4-bgp]ipv4-family vpn-instance A2
[r4-bgp-a]import-route ospf 2
[r4]ospf 2 vpn-instance A2
[r4-ospf-2]import-route bgp
查看mp-bgp的bgp表
在AR2上通过display bgp vpnv4 vpn-instance B1 routing-table
7、测试连通性
AR1访问AR5的换回
AR7访问AR4的换回