华为HCIP第三节-----------------------------MPLS VPN

一、MPLS VPN原理与配置

1、MPLS VPN定义

BGP/MPLS IP VPN网络一般由运营商搭建,VPN用户购买VPN服务来实现用户网络之间的路由传递、数据互通等。 MPLS VPN使用BGP在运营商骨干网(IP网络)上发布VPN路由,使用MPLS在运营商骨干网上转发VPN报文。BGP/MPLS IP VPN又被简称为MPLS VPN,是一种常见的L3VPN(Layer 3 VPN)技术。

2、MPLS VPN网络架构

MPLS VPN网络架构由三部分组成:CE(Customer Edge)、PE(Provider Edge)和P(Provider),其中PE和P是运营商设备,CE是MPLS VPN用户设备。 站点(site)就是MPLS VPN的用户,由CE和其他用户设备构成。

3、MPLS VPN技术架构

MPLS VPN不是单一的一种VPN技术,是多种技术结合的综合解决方案,主要包含下列技术: MP-BGP:负责在PE与PE之间传递站点内的路由信息。

LDP:负责PE与PE之间的隧道建立

VRF:负责PE的VPN用户管理。 静态路由、IGP、BGP:负责PE与CE之间的路由信息交换。

4、为什么要选择MPLS VPN

对VPN客户而言: “感知”不到VPN的存在,不需要部署和维护VPN,降低企业运维难度和成本。 一般部署在运营商的MPLS VPN专网上,有一定的安全性保障。

对于运营商而言: MPLS在无连接的IP网络中增加了面向连接的控制平面,为IP网络增添了管理和运营的手段。 支持地址空间重叠、支持重叠VPN、组网方式灵活、可扩展性好。 能够方便地支持MPLS TE合理调控现有网络资源,最大限度的节省运营商成本。

5、MPLS VPN路由发布概述

若想实现同一个VPN的不同站点之间的通信,首先需要完成不同站点之间的路由交互。在基本MPLS VPN组网中,VPN路由信息的发布涉及CE和PE,P路由器只维护骨干网的路由,不需要了解任何VPN路由信息。VPN路由信息的发布过程包括三部分: 本地CE到入口PE 入口PE到出口PE 出口PE到远端CE

6、RD

PE收到不同VPN的CE发来的IPv4地址前缀,本地根据VPN实例配置去区分这些地址前缀。但是VPN实例只是一个本地的概念,PE无法将VPN实例信息传递到对端PE,故有了RD(Route Distinguisher,路由标识符)。 RD长8字节,用于区分使用相同地址空间的IPv4前缀。 PE从CE接收到IPv4路由后,在IPv4前缀前加上RD,转换为全局唯一的VPN-IPv4路由。

7、MP-BGP

为了正确处理VPN路由,MPLS VPN使用RFC2858(Multiprotocol Extensions for BGP-4)中规定的MP-BGP,即BGP-4的多协议扩展。 MP-BGP采用地址族(Address Family)来区分不同的网络层协议,既可以支持传统的IPv4地址族,又可以支持其它地址族(比如VPN-IPv4地址族、IPv6地址族等)。 MP-BGP新增了两种路径属性: MP_REACH_NLRI:Multiprotocol Reachable NLRI,多协议可达NLRI。用于发布可达路由及下一跳信息。 MP_UNREACH_NLRI:Multiprotocol Unreachable NLRI,多协议不可达NLRI。用于撤销不可达路由。

8、RT

在PE上,每一个VPN实例都会与一个或多个VPN Target属性绑定,有两类VPN Target属性: Export Target(ERT):本地PE从直接相连站点学到IPv4路由后,转换为VPN IPv4路由,并为这些路由添加Export Target属性。Export Target属性作为BGP的扩展团体属性随路由发布。 Import Target(IRT):PE收到其它PE发布的VPN-IPv4路由时,检查其Export Target属性。当此属性与PE上某个VPN实例的Import Target匹配时,PE就把路由加入到该VPN实例的路由表。

二、MPLS实验

1、实验要求

