功能简介:

Option A和OptionB 两种方式都能够满足跨域VPN的组网需求,这两种方式的一个共同点就是ASBR 都需要参与VPN路由的维护和发布。当每个自治域内都有大量的跨域 VPN路由需要通告,ASBR 就可能成为阻碍网络进一步扩展的瓶颈。为了解决上述扩展性问题,提出了第三种解决方案:多跳MP-EBGP。多跳MP-EBGP 是指在跨域的情况下,不同自治域的PE之间建立多跳的MP-EBGP 会话,直接交互VPN路由,这种方式就不需要ASBR维护和分发VPN路由

 

Option C技术的关键技术点

1、多跳MP-EBGP邻居(PE之间或RR之间)的建立:需要将相应的Loopback地址通告给对端AS

2、顶层公网标签的分配:需要在源PE和目的PE之间存在一条完整的顶层公网标签LSP

3、ASBR之间建立IPv4单播地址簇的EBGP邻居关系

4、通过RT的配置,使PE相互之间学习到相应的VPNv4前缀

 

Option C技术的优势:

需要ASBR承载的路由信息少

Option C技术的劣势:

配置较为复杂

 

 

一、组网需求

1、拓扑中的CE1,CE2分别用一台交换机用MCE技术进行模拟;

2、要求实现跨域的MPLS/VPN访问,即实现VPN-A的1.1.1.1和7.7.7.7互通,VPN-B的11.11.11.11和77.77.77.77互通;

3、该拓扑中在ASBR1 和ASBR2之间没有建立MP-BGP关系

4、RR(SW3)和PE2(SW6)之间建立MP-BGP关系,RR(SW3)与ASBR1(SW4)建立MP-BGP,ASBR1(SW4)与ASBR2(SW5)之间建立IPV4的BGP关ASBR2(SW5)与PE2(SW6)建立IPV4的BGP关系

 

二、组网拓扑

     

 

 

三、配置要点

1、部署AS核心的IGP路由协议

2、部署AS核心的MPLS

1)全局开启MPLS转发功能

2)全局开启LDP标签分发协议

3)开启接口的标签交换能力

4)接口下开启LDP协议

3、部署PE-PE的MP-BGP协议

1)启用BGP进程

2)进入VPNV4地址簇下激活VPNV4邻居关系

3)配置路由反射器RR

4、部署PE-CE的路由协议

1)创建VRF实例

2)将相关接口划入对应的VRF实例中

3)配置PE-CE的路由协议

5、将CE的路由重发布进MP-BGP

6、将MP-BGP的路由重发布进CE

----->到第6步为止,是完整的域内VPN配置

7、跨域option C模式部署

1)ASBR间建立EBGP邻居

a)开启send-label标签分发功能

b)通告PE的loopback网段

2)跨域PE建立MP-EBGP多跳邻居

a)配置ebgp-multihop

b)配置next-hop-unchanged

3)ASBR将跨域PE的loopback网段从发布进IGP

 

关于各产品支持的VRF数量说明如下:

(一)10.X软件平台设备说明:

1、如果是S12000交换机组网的话,EA:2000,DA:1000,如果两者混插整机降为1000

2、如果是S86交换机,EA线卡不支持VRF,可以搭配M8600-MPLS线卡,支持254个VRF,版本采用10.4(3b7)p1;

   如果全部是EB:63,版本采用10.4(3b17)p5;

   如果是EA+EB的话可以搭配M8600-MPLS线卡,支持254个VRF,版本采用10.4(3b7)p1;

   如果全部是EC:2000,版本采用10.4(3b17)p5;

   如果是EB+EC:63个VRF,推荐10.4(3b17)p5;

   另外以上组合如果有搭配防火墙卡使用的话,S12000必须采用v2.0的RG-WALL1600-B-DE,如果采用RG-WALL1600-B-DC整机将不支持分布式MPLS,不支持VRF;S86交换机必须采用v2.0的RG-WALL1600-B-E防火墙卡,如果采用M8600-FW整机将不支持分布式MPLS,不支持VRF。

3、S6000系列,S5750-E/P/S系列交换机都支持255个VRF,推荐版本10.4(3b16)p2。

 

(二)11.X软件平台设备说明:

关于各产品支持的VRF数量说明如下:

 如果全部是ED卡:2000;

 如果全部是EF卡:1000;

 如果全部是DB卡:500;

 如果全部是CB卡:2000;

 如果两者混插,以容量低的为准,例如ED+EF卡,VRF数量为1000。CB卡不能与其他卡混插。

 11x防火墙卡插入设备,整机MPLS正常使用。

 

四、配置步骤

这个option C案例中,由于有RR设备的存在,PE设备与RR需要建立MP-IBGP关系,因此第1步--第6步,是配置域内VPN,参考跨域option A章节的前6步

7、跨域option C模式的部署

1)ASBR间建立EBGP邻居关系(SW4,SW5)

SW4:

router bgp 100

 neighbor 45.4.4.5 remote-as 200

 !

 address-family ipv4

 neighbor 45.4.4.5 activate                         ----->ASBR建立EBGP邻居,为了传递PE的loopback地址网段路由

 neighbor 45.4.4.5 send-label                     ----->为PE的loopback地址网段路由分发标签

 network 2.2.2.2 mask 255.255.255.255     ----->通告本域内的PE设备loopback地址网段

 

SW5:

router bgp 200

 neighbor 45.4.4.4 remote-as 100

 !

 address-family ipv4

 neighbor 45.4.4.4 activate                         ----->ASBR建立EBGP邻居,为了传递PE的loopback地址网段路由

 neighbor 45.4.4.4 send-label                     ----->为PE的loopback地址网段路由分发标签

 network 6.6.6.6 mask 255.255.255.255     ----->通告本域内的PE设备loopback地址网段

 

2)跨域PE建立MP-EBGP多跳邻居(SW3是RR设备,以SW3为例)

SW3:

router bgp 100

 neighbor 6.6.6.6 remote-as 200

 neighbor 6.6.6.6 ebgp-multihop 255         ----->SW3与SW6之间建立跨AS的多跳MP-EBGP邻居关系,需要配置多跳。

 neighbor 6.6.6.6 update-source Loopback 0

 !

 address-family vpnv4 unicast

  neighbor 6.6.6.6 activate

 neighbor 6.6.6.6 next-hop-unchanged     ----->从EBGP学习到的路由传递给IBGP时下一跳会改变。这里SW3作为RR,不希望改变下一跳

 neighbor 6.6.6.6 send-community extended

 exit-address-family

 

SW6:

  router bgp 200

  neighbor 3.3.3.3 remote-as 100

  neighbor 3.3.3.3 ebgp-multihop 255     ----->SW3与SW6之间建立跨AS的多跳MP-EBGP邻居关系,需要配置多跳。

   neighbor 3.3.3.3 update-source Loopback 0

   !

  address-family vpnv4 unicast

  neighbor 3.3.3.3 activate

 neighbor 3.3.3.3 next-hop-unchanged    ----->从EBGP学习到的路由传递给IBGP时下一跳会改变,不改变下一跳

  neighbor 3.3.3.3 send-community extended

  exit-address-family

 

3)ASBR将跨域PE的loopback网段重发布进IGP

a)抓取mpls-label标记的路由

route-map LABEL permit 10

 match mpls-label

b)将此路由重分布进IGP

SW4:

router rip

 version 2

 passive-interface GigabitEthernet 4/45

 network 4.0.0.0

 network 34.0.0.0

 no auto-summary

 redistribute bgp metric 1 route-map LABEL

----->这里为了精确控制,调用了route-map;如果不需要精确控制,直接重发布即可。

SW5:

router rip

 version 2

 passive-interface GigabitEthernet 5/45

 network 5.0.0.0

 network 56.0.0.0

 no auto-summary

 redistribute bgp metric 1 route-map LABEL

 

五、功能验证

1、通过Ping测试VPN间的路由连通性:

MCE1#ping vrf VPN-A 7.7.7.7 sou 1.1.1.1

Sending 5, 100-byte ICMP Echoes to 7.7.7.7, timeout is 2 seconds:

  < press Ctrl+C to break >

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 10/10/10 ms

MCE1#ping vrf VPN-B 77.77.77.77 sou 11.11.11.11

Sending 5, 100-byte ICMP Echoes to 77.77.77.77, timeout is 2 seconds:

  < press Ctrl+C to break >

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 10/10/10 ms

2、通过Traceroute测试路径:

MCE1#traceroute vrf VPN-A 7.7.7.7  source 1.1.1.1

  < press Ctrl+C to break >

Tracing the route to 7.7.7.7

 

 1    12.1.1.2 0 msec 0 msec 0 msec

 2    *    *    *

 3    *    *    *

 4    *    *    *

 5    56.5.5.6 0 msec 0 msec 0 msec

 6    7.7.7.7 10 msec 10 msec 10 msec

MCE1#traceroute vrf VPN-B 77.77.77.77 source 11.11.11.11

  < press Ctrl+C to break >

Tracing the route to 77.77.77.77

 

 1    21.1.1.2 0 msec 0 msec 10 msec

 2    *    *    *

 3    *    *    *

 4    *    *    *

 5    56.5.5.6 0 msec 0 msec 0 msec

 6    77.77.77.77 10 msec 10 msec 10 msec

 

3、LSP ping测试:

SW2#ping mpls ipv4 4.4.4.4/32

Sending 5, 84-byte MPLS Echoes to 4.4.4.4/32,

     timeout is 2 seconds, send interval is 0 msec:

 

Codes: '!' - success, 'Q' - request not sent, '.' - timeout,

  'L' - labeled output interface, 'B' - unlabeled output interface,

  'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,

  'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry,

  'P' - no rx intf label prot, 'p' - premature termination of LSP,

  'R' - transit router, 'I' - unknown upstream index,

  'X' - unknown return code, 'x' - return code 0

 

Press Ctrl+C to break.

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/6/10 ms

4、LSP traceroute测试

SW2#traceroute mpls ipv4 4.4.4.4/32

Tracing MPLS Label Switched Path to 4.4.4.4/32, timeout is 2 seconds

 

Codes: '!' - success, 'Q' - request not sent, '.' - timeout,

  'L' - labeled output interface, 'B' - unlabeled output interface,

  'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,

  'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry,

  'P' - no rx intf label prot, 'p' - premature termination of LSP,

  'R' - transit router, 'I' - unknown upstream index,

  'X' - unknown return code, 'x' - return code 0

 

Press Ctrl+C to break.

  0 23.2.2.2        MRU 1500 [Labels: 1025 Exp: 0]

L 1 23.2.2.3        MRU 1500 [Labels: implicit-null Exp: 0] <1 ms

! 2 34.3.3.4        <1 ms