通信网实验报告

课《通信网技术基础》

程 实 验 报

班级: 专业: 通信工程

学号: 姓名: 任课教师:

江凌云

2013/2014 学年 第 二 学期

实验二 MPLS VPN的实现

一、实验目的

该实验通过MPLS VPN的数据配置, 使学生掌握路由器相关接口的IP 地址设置、路由协议的配置以及MPLS VPN的完整的创建过程, 从而加深对IP 网络的IP 编址、路由协议以及MPLS 的相关理论的理解。

二、实验内容

利用网络模拟器GNS3模拟Cisco 的实验环境, 搭建IP 网络, 完成CE 、PE 和P 路由器上的数据配置, 使属于同一VPN 的两个路由器能够互通。

三、实验设备

1.硬件:PC机 2.软件:

①网络模拟器 GNS3-0.8.6-all-in-one ②终端仿真程序 SecureCRT6.7

③Cisco IOS文件 C3640-JK9O3S-M-12.4(7a).BIN

四、 实验步骤及要求

1)创建工程

打开GNS3软件,新建项目,命名为:MPLS_VPN_B11010918,如下图所示。

2)选择路由器

从左竖栏路由器图标中拖出7个c3600路由器,分别为R1-R7,其中R1、R3为PE ,

R2为P 路由器,R1-R3组成MPLS 骨干网,R4和R5为CE ,R6和R7为普通路由器,R4和R6组成VPN1 Site1,R5和R7组成VPN1 Site2,如下图所示。

可以使用绘制椭圆按钮

来绘制椭圆形标记以标识骨干网和VPN 的边界, 如下图所示。

3)配置路由器插槽

选择R1,右键选择“配置”项,设置插槽如下图所示:

同理设置R2~R7,其中R6和R7只需设置插槽口slot0即可,不需设置slot1。

4)连接路由器

使用左栏连接线按钮

连接各路由器,如下图所示:

5)使用保存工程按钮保存工程。

2. 接口配置

路由器各接口的IP 地址配置如下图:

1)设置R1接口

① 以R1为例,选中R1路由器,右键选择“开始”项,等待R1接口变成绿色,然后选中R1,右键选择console 项,打开SecureCRT 窗口。

② 当窗口中出现“R1#”时(表示进入路由器配置的特权模式),可以进行接口IP 地址设置且激活接口。

在进行接口IP 地址设置前,为防止CPU 占用率过高,我们需要计算Idle PC的值,选中R1路由器,右键选择“Idle PC”,此时路由器会计算Idle PC的值,我们选择带“*”的值点击保存就可以了。每种型号的路由器只需要第一次使用时设置一次Idle PC值,当再次使用这个型号的路由器时,GNS3就会自动识别并调用相应的Idle PC值。 接着用以下命令设置接口IP 地址,设置完后注意检查接口设置,检查无误后保存设置。具体操作:

R1#config t 进入全局配置模式

R1(config)#int f0/0 进入接口f0/0配置模式 R1(config-if)#ip address 12.1.1.1 255.255.255.0 配置接口f0/0的IP 地址 R1(config-if)#no shutdown 激活接口f0/0 R1(config-if)#int f1/0

R1(config-if)#ip address 14.1.1.1 255.255.255.0 R1(config-if)#no shutdown R1(config-if)#int loopback0

R1(config-if)#ip address 1.1.1.1 255.255.255.255 配置loopback 地址 R1(config-if)#end 退出全局配置模式 R1#show ip int b 显示接口IP 配置简报 R1#write 保存配置

使用show ip int b命令后检查得到的显示信息是否如下

R1#show ip int b

③ 切换到GNS 主界面,使用保存工程按钮

保存工程。

2)设置R2接口

按照1)的步骤设置R2:

R2#config t 进入全局配置模式

R2(config)#int f0/0 进入接口f0/0配置模式 R2(config-if)#ip address 12.1.1.2 255.255.255.0 配置接口f0/0的IP 地址 R2(config-if)#no shutdown 激活接口f0/0 R2(config-if)#int f1/0

R2(config-if)#ip address 23.1.1.2 255.255.255.0 R2(config-if)#no shutdown R2(config-if)#int loopback0

R2(config-if)#ip address 2.2.2.2 255.255.255.255 配置loopback 地址 R2(config-if)#end 退出全局配置模式 R2#show ip int b 显示接口IP 配置简报 R2#write 保存配置

3)设置R3接口

按照1)的步骤设置R3:

R3#config t 进入全局配置模式

R3(config)#int f0/0 进入接口f0/0配置模式 R3(config-if)#ip address 35.1.1.3 255.255.255.0 配置接口f0/0的IP 地址 R3(config-if)#no shutdown 激活接口f0/0 R3(config-if)#int f1/0

R3(config-if)#ip address 23.1.1.3 255.255.255.0 R3(config-if)#no shutdown R3(config-if)#int loopback0

R3(config-if)#ip address 3.3.3.3 255.255.255.255 配置loopback 地址 R3(config-if)#end 退出全局配置模式 R3#show ip int b 显示接口IP 配置简报 R3#write

4)设置R4接口

按照1)的步骤设置R4:

R4#config t 进入全局配置模式

R4(config)#int f0/0 进入接口f0/0配置模式 R4(config-if)#ip address46.1.1.4 255.255.255.0 配置接口f0/0的IP 地址 R4(config-if)#no shutdown 激活接口f0/0 R4(config-if)#int f1/0

R4(config-if)#ip address 14.1.1.4 255.255.255.0 R4(config-if)#no shutdown R4(config-if)#end 退出全局配置模式 R4#show ip int b 显示接口IP 配置简报 R4#write

5)设置R5接口