1.
实验模拟网络上有两个公司,公司 A 和公司 B,需要实现同一公司可以通过 ISP
网络进行互访,不同公司不能互访,通过 MPLS VPN 实现这一需求。
2.
完成基础 IP 地址配置,每台路由器上创建环回接口 LP0,地址设置为 X.X.X.X,X
为路由器编号(例:R1 地址为 1.1.1.1),路由器物理接口地址按拓扑配置。
3.
R1 上创建 loopback100:172.16.1.1。R7 上创建 loopback100:172.16.2.1。
R2 上创建 loopback100:172.16.1.1。R6 上创建 loopback100:172.16.2.1。
这些环回接口用以模拟站点内网段。
4.
AS500 为公网,IGP 协议使用 OSPF 协议,使网络互通。
5.
AS500 内,R3 与 R5 使用 loopback 0 接口建立 VPNV4 的邻居关系,不建立
ipv4 邻居关系
6.
在 AS500 使能 MPLS 协议,使用 LDP 协议分配标签。
7.
网络中只有同一公司可以互相访问
i. 公司A
1. R3创建VRF,名称为1,RD:1:1,出方向RT为1:7
2. R5创建VRF,名称为7,RD:7:7,出方向RT为7:1
3. 在PE和CE设备间建立BGP邻居关系,在PE设备间建立MP-BGP邻居关系
以完成路由传递。
4. 在设备上正确通告路由,实现同A公司可以互访。
ii. 公司B
1. R3创建VRF,名称为2,RD:2:2,出方向RT为2:6
2. R5创建VRF,名称为6,RD:6:6,出方向RT为6:2
3. 在PE和CE设备间建立OSPF邻居关系
4. 在设备上正确通告路由,实现同B公司可以互访。

2、实验拓扑

3、配置思路及验证结果

