其他分享
首页 > 其他分享> > HCIE-RS认证 Lab实验考试 | 搭建一个可靠的HUB and SPOKE 网络

HCIE-RS认证 Lab实验考试 | 搭建一个可靠的HUB and SPOKE 网络

作者:互联网

Hub and Spoke组网是基本的MP-BGP ***网络的一种,通过在***中设置中心站点,要求其他站点的互访都必须通过中心站点来进行,以实现对站点间通信的集中控制;在银行网络、物流网络中应用广泛。

 

本实验是根据HCIE-RS认证LAB实验中的一个小节修改过来的,其需求如下:

合理设置***参数,使得Spoke站点互访的流量必须经过Hub-CE设备。当HUBCE-HUB PE链路断开的情况下,HUB PE仍然可以学习到HUB CE的业务路由。

 

我们先搭建一个如下图所示的网络拓扑,图中路由器角色已经标识:


图片
第一步:搭建骨干MPLS ***网络1.1.1、     配置接口IP地址,运行ISIS路由协议,实现骨干网络内路由互通

[HUB PE1] int g0/0/0

[HUB PE1-GigabitEthernet0/0/0]ip address10.0.13.1 255.255.255.0

[HUB PE1-GigabitEthernet0/0/0]int g0/0/2

[HUB PE1-GigabitEthernet0/0/2] ip address10.0.12.1 255.255.255.0

[HUB PE1-GigabitEthernet0/0/2]int l0

[HUB PE1-LoopBack0] ip address 1.1.1.1255.255.255.255

[HUB PE1]isis

[HUB PE1-isis-1] is-levellevel-2

[HUB PE1-isis-1]network-entity 49.0010.0100.1001.00

[HUB PE1-GigabitEthernet0/0/0] isis enable1

[HUB PE1-GigabitEthernet0/0/2] isis enable1

[HUB PE1-LoopBack0] isis enable 1


其他路由器的配置与HUB PE1的配置相似,接口IP均为10.0.XY.X/Y(X、Y为路由器loopback地址的首数字)

1.1.2、     配置MPLS及LDP协议

[HUB PE1] mpls lsr-id 1.1.1.1

[HUB PE1]mpls

[HUB PE1-mpls]mpls ldp

[HUB PE1]int g0/0/0

[HUB PE1-GigabitEthernet0/0/0] mpls

[HUB PE1-GigabitEthernet0/0/0] mpls ldp

[HUB PE1-GigabitEthernet0/0/2] mpls

[HUB PE1-GigabitEthernet0/0/2] mpls ldp


其他路由器如法炮制。




1.1.3、     配置BGP,在骨干路由器之间建立IBGP连接,构建MP-BGP ***网络

如图所示,路由器1、2、4、5均为PE设备,3为网络中的反射器,所有PE设备均与RR建立BGP对等体。



[HUB PE1]bgp 100

[HUB PE1-bgp] peer 3.3.3.3 as-number 100

[HUB PE1-bgp] peer 3.3.3.3connect-interface LoopBack0

[HUB PE1-bgp]  peer 3.3.3.3 next-hop-local

[HUB PE1-bgp]ipv4-family ***v4

[HUB PE1-bgp-af-***v4]  peer 3.3.3.3 enable


[RR]bgp 100

[RR-bgp] peer 1.1.1.1 as-number 100

[RR-bgp] peer 1.1.1.1 connect-interface LoopBack0

[RR-bgp] peer 2.2.2.2 as-number 100

[RR-bgp] peer 2.2.2.2 connect-interface LoopBack0

[RR-bgp] peer 4.4.4.4 as-number 100

[RR-bgp] peer 4.4.4.4 connect-interface LoopBack0

[RR-bgp] peer 5.5.5.5 as-number 100

[RR-bgp] peer 5.5.5.5 connect-interface LoopBack0

[RR-bgp]ipv4-family ***v4

[RR-bgp-af-***v4] undo policy ***-target 

[RR-bgp-af-***v4]  peer 1.1.1.1 enable

[RR-bgp-af-***v4]  peer 1.1.1.1 reflect-client

[RR-bgp-af-***v4]  peer 2.2.2.2 enable

[RR-bgp-af-***v4]  peer 2.2.2.2 reflect-client

[RR-bgp-af-***v4]  peer 4.4.4.4 enable

[RR-bgp-af-***v4]  peer 4.4.4.4 reflect-client

[RR-bgp-af-***v4]  peer 5.5.5.5 enable