按照1)的步骤设置R5:

R5#config t 进入全局配置模式

R5(config)#int f0/0 进入接口f0/0配置模式 R5(config-if)#ip address57.1.1.5 255.255.255.0 配置接口f0/0的IP 地址 R5(config-if)#no shutdown 激活接口f0/0 R5(config-if)#int f1/0

R5(config-if)#ip address35.1.1.5 255.255.255.0 R5(config-if)#no shutdown R5(config-if)#end 退出全局配置模式 R5#show ip int b 显示接口IP 配置简报 R5#write

6)设置R6接口

按照1)的步骤设置R6:

R6#config t 进入全局配置模式

R6(config)#int f0/0 进入接口f0/0配置模式 R6(config-if)#ip address 46.1.1.6 255.255.255.0 配置接口f0/0的IP 地址 R6(config-if)#no shutdown 激活接口f0/0 R6(config-if)#int loopback0

R6(config-if)#ip address6.6.6.6 255.255.255.255 配置loopback 地址 R6(config-if)#end 退出全局配置模式 R6#show ip int b 显示接口IP 配置简报 R6#write

7)设置R7接口

按照1)的步骤设置R7:

R7#config t 进入全局配置模式

R7(config)#int f0/0 进入接口f0/0配置模式 R7(config-if)#ip address 57.1.1.7 255.255.255.0 配置接口f0/0的IP 地址 R7(config-if)#no shutdown 激活接口f0/0 R7(config-if)#int loopback0

R7(config-if)#ip address7.7.7.7 255.255.255.255 配置loopback 地址 R7(config-if)#end 退出全局配置模式 R7#show ip int b 显示接口IP 配置简报 R7#write

4. 骨干网内路由协议配置

在MPLS 域内配置路由协议为OSPF 协议,确保MPLS 域内的R1、R2和R3在域内的所有直连接口和Loopback0口互通。具体配置命令如下:

R1(config)#router ospf 123 建立OSPF 路由进程,进程号为123 R1(config-router)#router-id 1.1.1.1 R1(config-router)#network 1.1.1.1 0.0.0.0 a 0

R1(config-router)#network 12.1.1.0 0.0.0.255 a 0

R2(config)#router ospf 123

R2(config-router)#router-id 2.2.2.2

R2(config-router)#network 2.2.2.2 0.0.0.0 a 0 R2(config-router)#network 12.1.1.0 0.0.0.255 a 0 R2(config-router)#network 23.1.1.0 0.0.0.255 a 0 R2(config-router)#exit R2(config)#int f0/0

R2(config-if)#ip ospf priority 255 R2(config-if)#int f1/0

R2(config-if)#ip ospf priority 255

R3(config)#router ospf 123

R3(config-router)#router-id 3.3.3.3

R3(config-router)#network 3.3.3.3 0.0.0.0 a 0 R3(config-router)#network 23.1.1.0 0.0.0.255 a 0

检查无误后保存路由器配置和工程。

4. 骨干网内MPLS 协议配置 1)全局开启CEF

R1(config)#ip cef

R2(config)#ip cef

R3(config)#ip cef

2)配置LDP

配置R1在骨干网内的接口开通LDP 。 R1(config-if)#int f0/0

R1(config-if)#mpls label protocol ldp

R1(config-if)#mpls ip

配置R2在骨干网内的接口开通LDP 。 R2(config)#int f0/0

R2(config-if)#mpls label protocol ldp R2(config-if)#mpls ip R2(config)#int f1/0

R2(config-if)#mpls label protocol ldp

R2(config-if)#mpls ip

配置R3在骨干网内的接口开通LDP 。 R3(config)#int f1/0

R3(config-if)#mpls label protocol ldp

R3(config-if)#mpls ip

3)检查配置

配置完毕后测试R1~R3的loopback0口是否实现标签交换,命令如下:

R1#traceroute 3.3.3.3 source 1.1.1.1

从结果可以看出,R2到R3以及R3到R2的loopback0已经实现标签交换。 我们还可以使用以下命令查看LDP 邻居、查看LFIB 表和FIB 表。 R1#sh mpls ldp neighbor 查看LDP 邻居 R1#show mpls forwarding-table 查看LFIB 表 R1#show mpls ip binding 查看FIB 表

4)保存

检查无误后保存路由器配置和工程。

5. 配置普通BGP

在R1和R3之间配置普通BGP ,因为在配置MP-BGP 之前,需要保证正常的BGP 邻居是正常连通的。

1)在R1上配置普通BGP :

R1(config)#router bgp 100

R1(config-router)#bgp router-id 1.1.1.1 R1(config-router)#no auto-summary R1(config-router)#no synchronization

R1(config-router)#neighbor 3.3.3.3 remote-as 100

R1(config-router)#neighbor 3.3.3.3 update-source loopback0

2)在R3上配置普通BGP :

R3(config)#router bgp 100

R3(config-router)#bgp router-id 3.3.3.3 R3(config-router)#no auto-summary R3(config-router)#no synchronization

R3(config-router)#neighbor 1.1.1.1 remote-as 100

R3(config-router)#neighbor 1.1.1.1 update-source loopback0

3)查看普通BGP 邻居关系:

R1(config-router)#end

R1#show ip bgp summary

R3(config-router)#end

R3#show ip bgp summary

4)保存:

检查无误后保存路由器配置和工程。

6. 在PE 上创建VRF

在PE 上为用户创建相应的VRF ,并且指定RD 值,需要通信的两个用户网络之间,VRF 和RD 值保持一致。

1)在R1上创建VRF ,并指定RD 值:

R1(config)#ip vrf vpn1

R1(config-vrf)#rd 100:1

2)在R3上创建VRF ,并指定RD 值:

