一、背景介绍
同一个公司可能有多个办公地点,不同的办公地点之间通信往往是向运营商购买vpn服务,而vpn服务也可以分为二层与三层,区别是:
二层vpn服务,可以将运营商看成一个透明的,站点两端在同一网段,彼此间不感知中间的运营商网络
三层vpn服务,可以将运营商网络看成是一格路由器,站点两端的地址是不同网段,本文介绍的mpls vpn就属于三层vpn服务
二、网络拓扑
本次实验网络拓扑如下图所示:
黄色区域表示运营商网络,而紫色与红色分别表示同一用户的不同站点,其中端口ip地址见下表
路由器端口 | ip地址 | 描述 |
---|---|---|
R1 g0/0/0 | 15.0.0.1/24 | |
R1 g0/0/1 | 14.0.0.1/24 | |
R1 g2/0/0 | 12.0.0.1/24 | |
R1 lo0 | 1.1.1.1/32 | ibgp与mpls邻居间通信地址,ospf router-id,mpls lsr-id |
R2 g0/0/0 | 12.0.0.2/24 | |
R2 g0/0/1 | 23.0.0.2/24 | |
R2 lo0 | 2.2.2.2/32 | ibgp与mpls邻居间通信地址,ospf router-id,mpls lsr-id |
R3 g0/0/0 | 37.0.0.3/24 | |
R3 g0/0/1 | 23.0.0.3/24 | |
R3 g2/0/0 | 36.0.0.3/24 | |
R3 lo0 | 3.3.3.3/32 | ibgp与mpls邻居间通信地址,ospf router-id,mpls lsr-id |
R4 g0/0/1 | 14.0.0.4/24 | |
R4 lo0 | 4.4.4.4/32 | 模拟客户B站点1的内网路由 |
R5 g0/0/0 | 15.0.0.5/24 | |
R5 lo0 | 5.5.5.5/32 | 模拟客户A站点1的内网路由 |
R6 g0/0/0 | 36.0.0.6/24 | |
R6 lo0 | 6.6.6.6/32 | 模拟客户B站点2的内网路由 |
R7 g0/0/0 | 37.0.0.7/24 | |
R7 lo0 | 7.7.7.7/32 | 模拟客户A站点2的内网路由 |
三、步骤说明
1.运营商网络
- 运营商网络中,底层通过lo0接口建立ospf邻居,ospf进程号100,为ibgp与ldp协议通信做铺垫
- R1,R2,R3之间建立ldp邻居,使用lo0端口地址作为ldp通信地址
- R1和R3上分别建立instance A和instance B的VRF,将相应接口划入VRF中
- R1和R3之间建立mp-ibgp邻居,R2不运行bgp程序
2.客户A网络
- R5与R1,R7与R3之间建立ospf邻居,ospf进程号为1
- 双向发布,使客户A站点1能够和站点2通信
3.客户B网络
- R4与R1,R6与R3之间建立ebgp对等体
- 使客户A站点1能够和站点2通信
四、配置操作
1.运营商网络
- 创建ospf底层连接
- R1,R2,R3建立ldp邻居
- 在asbr上创建vrf,并将相应接口划入vrf
- R1和R3之间建立mp-ibgp邻居
2.客户A网络
- 站点1与运营商边界路由器建立ospf邻居
- 站点2与运营商边界路由器建立ospf邻居
- 站点1路由双向重发布
- 站点2路由双向重发布
- 验证mp-ibgp路由已学习到,至此客户A配置完成
3.客户B网络
- 站点1与运营商边界路由器建立ebgp对等体
- 站点2与运营商边界路由器建立ebgp对等体
- 查看对等体是否已建立
- 确认路由已相互学习到,至此所有配置完成