[RR-bgp-af-***v4]  peer 5.5.5.5 reflect-client


至此,骨干网络全部配置完成,可在RR上查看BGP对等体是否建立成功。


[RR]dis bgp peer
图片

可以观察到所有邻居关系均以达到established的关系,说明邻居关系建立成功。

 

第二步:在PE上创建***-instance,并与相应的接口绑定

2.1、在SPOKE PE1上配置***实例并绑定到接口


[SPOKE PE1]ip ***-instance spoke1

[SPOKE PE1-***-instance-spoke1]ipv4-family

[SPOKE PE1-***-instance-spoke1-af-ipv4]route-distinguisher100:4

[SPOKEPE1-***-instance-spoke1-af-ipv4]***-target 100:4 export-extcommunity    #配置为spoke的出方向RT

[SPOKEPE1-***-instance-spoke1-af-ipv4]***-target 100:1 100:2 import-extcommunity    #配置为hub的出方向RT

[SPOKE PE1]int g0/0/1

[SPOKE PE1-GigabitEthernet0/0/1] ip binding***-instance spoke1

[SPOKE PE1-GigabitEthernet0/0/1] ip address10.0.48.4 255.255.255.0



2.2、在SPOKE PE2上配置***实例并绑定到接口

[SPOKE PE2]ip ***-instance spoke2

[SPOKE PE2-***-instance-spoke2]ipv4-family

[SPOKEPE2-***-instance-spoke2-af-ipv4]route-distinguisher 100:5

[SPOKEPE2-***-instance-spoke2-af-ipv4]***-target 100:5 export-extcommunity

[SPOKEPE2-***-instance-spoke2-af-ipv4]***-target 100:1 100:2 import-extcommunity

[SPOKE PE2]int g0/0/1

[SPOKE PE2-GigabitEthernet0/0/1] ip binding***-instance spoke2

[SPOKE PE2-GigabitEthernet0/0/1] ip address10.0.59.5 255.255.255.0


2.3、在HUB PE1上配置***实例并绑定到接口按照hub and spoke的建立方式,需要在PE和CE之间分别进行收发***路由,因此将在PE的GE0/0/1接口上建立两个子接口,分别绑定两个的***实例。另外,由于在HUB-PE和HUB-CE之间运行的是BGP协议,根据BGP的防环规则,当AS-path中已经含有当前区域的AS号时,将步接收该路由,因此在PE的BGP实例视图下,需要配置allow-as-loop命令,防止经CE发出的路由被丢弃。

[HUB PE1]ip ***-instance hubin

[HUB PE1-***-instance-hubin]ipv4-family

[HUB PE1-***-instance-hubin-af-ipv4]route-distinguisher 100:1

[HUB PE1-***-instance-hubin-af-ipv4]***-target100:4 100:5 import-extcommunity

[HUB PE1]ip ***-instance hubout

[HUB PE1-***-instance-hubout]ipv4-family

[HUBPE1-***-instance-hubout-af-ipv4]route-distinguisher 100:11

[HUBPE1-***-instance-hubout-af-ipv4]***-target 100:1 export-extcommunity

[HUB PE1]int g0/0/1.1

[HUBPE1-GigabitEthernet0/0/1.1] ip binding ***-instance hubin

[HUBPE1-GigabitEthernet0/0/1.1] dot1q termination vid 1

[HUBPE1-GigabitEthernet0/0/1.1] arp broadcast enable

[HUBPE1-GigabitEthernet0/0/1.1] ip address 10.1.6.1 255.255.255.0

[HUBPE1-GigabitEthernet0/0/1.1]int g0/0/1.2

[HUBPE1-GigabitEthernet0/0/1.2] ip binding ***-instance hubout

[HUBPE1-GigabitEthernet0/0/1.2] ip address 10.6.1.1 255.255.255.0

[HUBPE1-GigabitEthernet0/0/1.2] dot1q termination vid 2

[HUBPE1-GigabitEthernet0/0/1.2] arp broadcast enable

[HUB PE2]ip ***-instancehubin

[HUBPE2-***-instance-hubin]ipv4-family

[HUBPE2-***-instance-hubin-af-ipv4]route-distinguisher 100:2

[HUBPE2-***-instance-hubin-af-ipv4]***-target 100:4 100:5 import-extcommunity

[HUB PE2]ip ***-instance  hubout

[HUBPE2-***-instance-hubout]ipv4-family

[HUBPE2-***-instance-hubout-af-ipv4]route-distinguisher 100:22