R3(config)#ip vrf vpn1

R3(config-vrf)#rd 100:1

3)在PE 上将连CE 的接口划入VRF :

在PE 上将相应的CE 接口划入相应的VRF ,以后从该接口进入的用户数据包,则属于相应的VRF ,该用户的数据只能根据该VRF 路由表作出转发决策。 ① 在R1上将连CE R4的接口f1/0划入VRF : R1(config-vrf)#int f1/0

R1(config-if)#ip vrf forwarding vpn1 将接口划入名称为vpn1的VRF

R1(config-if)#ip add 14.1.1.1 255.255.255.0

② 在R3上将连CE R5的接口f0/0划入VRF : R3(config-vrf)#int f0/0

R3(config-if)#ip vrf forwarding vpn1

R3(config-if)#ip add 35.1.1.3 255.255.255.0

当一个正常的接口被划入VRF 之后,接口上的地址会消失,所以需要重新配置一次该接口的IP 地址。

4)在PE 上查看VRF 的路由表情况

从用户发到PE 的数据包,PE 只能根据该用户的VRF 路由表作出转发决策,也就是说,如果两个要通信的用户网络,如果各自的内网路由没有出现在PE 的VRF 路由表里,那么他们将不能通信。

① 在PE R1上查看VRF vpn1的路由表:

R1#show ip route vrf vpn1

② 查看PE R1的全局路由表,已经不会再有连CE 接口f1/0的路由了:

R1#show ip route

4)保存

检查无误后保存路由器配置和工程。

7. 创建MP-BGP

通过上面在PE 上查看VRF 路由表发现,VRF 路由表中并没有双方用户的路由,所以必须创建MP-BGP ,来为双方用户网络传递路由信息。

1)在PE R1及R3上创建MP-BGP :

R1(config)#router bgp 100

R1(config-router)#no auto-summary R1(config-router)#address-family vpnv4

R1(config-router-af)#neighbor 3.3.3.3 activate

R1(config-router-af)#neighbor 3.3.3.3 send-community both

R3(config)#router bgp 100

R3(config-router)#no auto-summary

R3(config-router)#address-family vpnv4

R3(config-router-af)#neighbor 1.1.1.1 activate

R3(config-router-af)#neighbor 1.1.1.1 send-community both

因为要传递vpnv4的路由,所以创建的address-family 为vpnv4,并且将正常的BGP 邻居在vpnv4里面激活,而且还需要将这些BGP 的扩展属性手工强行发给对端,否则对方收到的路由信息不会携带扩展属性,也就无法正常区分用户的路由信息。

配置好后,还需查看MP-BGP 邻居:

R1#show ip bgp all summary

2)为MP-BGP 创建VRF

MP-BGP 在收到用户的路由信息后,必须将其放入相应的VRF 路由表,但是这个VRF 表是要手工创建的,并且和该用户相关联的VRF 名字保持一致:

R1(config)#router bgp 100

R1(config-router)#address-family ipv4 vrf vpn1

R1(config-router-af)#no synchronization

R3(config)#router bgp 100

R3(config-router)#address-family ipv4 vrf vpn1

R3(config-router-af)#no synchronization

3)配置RT 控制VRF 路由信息

MP-BGP 的VRF 路由表能让什么样的路由进入,是靠RT 来控制的,要想让用户的路由被MP-BGP 传递,就必须为VRF 配置相应的RT ,只有RT 允许的RD 路由,才能进入和出去VRF 表。

R1(config)#ip vrf vpn1

R1(config-vrf)#route-target both 100:1

R3(config)#ip vrf vpn1

R3(config-vrf)#route-target both 100:1

4)配置PE-CE 的路由协议,并将MP-BGP 的路由重分布进该路由协议

虽然MP-BGP 的VRF 已经允许相应的用户路由进入,但是在PE 上,此时并不能获知用户的路由信息,所以MP-BGP 的VRF 路由表中,依然为空,要想让MP-BGP 的VRF 路由表能够导入相应的用户路由,那就必须和用户CE 之前启用路由协议,以获得对方的路由信息,从而导入MP-BGP 的VRF 表。

①在PE R1一端启用RIP 路由协议: a. 在PE R1上配置RIP :

R1(config)#router rip

R1(config-router)#version 2

R1(config-router)#no auto-summary

R1(config-router)#address-family ipv4 vrf vpn1 R1(config-router-af)#no auto-summary R1(config-router-af)#network 14.0.0.0

R1(config-router-af)#redistribute bgp 100 metric 1

发布路由都是在address-family 中进行的,并且请关闭自动汇总功能,且将MP-BGP 的路由重分布进RIP ,否则对方CE 将无法得知远程用户的路由信息。 b. 在CE R4上配置RIP :

R4(config)#router rip

R4(config-router)#version 2

R4(config-router)#no auto-summary R4(config-router)#network 14.0.0.0 R4(config-router)#network 46.0.0.0

② 在PE R3一端启用OSPF 路由协议: a. 在PE R3上配置OSPF :

R3(config)#router ospf 100 vrf vpn1 R3(config-router)#router-id 35.1.1.3

R3(config-router)#network 35.1.1.3 0.0.0.0 a 0

R3(config-router)#redistribute bgp 100 subnets

同样也要将MP-BGP 的路由重分布进OSPF ,以便传递给CE 端。 b. 在CE R5上配置OSPF : R5(config)#router ospf 100

R5(config-router)#router-id 5.5.5.5

R5(config-router)#network 35.1.1.5 0.0.0.0 a 0 R5(config-router)#network 57.1.1.5 0.0.0.0 a 0

R5(config-router)#exit

5)将PE-CE 间的路由重分布进MP-BGP

