域间概述
随着MPLS VPN解决方案的广泛应用,服务的终端用户的规格和范围也在增长,在一个企业内部的站点数目越来越大,某个地理位置与另外一个服务提供商相连的需求变得非常的普遍,例如国内运营商的不同城域网之间,或相互协作的运营商的骨干网之间都存在着跨越不同自治域的情况。
一般的MPLS VPN体系结构都是在一个自治系统AS(Autonomous System)内运行,任何VPN的路由信息都是只能在一个AS内按需扩散,没有提供AS内的VPN信息向其他AS扩散的功能。因此,为了支持运营商之间的VPN路由信息交换,就需要扩展现有的协议和修改MPLS VPN体系框架,提供一个不同于基本的MPLS VPN体系结构所提供的互连模型——跨域(Inter-AS)的MPLS VPN,以便可以穿过运营商间的链路来发布路由前缀和标签信息。
RFC4364中提出了三钟跨域VPN解决方案,分别是:
跨域VPN-OptionA(Inter-Provider Backbones Option A)方式:需要跨域的VPN在ASBR(AS Boundary Router)间通过专用的接口管理自己的VPN路由,也称为VRF-to-VRF;
跨域VPN-OptionB(Inter-Provider Backbones Option B)方式:ASBR间通过MP-EBGP发布标签VPN-IPv4路由,也称为EBGP redistribution of labeled VPN-IPv4 routes;
跨域VPN-OptionC(Inter-Provider Backbones Option C)方式:PE间通过Multi-hop MP-EBGP发布标签VPN-IPv4路由,也称为Multihop EBGP redistribution of labeled VPN-IPv4 routes。
OptionA
跨域VPN-OptionA是基本BGP/MPLS IP VPN在跨域环境下的应用,ASBR之间不需要运行MPLS,也不需要为跨域进行特殊配置。这种方式下,两个AS的边界ASBR直接相连,ASBR同时也是各自所在自治系统的PE。两个ASBR都把对端ASBR看作自己的CE设备,将会为每一个VPN创建VPN实例,使用EBGP方式向对端发布IPv4路由。
跨域VPN-OptionA的路由发布
在PE和ASBR之间运行MP-IBGP协议交换VPN-IPv4路由信息。两个ASBR之间可以运行普通的PE-CE路由协议(BGP或IGP多实例)或静态路由来交互VPN信息;但这是不同AS之间的交互,建议使用EBGP。
例如CE1将目的地址为10.1.1.1/24的路由发布给CE2,其中,D表示目的地址,NH表示下一跳,L1和L2表示所携带的私网标签。图中省略了公网IGP路由和标签的分配。
跨域VPN-OptionA的报文转发
以LSP为公网隧道的报文转发流程,其中,L1和L2表示私网标签,Lx和Ly表示公网外层隧道标签。
跨域VPN-OptionA的特点
优点是配置简单:由于ASBR之间不需要运行MPLS,也不需要为跨域进行特殊配置。
缺点是可扩展性差:由于ASBR需要管理所有VPN路由,为每个VPN创建VPN实例。这将导致ASBR上的VPN-IPv4路由数量过大。并且,由于ASBR间是普通的IP转发,要求为每个跨域的VPN使用不同的接口,从而提高了对PE设备的要求。如果跨越多个自治域,中间域必须支持VPN业务,不仅配置量大,而且对中间域影响大。在需要跨域的VPN数量比较少的情况,可以优先考虑使用。
OptionA实验配置
配置步骤
1.IP地址配置。
【R1_PE1】
interface GigabitEthernet0/0/0
ip address 10.1.12.1 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 172.16.10.100 255.255.255.0
#
interface GigabitEthernet0/0/2
ip address 192.168.10.100 255.255.255.0
#
interface LoopBack0
ip address 1.1.1.1 255.255.255.255
【R2_P1】
interface GigabitEthernet0/0/0
ip address 10.1.12.2 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.23.2 255.255.255.0
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
【R3_ASBR1】
interface GigabitEthernet0/0/0
ip address 10.1.12.2 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.23.2 255.255.255.0
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
【R4_ASBR2】
interface GigabitEthernet0/0/0
ip address 10.1.12.2 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.23.2 255.255.255.0
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
【R5_P2】
interface GigabitEthernet0/0/0
ip address 10.1.12.2 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.23.2 255.255.255.0
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
【R6_PE2】
interface GigabitEthernet0/0/0
ip address 10.1.12.2 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.23.2 255.255.255.0
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
用户PC的IP地址配置。
2.AS 100配置域内路由互通。
[AR1]ospf 10 router-id 1.1.1.1
[AR1-ospf-10]area 0
[AR1-ospf-10-area-0.0.0.0]network 10.1.12.0 0.0.0.255
[AR1-ospf-10-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[AR1-ospf-10-area-0.0.0.0]qui
[AR1-ospf-10]
[AR1]ospf 10 router-id 1.1.1.1
[AR1-ospf-10]area 0
[AR1-ospf-10-area-0.0.0.0]network 10.1.12.0 0.0.0.255
[AR1-ospf-10-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[AR1-ospf-10-area-0.0.0.0]qui
[AR1-ospf-10]
[AR2]ospf 10 router-id 2.2.2.2
[AR2-ospf-10]area 0
[AR2-ospf-10-area-0.0.0.0]network 10.1.12.0 0.0.0.255
[AR2-ospf-10-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[AR2-ospf-10-area-0.0.0.0]network 10.1.23.0 0.0.0.255
[AR2-ospf-10-area-0.0.0.0]qui
[AR2-ospf-10]
[AR3]ospf 10 router-id 3.3.3.3
[AR3-ospf-10]area 0
[AR3-ospf-10-area-0.0.0.0]network 10.1.23.0 0.0.0.255
[AR3-ospf-10-area-0.0.0.0]network 3.3.3.3 0.0.0.0
[AR3-ospf-10-area-0.0.0.0]qui
[AR3-ospf-10]
3.AS 200配置域内路由互通。
[AR4]ospf 10 router-id 4.4.4.4
[AR4-ospf-10]area 0
[AR4-ospf-10-area-0.0.0.0]network 10.1.45.0 0.0.0.255
[AR4-ospf-10-area-0.0.0.0]network 4.4.4.4 0.0.0.0
[AR4-ospf-10-area-0.0.0.0]quit
[AR4-ospf-10]
[AR5]ospf 10 router-id 5.5.5.5
[AR5-ospf-10]area 0
[AR5-ospf-10-area-0.0.0.0]network 10.1.45.0 0.0.0.255
[AR5-ospf-10-area-0.0.0.0]network 5.5.5.5 0.0.0.0
[AR5-ospf-10-area-0.0.0.0]network 10.1.56.0 0.0.0.255
[AR5-ospf-10-area-0.0.0.0]quit
[AR5-ospf-10]
[AR6]ospf 10 router-id 6.6.6.6
[AR6-ospf-10]area 0
[AR6-ospf-10-area-0.0.0.0]network 10.1.56.0 0.0.0.255
[AR6-ospf-10-area-0.0.0.0]network 6.6.6.6 0.0.0.0
[AR6-ospf-10-area-0.0.0.0]qui
[AR6-ospf-10]
4.AS 100配置公网标签分配。
[AR1]mpls lsr-id 1.1.1.1
[AR1]mpls
Info: Mpls starting, please wait... OK!
[AR1-mpls]mpls ldp
[AR1-mpls-ldp]qui
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]mpls
[AR1-GigabitEthernet0/0/0]mpls ldp
[AR1-GigabitEthernet0/0/0]qui
[AR1]
[AR2]mpls lsr-id 2.2.2.2
[AR2]mpls
[AR2-mpls]mpls ldp
[AR2-mpls-ldp]quit
[AR2]interface GigabitEthernet 0/0/0
[AR2-GigabitEthernet0/0/0]mpls
[AR2-GigabitEthernet0/0/0]mpls ldp
[AR2-GigabitEthernet0/0/0]quit
[AR2]interface GigabitEthernet 0/0/1
[AR2-GigabitEthernet0/0/1]mpls
[AR2-GigabitEthernet0/0/1]mpls ldp
[AR2-GigabitEthernet0/0/1]quit
[AR2]
[AR3]mpls lsr-id 3.3.3.3
[AR3]mpls
Info: Mpls starting, please wait... OK!
[AR3-mpls]mpls ldp
[AR3-mpls-ldp]quit
[AR3]interface GigabitEthernet 0/0/1
[AR3-GigabitEthernet0/0/1]mpls
[AR3-GigabitEthernet0/0/1]mpls ldp
[AR3-GigabitEthernet0/0/1]quit
[AR3]
5.AS 200配置公网标签分配。
[AR4]mpls lsr-id 4.4.4.4
[AR4]mpls
Info: Mpls starting, please wait... OK!
[AR4-mpls]mpls ldp
[AR4-mpls-ldp]quit
[AR4]interface GigabitEthernet 0/0/1
[AR4-GigabitEthernet0/0/1]mpls
[AR4-GigabitEthernet0/0/1]mpls ldp
[AR4-GigabitEthernet0/0/1]quit
[AR4]
[AR5]mpls lsr-id 5.5.5.5
[AR5]mpls
Info: Mpls starting, please wait... OK!
[AR5-mpls]mpls ldp
[AR5-mpls-ldp]quit
[AR5]interface GigabitEthernet 0/0/1
[AR5-GigabitEthernet0/0/1]mpls
[AR5-GigabitEthernet0/0/1]mpls ldp
[AR5-GigabitEthernet0/0/1]quit
[AR5]interface GigabitEthernet 0/0/0
[AR5-GigabitEthernet0/0/0]mpls
[AR5-GigabitEthernet0/0/0]mpls ldp
[AR5-GigabitEthernet0/0/0]quit
[AR5]
[AR6]mpls lsr-id 6.6.6.6
[AR6]mpls
Info: Mpls starting, please wait... OK!
[AR6-mpls]mpls ldp
[AR6-mpls-ldp]quit
[AR6]interface GigabitEthernet 0/0/0
[AR6-GigabitEthernet0/0/0]mpls
[AR6-GigabitEthernet0/0/0]mpls ldp
[AR6-GigabitEthernet0/0/0]quit
[AR6]
6.在PE1和PE2设备创建VPN实例,接口关联VPN实例。
[AR1]ip vpn-instance VPN1
[AR1-vpn-instance-VPN1]route-distinguisher 100:1
[AR1-vpn-instance-VPN1-af-ipv4]vpn-target 10:1
[AR1-vpn-instance-VPN1-af-ipv4]qui
[AR1-vpn-instance-VPN1]qui
[AR1]interface GigabitEthernet 0/0/2
[AR1-GigabitEthernet0/0/2]ip binding vpn-instance VPN1
[AR1-GigabitEthernet0/0/2]ip address 192.168.10.100 24
[AR1-GigabitEthernet0/0/2]qui
[AR1]ip vpn-instance VPN2
[AR1-vpn-instance-VPN2]route-distinguisher 200:1
[AR1-vpn-instance-VPN2-af-ipv4]vpn-target 20:1
[AR1-vpn-instance-VPN2-af-ipv4]qui
[AR1-vpn-instance-VPN2]qui
[AR1]interface GigabitEthernet 0/0/1
[AR1-GigabitEthernet0/0/1]ip binding vpn-instance VPN2
[AR1-GigabitEthernet0/0/1]ip address 172.16.10.100 24
[AR1-GigabitEthernet0/0/1]qui
[AR1]
[AR6]ip vpn-instance VPN1
[AR6-vpn-instance-VPN1]route