[HUBPE2-***-instance-hubout-af-ipv4]***-target 100:2 export-extcommunity

[HUB PE2]int g0/0/1.1

[HUBPE2-GigabitEthernet0/0/1.1] ip binding ***-instance hubin

[HUBPE2-GigabitEthernet0/0/1.1] ip address 10.2.7.2 255.255.255.0

[HUBPE2-GigabitEthernet0/0/1.1] dot1q termination vid 1

[HUBPE2-GigabitEthernet0/0/1.1]int g0/0/1.2

[HUB PE2-GigabitEthernet0/0/1.2]ip binding ***-instance hubout

[HUBPE2-GigabitEthernet0/0/1.2] ip address 10.7.2.2 255.255.255.0

[HUBPE2-GigabitEthernet0/0/1.2] dot1q termination vid 2

[HUBPE2-GigabitEthernet0/0/1.2] arp broadcast enable


至此hub and spoke模型已经配置完成,但是在实验需求中提到:当HUB CE-HUB PE链路断开的情况下,HUB PE仍然可以学习到HUB CE的业务路由。根据***实例接收***路由的思路,我们很容易想到,在两台HUB PE上的hubin实例里的入方向RT里配置对方的出方向RT即可,因此,可在HUB PE1和HUB PE2的***实例中增加如下配置:

[HUB PE2-***-instance-hubin]***-target100:1 import-extcommunity

[HUB PE1-***-instance-hubin]***-target100:2 import-extcommunity


第三步:配置PE与CE之间的路由协议,并将私有网段引入到bgp中;在本实验中,SPOKE PE和CE之间采用OSPF,HUB PE和CE之间采用bgp的方式

[SPOKE PE1]ospf 1***-instance spoke1

[SPOKE PE1-ospf-1] area 0

[SPOKEPE1-ospf-1-area-0.0.0.0] network 10.0.48.0 0.0.0.25


在BGP ***实例中引入客户路由

[SPOKE PE1]bgp 100

[SPOKE PE1-bgp]ipv4-family***-instance spoke1

[SPOKEPE1-bgp-spoke1]import-route ospf 1


将BGP路由引入VRF,在此不再进行路由过滤的动作了

[SPOKE PE2]ospf

[SPOKEPE2-ospf-1]import-route bgp



[SPOKE CE1]ospf 1

[SPOKE CE1-ospf-1]area 0

[SPOKE CE1-ospf-1-area-0.0.0.0]network 10.0.48.0 0.0.0.255

[SPOKECE1-ospf-1-area-0.0.0.0] network 8.8.8.8 0.0.0.0


同理,SPOKE站点2也进行同样的配置:

[SPOKE PE2]ospf 1***-instance spoke2

[SPOKEPE2-ospf-1]area 0

[SPOKEPE2-ospf-1-area-0.0.0.0]network 10.0.59.0 0.0.0.255

[SPOKE PE2]bgp 100

[SPOKE PE2-bgp]ipv4-family***-instance spoke2

[SPOKEPE2-bgp-spoke2]import-route ospf 1

[SPOKE PE2]ospf

[SPOKEPE2-ospf-1]import-route bgp



[SPOKE CE2]ospf

[SPOKE CE2-ospf-1]area 0

[SPOKECE2-ospf-1-area-0.0.0.0]network 10.0.59.0 0.0.0.255

[SPOKECE2-ospf-1-area-0.0.0.0]network 9.9.9.9 0.0.0.0


 在HUB PE和HUB CE之间配置BGP,之前在第二步时已经将接口与***进行了绑定,因此第三步在PE上的配置只需要指定对等体即可

[HUB PE1]bgp 100

[HUB PE1-bgp] ipv4-family***-instance hubin

[HUB PE1-bgp-hubin]  peer 10.1.6.6 as-number 65535


在CE上配置子接口并配置IP地址,运行BGP协议,AS号为655535


[HUB CE1]int g0/0/0.1

[HUB CE1-GigabitEthernet0/0/0.1]ip address 10.1.6.6 255.255.255.0

[HUB CE1-GigabitEthernet0/0/0.1]dot1q termination vid 1

[HUB CE1-GigabitEthernet0/0/0.1]arp broadcast enable

[HUB CE1-GigabitEthernet0/0/0.2]ipaddress 10.6.1.6 255.255.255.0

[HUB CE1-GigabitEthernet0/0/0.2]dot1q termination vid 2

[HUB CE1-GigabitEthernet0/0/0.2]arp broadcast enable