PE-CE 之间在运行IGP 时,无法自动导入MP-BGP ,所以手工重分布。 ① 在R1上将RIP 路由导入MP-BGP : R1(config)#router bgp 100

R1(config-router)#address-family ipv4 vrf vpn1

R1(config-router-af)#redistribute rip

② 在R3上将OSPP 路由导入MP-BGP : R3(config)#router bgp 100

R3(config-router)#address-family ipv4 vrf vpn1

R3(config-router-af)#redistribute ospf 100

6)保存

检查无误后保存路由器配置和工程。

8. 用户端路由器的配置

用户端(通常称为C 路由器)R6及R7加入各自CE 的路由协议进程: R6(config)#router rip

R6(config-router)#version 2

R6(config-router)#no auto-summary R6(config-router)#network 46.0.0.0 R6(config-router)#network 6.6.6.6

R7(config)#router ospf 100

R7(config-router)#router-id 7.7.7.7

R7(config-router)#network 7.7.7.7 0.0.0.0 a 0 R7(config-router)#network 57.1.1.0 0.0.0.255 a 0

保存路由器配置和工程。至此,设置已完全结束。

9. 验证:查看路由 1)查看MP-BGP 路由

R3#show ip bgp vpnv4 all

R3#show ip bgp vpnv4 vrf vpn1 6.6.6.6/32

可以看出,MP-BGP 已经拥有双方用户网络的内部路由信息,并且通过查看MP-BGP 路由详细信息可知,这些路由带有BGP 扩展属性RT 即Extended Community: RT:100:1。

2)查看PE 上VRF 路由

R1#show ip route vrf vpn1

R3#show ip route vrf vpn1

可以看出,PE R1及PE R3上的VRF 已经拥有双方用户的网络信息。

3)查看CE 路由

因为PE 上已经拥有双方用户的路由信息,并且PE 和CE 之间也运行路由协议,这些路由也会出现在CE 的路由表中,从而双方用户可以实现通信:

R4#show ip route

同理查看R6,可以看到,两个CE 上已经拥有所有用户的内部路由。

4)查看客户端路由

R6#show ip route

同理可以查看R7上路由,可以看出,经过设置,两个客户端终于有了去往对方的路由

信息。

10. 测试用户间通信并跟踪路由

R6#ping 7.7.7.7 source 6.6.6.6

R6#traceroute 7.7.7.7 source 6.6.6.6

由上可以看出,R6和 R7之间已经成功穿越MPLS 网络将数据包发送给对方远程用户

网络,MPLS_VPN配置成功,工作正常。

五、实验思考题

1.简述三层MPLS VPN的基本原理。

答:MPLS VPN是一种基于MPLS 技术的IP-VPN, 根据PE 设备是否参与VPN 路由处理又细分为二层VPN 和三层VPN, 一般而言,MPLS/BGP VPN指的是三层VPN 。

2.简述三层MPLS VPN中PE 路由器的配置步骤。 答:配置VRF, 接口启用VRF, 配置MP-IBGP

3.MPLS VPN 中P 路由器转发的数据包有两层标签, 说明这两层标签分别是由什么协议分配的。

答:外层标签一般是由LDP 来分配,内层标签由MP-BGP 来分配

4.简述MPLS VPN中RT 和RD 的作用。

答: RD 主要用于生成VPN4 ROUTE。VPNV4 ROUTE由64bit 的RD 和32bit 的IPV4

前缀组成。主要用于MP-BGP 识别VPN 路由;

RT 主要用于MP-BGP 导入VRF 路由。MP-BGP 从VRF 处接收到IPV4路由,接着检查该VRF 的RT, 并吧export RT作为extend —community 附加到NLRI 上,并发送到相应的PE 上。对端PE 接收到该NLRI 后,检查extend-community 所对应VRF 的import RT,若吻合则导入到该VRF 内。

课《通信网技术基础》

程 实 验 报

班级: 专业: 通信工程

学号: 姓名: 任课教师:

江凌云

2013/2014 学年 第 二 学期

实验二 MPLS VPN的实现

一、实验目的

该实验通过MPLS VPN的数据配置, 使学生掌握路由器相关接口的IP 地址设置、路由协议的配置以及MPLS VPN的完整的创建过程, 从而加深对IP 网络的IP 编址、路由协议以及MPLS 的相关理论的理解。

二、实验内容

利用网络模拟器GNS3模拟Cisco 的实验环境, 搭建IP 网络, 完成CE 、PE 和P 路由器上的数据配置, 使属于同一VPN 的两个路由器能够互通。

三、实验设备

1.硬件:PC机 2.软件:

①网络模拟器 GNS3-0.8.6-all-in-one ②终端仿真程序 SecureCRT6.7

③Cisco IOS文件 C3640-JK9O3S-M-12.4(7a).BIN

四、 实验步骤及要求

1)创建工程

打开GNS3软件,新建项目,命名为:MPLS_VPN_B11010918,如下图所示。

2)选择路由器

从左竖栏路由器图标中拖出7个c3600路由器,分别为R1-R7,其中R1、R3为PE ,

R2为P 路由器,R1-R3组成MPLS 骨干网,R4和R5为CE ,R6和R7为普通路由器,R4和R6组成VPN1 Site1,R5和R7组成VPN1 Site2,如下图所示。

可以使用绘制椭圆按钮

来绘制椭圆形标记以标识骨干网和VPN 的边界, 如下图所示。

3)配置路由器插槽

选择R1,右键选择“配置”项,设置插槽如下图所示:

同理设置R2~R7,其中R6和R7只需设置插槽口slot0即可,不需设置slot1。

4)连接路由器

使用左栏连接线按钮