R1
[Huawei] sysname R1
[R1] interface g0/0/0
[R1-GigabitEthernet0/0/0] ip add 192.168.13.1 24
[R1-GigabitEthernet0/0/0] interface LoopBack 0
[R1-LoopBack0] ip add 1.1.1.1 32
[R1-LoopBack0] interface LoopBack 100
[R1-LoopBack100] ip add 172.16.1.1 32
R2
[Huawei] sysname R2
[R2] interface g0/0/0
[R2-GigabitEthernet0/0/0] ip add 192.168.23.2 24
[R2-GigabitEthernet0/0/0] interface LoopBack 0
[R2-LoopBack0] ip add 2.2.2.2 32
[R2-LoopBack0] interface LoopBack 100
[R2-LoopBack100] ip add 172.16.1.1 32
R3
[Huawei] sysname R3
[R3] interface g0/0/2
[R3-GigabitEthernet0/0/2] ip address 34.1.1.3 24
[R3-GigabitEthernet0/0/2] interface lo 0
[R3-LoopBack0] ip add 3.3.3.3 32
R4
[Huawei] sysname R4
[R4] interface g0/0/0
[R4-GigabitEthernet0/0/0] ip add 34.1.1.4 24
[R4-GigabitEthernet0/0/0] interface g0/0/1
[R4-GigabitEthernet0/0/1] ip add 45.1.1.4 24
[R4-GigabitEthernet0/0/1] interface lo 0
[R4-LoopBack0] ip add 4.4.4.4 24
R5
[Huawei] system R5
[R5] interface g0/0/0
[R5-GigabitEthernet0/0/0] ip add 45.1.1.5 24
[R5-GigabitEthernet0/0/0] interface lo0
[R5-LoopBack0] ip add 5.5.5.5 32
R6
[Huawei] system R6
[R6] interface g0/0/0
[R6-GigabitEthernet0/0/0] ip add 192.168.56.6 24
[R6-GigabitEthernet0/0/0] interface lo0
[R6-LoopBack0] ip add 6.6.6.6 32
[R6-LoopBack0] interface lo100
[R6-LoopBack100] ip add 172.16.2.1 32
R7
[Huawei] system R7
[R7] interface g0/0/0
[R7-GigabitEthernet0/0/0] ip add 192.168.57.7 24
[R7-GigabitEthernet0/0/0] interface lo0
[R7-LoopBack0] ip add 7.7.7.7 32
[R7-LoopBack0] interface lo100
[R7-LoopBack100] ip add 172.16.2.1 32
3.2 AS500 内配置 ospf
R3
[R3] ospf 1 router-id 3.3.3.3
[R3-ospf-1] area 0
[R3-ospf-1-area-0.0.0.0] network 34.1.1.3 0.0.0.0
[R3-ospf-1-area-0.0.0.0] network 3.3.3.3 0.0.0.0
R4
[R4] ospf 1 router-id 4.4.4.4
[R4-ospf-1] area 0
[R4-ospf-1-area-0.0.0.0] network 34.1.1.4 0.0.0.0
[R4-ospf-1-area-0.0.0.0] network 45.1.1.4 0.0.0.0
[R4-ospf-1-area-0.0.0.0] network 4.4.4.4 0.0.0.0
R5
[R5] ospf 1 router-id 5.5.5.5
[R5-ospf-1] area 0
[R5-ospf-1-area-0.0.0.0] network 45.1.1.5 0.0.0.0
[R5-ospf-1-area-0.0.0.0] network 5.5.5.5 0.0.0.0
R3 可以学习到全部的环回口路由
3.3 AS500 内配置 BGP
R3
[R3] bgp 500
[R3-bgp] router-id 3.3.3.3
[R3-bgp] undo default ipv4-unicast
[R3-bgp] peer 5.5.5.5 as-number 500
[R3-bgp] peer 5.5.5.5 connect-interface LoopBack0
[R3-bgp] ipv4-family vpnv4
[R3-bgp-af-vpnv4] peer 5.5.5.5 enable
R5
[R5] bgp 500
[R5-bgp] router-id 5.5.5.5
[R5-bgp] undo default ipv4-unicast
[R5-bgp] peer 3.3.3.3 as-number 500
[R5-bgp] peer 3.3.3.3 connect-interface LoopBack0
[R5-bgp] ipv4-family vpnv4
[R5-bgp-af-vpnv4] peer 3.3.3.3 enable
R3 R5 建立 VPNV4 的邻居关系
3.4 在 R3、R4、R5 上配置 MPLS LDP
R3
[R3] mpls lsr-id 3.3.3.3
[R3] mpls
[R3-mpls] mpls ldp
[R3-mpls-ldp] interface g0/0/2
[R3-GigabitEthernet0/0/2]Mpls
[R3-GigabitEthernet0/0/2]Mpls ldp
R4
[R4] mpls lsr-id 4.4.4.4
[R4] mpls
[R4-mpls] mpls ldp
[R4-mpls-ldp] interface g0/0/0
[R4-GigabitEthernet0/0/0] Mpls
[R4-GigabitEthernet0/0/0] Mpls ldp
[R4-GigabitEthernet0/0/0] interface g0/0/1
[R4-GigabitEthernet0/0/1] Mpls
[R4-GigabitEthernet0/0/1] Mpls ldp
R5
[R5] mpls lsr-id 5.5.5.5
[R5] mpls
[R5-mpls] mpls ldp
[R5-mpls-ldp] interface g0/0/0
[R5-GigabitEthernet0/0/0]Mpls
[R5-GigabitEthernet0/0/1]Mpls ldp
R4 上可以查看到 LDP 邻居
3.5 在 R3、R5 上创建公司 A 的 VRF
R3
[R3] ip vpn-instance 1
[R3-vpn-instance-1] route-distinguisher 1:1
[R3-vpn-instance-1] vpn-target 1:7 export-extcommunity
[R3-vpn-instance-1] vpn-target 7:1 import-extcommunity
R5
[R5] ip vpn-instance 7
[R5-vpn-instance-7] route-distinguisher 7:7
[R5-vpn-instance-7] vpn-target 7:1 export-extcommunity
[R5-vpn-instance-7] vpn-target 1:7 import-extcommunity
3.6 将 R3、R5 关于公司 A 的接口划入相应的 VRF
R3
[R3] interface g0/0/0
[R3-GigabitEthernet0/0/0] ip binding vpn-instance 1
[R3-GigabitEthernet0/0/0] ip address 192.168.13.3 24
R5
[R5] interface g0/0/1
[R5-GigabitEthernet0/0/1] ip binding vpn-instance 7
[R5-GigabitEthernet0/0/1] ip address 192.168.57.5 24
3.7 R1 与 R3、R7 与 R5 建立 EBGP 邻居关系,R1 与
R7 宣告 loopback 100 接口地址
R1
[R1] bgp 100
[R1-bgp] peer 192.168.13.3 as-number 500
[R1-bgp] network 172.16.1.1 32
R3
[R3] bgp 500
[R3-bgp] ipv4-family vpn-instance 1
[R3-bgp-1] peer 192.168.13.1 as-number 100
R5
[R5] bgp 500
[R5-bgp] ipv4-family vpn-instance 7
[R5-bgp-7] peer 192.168.57.7 as-number 300
R7
[R7] bgp 300
[R7-bgp] peer 192.168.13.3 as-number 500
[R7-bgp] network 172.16.2.1 32
R1 R3 R5 R7 建立 EBGP 邻居关系
R1 学到 R7 宣告的 172.16.2.1 的路由
R1 的环回口与 R7 的环回口可以通信, A 公司通信成功。
3.8 在 R3、R5 上创建公司 B 的 VRF
R3
[R3] ip vpn-instance 2
[R3-vpn-instance-2] route-distinguisher 2:2
[R3-vpn-instance-2] vpn-target 2:6export-extcommunity
[R3-vpn-instance-3] vpn-target 6:2 import-extcommunity
R5
[R5] ip vpn-instance 6
[R5-vpn-instance-6] route-distinguisher 6:6
[R5-vpn-instance-6] vpn-target 6:2 export-extcommunity
[R5-vpn-instance-6] vpn-target 2:6 import-extcommunity
3.9 将 R3、R5 关于公司 B 的接口划入相应的 VRF
R3
[R3] interface g0/0/1
[R3-GigabitEthernet0/0/1] ip binding vpn-instance 2
[R3-GigabitEthernet0/0/1] ip address 192.168.23.3 24
R5
[R5] interface g0/0/2
[R5-GigabitEthernet0/0/2] ip binding vpn-instance 6
[R5-GigabitEthernet0/0/2] ip address 192.168.56.5 24
3.10 R2 与 R3、R6 与 R5 建立 ospf 邻居关系,R2 与
R6 宣告 loopback 100 接口地址
R2
[R2] ospf 1 router-id 2.2.2.2
[R2-ospf-1] area 0
[R2-ospf-1-area-0.0.0.0] network 172.16.1.1 0.0.0.0
[R2-ospf-1-area-0.0.0.0] network 192.168.23.2 0.0.0.0
R3
[R3] ospf 2 router-id 3.3.3.3 vpn-instance 2
[R3-ospf-2] area 0
[R3-ospf-2-area-0.0.0.0] network 192.168.23.3 0.0.0.0
R5
[R5] ospf 2 router-id 5.5.5.5 vpn-instance 6
[R5-ospf-2] area 0
[R5-ospf-2-area-0.0.0.0] network 192.168.56.5 0.0.0.0
R6
[R7] ospf 1 router-id 6.6.6.6
[R7-ospf-1] area 0
[R7-ospf-1-area-0.0.0.0] network 172.16.2.1 0.0.0.0
[R7-ospf-1-area-0.0.0.0] network 192.168.56.6 0.0.0.0
R1 R3 R5 R7 建立 ospf 邻居关系
3.11 在 R3 与 R5 上将 OSPF 与 BGP 路由相互引入
R3
[R3] bgp 500
[R3-bgp] ipv4-family vpn-instance 2
[R3-bgp-2] import-route ospf 2
[R3] ospf 2 vpn-instance 2
[R3-ospf-2] import-route bgp
R5
[R5] bgp 500
[R5-bgp] ipv4-family vpn-instance 6
[R5-bgp-6] import-route ospf 2
[R5] ospf 2 vpn-instance 6
[R5-ospf-2] import-route bgp
R2 学习到 R6 宣告的 172.6.2.1 的路由

猜你喜欢

转载自blog.csdn.net/qq_62466609/article/details/132038651
VPN