[HUB CE1]bgp 65535

[HUB CE1-bgp]peer 10.1.6.1as-number 100

[HUB CE1-bgp] peer 10.6.1.1as-number 100


HUB PE2与HUB CE2的配置与此相同,在此不在详述。

在HUB PE上查看***实例路由是否传递正常:图片图片

可以看到,分部的路由已经全部进入到总部的***实例中

第四步,在总部配置OSPF,实现总部内路由互通


[HUB CE1]ospf

[HUB CE1-ospf-1]ar 0

[HUB CE1-ospf-1-area-0.0.0.0] network 6.6.6.60.0.0.0

[HUBCE1-ospf-1-area-0.0.0.0]  network10.0.67.0 0.0.0.255



[HUB CE2]ospf

[HUB CE2-ospf-1]area 0

[HUB CE2-ospf-1-area-0.0.0.0]network 7.7.7.7 0.0.0.0

[HUB CE2-ospf-1-area-0.0.0.0]network 10.0.67.0 0.0.0.255


总部路由协议配置完成,查看邻居建立情况及路由表信息,确认配置正确图片图片图片可以看到邻居关系已经FULL以及对方环回口IP,因此配置正确此时,在HUB CE1和HUB CE2上需要进行双点双向的路由引入,及将总部的私网路由引入到BGP中,将BGP中的分部私网路由引入总部

[HUB CE1]ospf

[HUB CE1-ospf-1]import-routebgp

[HUB CE1]bgp 65535

[HUB CE1-bgp]import-routeospf 1


[HUB CE2]ospf

[HUB CE2-ospf-1]import-routebgp

[HUB CE2]bgp 65535

[HUB CE2-bgp]import-routeospf 1




查看CE上的路由信息:图片图片

可以在CE2上看到路由是存在次优路径的,这是因为EBGP路由的优先级为255,而OSPF外部路由的优先级为150,因此路由器会选择优先级值小的,从而出现次优路径。

我们可以通过修改CE上BGP路由的优先级来消除次优路径问题:


[HUB CE2]bgp 65535

[HUB CE2-bgp]preference 149255 255


同时,CE1上也需要修改



[HUB CE1]bgp 65535

[HUB CE1-bgp]preference 149255 255


再次查看路由表图片图片可以看到,路由环路已经消除 然后,我们来验证一下实验的效果首先验证HUB and SPOKE的模型是否建立成功,验证方式为:在SPOKE-CE1上ping测SPOKE CE2的环回口,在HUB CE1的GE0/0/0接口抓包,看数据是否经过了总部转发
图片

可以看到,从8.8.8.8可以ping通9.9.9.9,再跟踪一下数据包的转发路径



可以看到,路由经过了HUB PE1到HUB CE1,再从HUB CE1绕回到HUB PE1,最后在在HUB CE1的GE0/0/0接口抓包:

图片
可以看到,所有的请求和回复报文均已经经过了总部节点,说明模型建立成功。
我们在验证一下实验的要求,也就是当HUB CE-HUB PE链路断开的情况下,HUB PE仍然可以学习到HUB CE的业务路由。我先将HUB CE1的GE0/0/0接口shutdown,在HUB PE1上查看***路由是否还存在HUB CE的路由
图片同理,我们如果将HUB CE2的GE0/0/0接口shutdown,也可以在HUB PE2上看到同样的现象,说明这个要求达到了 碎碎念:最后一步我们也可以直接做默认路由来访问分部,只需将总部路由引入到BGP即可,但本人在实验的时候突然向到了前一次的双点双向引入,就想何不再试一次双点向~~  最后,回答一下上期中评论区里的问题:
图片

双点双向路由引入案例



1、对于AR3上路由策略调用IP前缀列表时出现的错误,原因是本来之前在AR6上配置的环回口IP为6.6.6.x/32的网段,后来一想,这样挺没难度的,就改为了1.1.1.3和1.1.1.4,因此之前配置的2号IP前缀列表就这样做进word了,这是没有修改彻底的原因,对实验结果没有影响2、用的什么模拟器???这还用说吗??好吧~eNSP3、除了打tag,其他的方法比较麻烦,不推荐,这是路由极少的情况,如果逐条其匹配路由,那工作量反而极大4、双点双向什么时候能用到?所有需要保证物理网络可靠性的地方都能用。


标签:SPOKE,HUB,RS,0.0,GigabitEthernet0,PE1,bgp,instance
来源: https://blog.51cto.com/u_15127557/2701540