连接各路由器,如下图所示:

5)使用保存工程按钮保存工程。

2. 接口配置

路由器各接口的IP 地址配置如下图:

1)设置R1接口

① 以R1为例,选中R1路由器,右键选择“开始”项,等待R1接口变成绿色,然后选中R1,右键选择console 项,打开SecureCRT 窗口。

② 当窗口中出现“R1#”时(表示进入路由器配置的特权模式),可以进行接口IP 地址设置且激活接口。

在进行接口IP 地址设置前,为防止CPU 占用率过高,我们需要计算Idle PC的值,选中R1路由器,右键选择“Idle PC”,此时路由器会计算Idle PC的值,我们选择带“*”的值点击保存就可以了。每种型号的路由器只需要第一次使用时设置一次Idle PC值,当再次使用这个型号的路由器时,GNS3就会自动识别并调用相应的Idle PC值。 接着用以下命令设置接口IP 地址,设置完后注意检查接口设置,检查无误后保存设置。具体操作:

R1#config t 进入全局配置模式

R1(config)#int f0/0 进入接口f0/0配置模式 R1(config-if)#ip address 12.1.1.1 255.255.255.0 配置接口f0/0的IP 地址 R1(config-if)#no shutdown 激活接口f0/0 R1(config-if)#int f1/0

R1(config-if)#ip address 14.1.1.1 255.255.255.0 R1(config-if)#no shutdown R1(config-if)#int loopback0

R1(config-if)#ip address 1.1.1.1 255.255.255.255 配置loopback 地址 R1(config-if)#end 退出全局配置模式 R1#show ip int b 显示接口IP 配置简报 R1#write 保存配置

使用show ip int b命令后检查得到的显示信息是否如下

R1#show ip int b

③ 切换到GNS 主界面,使用保存工程按钮

保存工程。

2)设置R2接口

按照1)的步骤设置R2:

R2#config t 进入全局配置模式

R2(config)#int f0/0 进入接口f0/0配置模式 R2(config-if)#ip address 12.1.1.2 255.255.255.0 配置接口f0/0的IP 地址 R2(config-if)#no shutdown 激活接口f0/0 R2(config-if)#int f1/0

R2(config-if)#ip address 23.1.1.2 255.255.255.0 R2(config-if)#no shutdown R2(config-if)#int loopback0

R2(config-if)#ip address 2.2.2.2 255.255.255.255 配置loopback 地址 R2(config-if)#end 退出全局配置模式 R2#show ip int b 显示接口IP 配置简报 R2#write 保存配置

3)设置R3接口

按照1)的步骤设置R3:

R3#config t 进入全局配置模式

R3(config)#int f0/0 进入接口f0/0配置模式 R3(config-if)#ip address 35.1.1.3 255.255.255.0 配置接口f0/0的IP 地址 R3(config-if)#no shutdown 激活接口f0/0 R3(config-if)#int f1/0

R3(config-if)#ip address 23.1.1.3 255.255.255.0 R3(config-if)#no shutdown R3(config-if)#int loopback0

R3(config-if)#ip address 3.3.3.3 255.255.255.255 配置loopback 地址 R3(config-if)#end 退出全局配置模式 R3#show ip int b 显示接口IP 配置简报 R3#write

4)设置R4接口

按照1)的步骤设置R4:

R4#config t 进入全局配置模式

R4(config)#int f0/0 进入接口f0/0配置模式 R4(config-if)#ip address46.1.1.4 255.255.255.0 配置接口f0/0的IP 地址 R4(config-if)#no shutdown 激活接口f0/0 R4(config-if)#int f1/0

R4(config-if)#ip address 14.1.1.4 255.255.255.0 R4(config-if)#no shutdown R4(config-if)#end 退出全局配置模式 R4#show ip int b 显示接口IP 配置简报 R4#write

5)设置R5接口

按照1)的步骤设置R5:

R5#config t 进入全局配置模式

R5(config)#int f0/0 进入接口f0/0配置模式 R5(config-if)#ip address57.1.1.5 255.255.255.0 配置接口f0/0的IP 地址 R5(config-if)#no shutdown 激活接口f0/0 R5(config-if)#int f1/0

R5(config-if)#ip address35.1.1.5 255.255.255.0 R5(config-if)#no shutdown R5(config-if)#end 退出全局配置模式 R5#show ip int b 显示接口IP 配置简报 R5#write

6)设置R6接口

按照1)的步骤设置R6:

R6#config t 进入全局配置模式

R6(config)#int f0/0 进入接口f0/0配置模式 R6(config-if)#ip address 46.1.1.6 255.255.255.0 配置接口f0/0的IP 地址 R6(config-if)#no shutdown 激活接口f0/0 R6(config-if)#int loopback0

R6(config-if)#ip address6.6.6.6 255.255.255.255 配置loopback 地址 R6(config-if)#end 退出全局配置模式 R6#show ip int b 显示接口IP 配置简报 R6#write

7)设置R7接口

按照1)的步骤设置R7:

R7#config t 进入全局配置模式

R7(config)#int f0/0 进入接口f0/0配置模式 R7(config-if)#ip address 57.1.1.7 255.255.255.0 配置接口f0/0的IP 地址 R7(config-if)#no shutdown 激活接口f0/0 R7(config-if)#int loopback0

R7(config-if)#ip address7.7.7.7 255.255.255.255 配置loopback 地址 R7(config-if)#end 退出全局配置模式 R7#show ip int b 显示接口IP 配置简报 R7#write

4. 骨干网内路由协议配置

在MPLS 域内配置路由协议为OSPF 协议,确保MPLS 域内的R1、R2和R3在域内的所有直连接口和Loopback0口互通。具体配置命令如下:

R1(config)#router ospf 123 建立OSPF 路由进程,进程号为123 R1(config-router)#router-id 1.1.1.1 R1(config-router)#network 1.1.1.1 0.0.0.0 a 0

R1(config-router)#network 12.1.1.0 0.0.0.255 a 0

R2(config)#router ospf 123

R2(config-router)#router-id 2.2.2.2

R2(config-router)#network 2.2.2.2 0.0.0.0 a 0 R2(config-router)#network 12.1.1.0 0.0.0.255 a 0 R2(config-router)#network 23.1.1.0 0.0.0.255 a 0 R2(config-router)#exit R2(config)#int f0/0

R2(config-if)#ip ospf priority 255 R2(config-if)#int f1/0

R2(config-if)#ip ospf priority 255

R3(config)#router ospf 123

R3(config-router)#router-id 3.3.3.3

R3(config-router)#network 3.3.3.3 0.0.0.0 a 0 R3(config-router)#network 23.1.1.0 0.0.0.255 a 0

检查无误后保存路由器配置和工程。

4. 骨干网内MPLS 协议配置 1)全局开启CEF

R1(config)#ip cef

R2(config)#ip cef

R3(config)#ip cef

2)配置LDP

配置R1在骨干网内的接口开通LDP 。 R1(config-if)#int f0/0

R1(config-if)#mpls label protocol ldp

R1(config-if)#mpls ip

配置R2在骨干网内的接口开通LDP 。 R2(config)#int f0/0

R2(config-if)#mpls label protocol ldp R2(config-if)#mpls ip R2(config)#int f1/0

R2(config-if)#mpls label protocol ldp

R2(config-if)#mpls ip

配置R3在骨干网内的接口开通LDP 。 R3(config)#int f1/0

R3(config-if)#mpls label protocol ldp

R3(config-if)#mpls ip

3)检查配置

配置完毕后测试R1~R3的loopback0口是否实现标签交换,命令如下:

R1#traceroute 3.3.3.3 source 1.1.1.1

从结果可以看出,R2到R3以及R3到R2的loopback0已经实现标签交换。 我们还可以使用以下命令查看LDP 邻居、查看LFIB 表和FIB 表。 R1#sh mpls ldp neighbor 查看LDP 邻居 R1#show mpls forwarding-table 查看LFIB 表 R1#show mpls ip binding 查看FIB 表

4)保存

检查无误后保存路由器配置和工程。

5. 配置普通BGP

在R1和R3之间配置普通BGP ,因为在配置MP-BGP 之前,需要保证正常的BGP 邻居是正常连通的。

1)在R1上配置普通BGP :

R1(config)#router bgp 100

R1(config-router)#bgp router-id 1.1.1.1 R1(config-router)#no auto-summary R1(config-router)#no synchronization

R1(config-router)#neighbor 3.3.3.3 remote-as 100

R1(config-router)#neighbor 3.3.3.3 update-source loopback0

2)在R3上配置普通BGP :

R3(config)#router bgp 100

R3(config-router)#bgp router-id 3.3.3.3 R3(config-router)#no auto-summary R3(config-router)#no synchronization

R3(config-router)#neighbor 1.1.1.1 remote-as 100

R3(config-router)#neighbor 1.1.1.1 update-source loopback0

3)查看普通BGP 邻居关系:

R1(config-router)#end

R1#show ip bgp summary

R3(config-router)#end

R3#show ip bgp summary

4)保存:

检查无误后保存路由器配置和工程。

6. 在PE 上创建VRF

在PE 上为用户创建相应的VRF ,并且指定RD 值,需要通信的两个用户网络之间,VRF 和RD 值保持一致。

1)在R1上创建VRF ,并指定RD 值:

R1(config)#ip vrf vpn1

R1(config-vrf)#rd 100:1

2)在R3上创建VRF ,并指定RD 值:

R3(config)#ip vrf vpn1

R3(config-vrf)#rd 100:1

3)在PE 上将连CE 的接口划入VRF :

在PE 上将相应的CE 接口划入相应的VRF ,以后从该接口进入的用户数据包,则属于相应的VRF ,该用户的数据只能根据该VRF 路由表作出转发决策。 ① 在R1上将连CE R4的接口f1/0划入VRF : R1(config-vrf)#int f1/0

R1(config-if)#ip vrf forwarding vpn1 将接口划入名称为vpn1的VRF

R1(config-if)#ip add 14.1.1.1 255.255.255.0

② 在R3上将连CE R5的接口f0/0划入VRF : R3(config-vrf)#int f0/0

R3(config-if)#ip vrf forwarding vpn1

R3(config-if)#ip add 35.1.1.3 255.255.255.0

当一个正常的接口被划入VRF 之后,接口上的地址会消失,所以需要重新配置一次该接口的IP 地址。

4)在PE 上查看VRF 的路由表情况

从用户发到PE 的数据包,PE 只能根据该用户的VRF 路由表作出转发决策,也就是说,如果两个要通信的用户网络,如果各自的内网路由没有出现在PE 的VRF 路由表里,那么他们将不能通信。

① 在PE R1上查看VRF vpn1的路由表:

R1#show ip route vrf vpn1

② 查看PE R1的全局路由表,已经不会再有连CE 接口f1/0的路由了:

R1#show ip route

4)保存

检查无误后保存路由器配置和工程。

7. 创建MP-BGP

通过上面在PE 上查看VRF 路由表发现,VRF 路由表中并没有双方用户的路由,所以必须创建MP-BGP ,来为双方用户网络传递路由信息。

1)在PE R1及R3上创建MP-BGP :

R1(config)#router bgp 100

R1(config-router)#no auto-summary R1(config-router)#address-family vpnv4

R1(config-router-af)#neighbor 3.3.3.3 activate

R1(config-router-af)#neighbor 3.3.3.3 send-community both

R3(config)#router bgp 100

R3(config-router)#no auto-summary

R3(config-router)#address-family vpnv4

R3(config-router-af)#neighbor 1.1.1.1 activate

R3(config-router-af)#neighbor 1.1.1.1 send-community both

因为要传递vpnv4的路由,所以创建的address-family 为vpnv4,并且将正常的BGP 邻居在vpnv4里面激活,而且还需要将这些BGP 的扩展属性手工强行发给对端,否则对方收到的路由信息不会携带扩展属性,也就无法正常区分用户的路由信息。

配置好后,还需查看MP-BGP 邻居:

R1#show ip bgp all summary

2)为MP-BGP 创建VRF

MP-BGP 在收到用户的路由信息后,必须将其放入相应的VRF 路由表,但是这个VRF 表是要手工创建的,并且和该用户相关联的VRF 名字保持一致:

R1(config)#router bgp 100

R1(config-router)#address-family ipv4 vrf vpn1

R1(config-router-af)#no synchronization

R3(config)#router bgp 100

R3(config-router)#address-family ipv4 vrf vpn1

R3(config-router-af)#no synchronization

3)配置RT 控制VRF 路由信息

MP-BGP 的VRF 路由表能让什么样的路由进入,是靠RT 来控制的,要想让用户的路由被MP-BGP 传递,就必须为VRF 配置相应的RT ,只有RT 允许的RD 路由,才能进入和出去VRF 表。

R1(config)#ip vrf vpn1

R1(config-vrf)#route-target both 100:1

R3(config)#ip vrf vpn1

R3(config-vrf)#route-target both 100:1

4)配置PE-CE 的路由协议,并将MP-BGP 的路由重分布进该路由协议

虽然MP-BGP 的VRF 已经允许相应的用户路由进入,但是在PE 上,此时并不能获知用户的路由信息,所以MP-BGP 的VRF 路由表中,依然为空,要想让MP-BGP 的VRF 路由表能够导入相应的用户路由,那就必须和用户CE 之前启用路由协议,以获得对方的路由信息,从而导入MP-BGP 的VRF 表。

①在PE R1一端启用RIP 路由协议: a. 在PE R1上配置RIP :

R1(config)#router rip

R1(config-router)#version 2

R1(config-router)#no auto-summary

R1(config-router)#address-family ipv4 vrf vpn1 R1(config-router-af)#no auto-summary R1(config-router-af)#network 14.0.0.0

R1(config-router-af)#redistribute bgp 100 metric 1

发布路由都是在address-family 中进行的,并且请关闭自动汇总功能,且将MP-BGP 的路由重分布进RIP ,否则对方CE 将无法得知远程用户的路由信息。 b. 在CE R4上配置RIP :

R4(config)#router rip

R4(config-router)#version 2

R4(config-router)#no auto-summary R4(config-router)#network 14.0.0.0 R4(config-router)#network 46.0.0.0

② 在PE R3一端启用OSPF 路由协议: a. 在PE R3上配置OSPF :

R3(config)#router ospf 100 vrf vpn1 R3(config-router)#router-id 35.1.1.3

R3(config-router)#network 35.1.1.3 0.0.0.0 a 0

R3(config-router)#redistribute bgp 100 subnets

同样也要将MP-BGP 的路由重分布进OSPF ,以便传递给CE 端。 b. 在CE R5上配置OSPF : R5(config)#router ospf 100

R5(config-router)#router-id 5.5.5.5

R5(config-router)#network 35.1.1.5 0.0.0.0 a 0 R5(config-router)#network 57.1.1.5 0.0.0.0 a 0

R5(config-router)#exit

5)将PE-CE 间的路由重分布进MP-BGP

PE-CE 之间在运行IGP 时,无法自动导入MP-BGP ,所以手工重分布。 ① 在R1上将RIP 路由导入MP-BGP : R1(config)#router bgp 100

R1(config-router)#address-family ipv4 vrf vpn1

R1(config-router-af)#redistribute rip

② 在R3上将OSPP 路由导入MP-BGP : R3(config)#router bgp 100

R3(config-router)#address-family ipv4 vrf vpn1

R3(config-router-af)#redistribute ospf 100

6)保存

检查无误后保存路由器配置和工程。

8. 用户端路由器的配置

用户端(通常称为C 路由器)R6及R7加入各自CE 的路由协议进程: R6(config)#router rip

R6(config-router)#version 2

R6(config-router)#no auto-summary R6(config-router)#network 46.0.0.0 R6(config-router)#network 6.6.6.6

R7(config)#router ospf 100

R7(config-router)#router-id 7.7.7.7

R7(config-router)#network 7.7.7.7 0.0.0.0 a 0 R7(config-router)#network 57.1.1.0 0.0.0.255 a 0

保存路由器配置和工程。至此,设置已完全结束。

9. 验证:查看路由 1)查看MP-BGP 路由

R3#show ip bgp vpnv4 all

R3#show ip bgp vpnv4 vrf vpn1 6.6.6.6/32

可以看出,MP-BGP 已经拥有双方用户网络的内部路由信息,并且通过查看MP-BGP 路由详细信息可知,这些路由带有BGP 扩展属性RT 即Extended Community: RT:100:1。

2)查看PE 上VRF 路由

R1#show ip route vrf vpn1

R3#show ip route vrf vpn1

可以看出,PE R1及PE R3上的VRF 已经拥有双方用户的网络信息。

3)查看CE 路由

因为PE 上已经拥有双方用户的路由信息,并且PE 和CE 之间也运行路由协议,这些路由也会出现在CE 的路由表中,从而双方用户可以实现通信:

R4#show ip route

同理查看R6,可以看到,两个CE 上已经拥有所有用户的内部路由。

4)查看客户端路由

R6#show ip route

同理可以查看R7上路由,可以看出,经过设置,两个客户端终于有了去往对方的路由

信息。

10. 测试用户间通信并跟踪路由

R6#ping 7.7.7.7 source 6.6.6.6

R6#traceroute 7.7.7.7 source 6.6.6.6

由上可以看出,R6和 R7之间已经成功穿越MPLS 网络将数据包发送给对方远程用户

网络,MPLS_VPN配置成功,工作正常。

五、实验思考题

1.简述三层MPLS VPN的基本原理。

答:MPLS VPN是一种基于MPLS 技术的IP-VPN, 根据PE 设备是否参与VPN 路由处理又细分为二层VPN 和三层VPN, 一般而言,MPLS/BGP VPN指的是三层VPN 。

2.简述三层MPLS VPN中PE 路由器的配置步骤。 答:配置VRF, 接口启用VRF, 配置MP-IBGP

3.MPLS VPN 中P 路由器转发的数据包有两层标签, 说明这两层标签分别是由什么协议分配的。

答:外层标签一般是由LDP 来分配,内层标签由MP-BGP 来分配

4.简述MPLS VPN中RT 和RD 的作用。

答: RD 主要用于生成VPN4 ROUTE。VPNV4 ROUTE由64bit 的RD 和32bit 的IPV4

前缀组成。主要用于MP-BGP 识别VPN 路由;

RT 主要用于MP-BGP 导入VRF 路由。MP-BGP 从VRF 处接收到IPV4路由,接着检查该VRF 的RT, 并吧export RT作为extend —community 附加到NLRI 上,并发送到相应的PE 上。对端PE 接收到该NLRI 后,检查extend-community 所对应VRF 的import RT,若吻合则导入到该VRF 内。


相关文章

  • 通信工程专业认识实习总结
  • 计算机与信息工程学院 通信工程专业认识实习总结 学生姓名: 班级:通信02-8班学号:19号 实习指导老师: 成绩: 实习起止日期:2005年7月4日--2005年7月15日 本次认识实习定期为两周.前一周由指导老师组织在学校内进行学习,分 ...查看


  • 通信专业人才需求调研报告
  • 通信技术专业人才需求 调研报告 职业技术学院 二〇一二年四月 通信技术专业人才需求调研报告 一.通信技术专业申报的背景分析 随着通信技术的迅速发展,遍及各行各业的通信信息化建设浪潮为我国通信产业的发展提供了前所未有的良机,通信技术的应用领域 ...查看


  • 串口通信实验报告
  • 实验三 双机通信实验 一.实验目的 UART 串行通信接口技术应用 二.实验实现的功能 用两片核心板之间实现串行通信,将按键信息互发到对方数码管显示. 三.系统硬件设计 (1)单片机的最小系统部分 (2)电源部分 (3)人机界面部分 数码管 ...查看


  • 光纤传输系统_预习报告
  • 物理电子学基础实验 光纤传输系统 预习报告 姓名: 学号: 班级: 组号: 光纤传输系统 一. 实验目的: 了解点到点光纤传输系统基本组成: 掌握光接收机的灵敏度概念: 掌握波分复用光通信系统的组成,掌握其相关器件特性: 学会设计波分复用光 ...查看


  • 建筑智能化信息设施系统实验报告
  • 实验一 程控交换机的使用实验 一.程控交换机 1.实验目的:了解和掌握程控交换机的操作方法,软件换平台的搭建及使用. 2.实验内容:设置电话程控交换机的电话端口:801.802,分别对应电话号码:601.602.使用电话跳线连接电话机到电话 ...查看


  • 光纤通信实验报告 1
  • 光纤通信技术试验报告 学院 : 专业: 班级: 学号: 姓名: 实验一⑴ 半导体激光器P-I特性测试实验 一.实验目的 ⒈ 学习半导体激光器发光原理和光纤通信中激光光源工作原理 ⒉ 了解半导体激光器平均输出光功率与注入驱动电流的关系 ⒊ 掌 ...查看


  • 标准实验报告(2)
  • 实 验 报 告(二) 学生姓名:王超楠 学号:[1**********]11 指导教师:廖红舒/张花国 实验地点:科研二号楼B453 实验时间:周二晚 一.实验室名称:信息对抗系统专业实验室 二.实验项目名称:典型模拟通信信号调制识别 三. ...查看


  • FSK现代通信原理实验报告
  • 2013-2014学年秋季学期 [COE9310]现代通信原理 实验名称: FSK移频键控实验 学 生 实 验 报 告 学生姓名: 时晓晓 学号: 2011141052 汕头大学工学院电子信息工程系 实验四:FSK 移频键控实验 一, 实验 ...查看


  • 北邮电子电路实验报告指数运算
  • 北京邮电大学信息与通信工程学院 北京邮电大学电子电路综合实验报告 课题名称:指数运算电路的设计 1 北京邮电大学信息与通信工程学院 一. 摘要: 利用二极管的伏安特性实现对数运算及指数运算电路,通过 电阻与晶体管位置互换实现反对数运算.加入 ...查看


  • 认识实习报告(南邮)
  • 时间过的真快,转眼间一周的实习时间已经过去了,虽然这周天气不好,但它丝毫不影响我们对新事物认识 与了解的渴望,期间,不仅所见所闻是以往不曾有的,同时也促进了同学之间的友谊. 实习的第一天我们的任务首要且必要的是开动员大会,强调纪律与出勤的内 ...查看


热门内容