BGP/MPLS实验

≡放荡痞女 提交于 2020-02-26 00:48:43

目录

        拓扑设计

       拓扑搭建

       配置

             底层

             路由

             策略

  测试

一、拓扑设计

     1.实验要求

  2.ip 地址规划

172.16.0.0/30骨干

172.16.1.0/32环回1

172.16.2.0/24用户网段

~~~~~

172.16.7.0/24用户网段

二、拓扑搭建

  

三、 配置

 1.底层

   查看底层IP

 2.路由

1)AS2区域路由----IGP,以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.0.0  0.0.255.255

查看邻居表:

测试AS2内部路由:

2)修改网络类型

查看修改前的路由表:

  

通过上图可以看出模拟用户网段的掩码是/32位,本实验规划其为/24位,因此修改网络类型,避免影响后期的宣告。(AS2内的所有路由器模拟用户网段都要修改)

[r2]interface  LoopBack    2

 [r2-LoopBack2]ospf  network-type    broadcast

查看修改后的路由表:

3)运行BGP,R2/R1为例:

R1:

[r1]bgp 1 

[r1-bgp]router-id   1.1.1.1

[r1-bgp]peer   12.1.1.2  as-number  2

[r1-bgp]peer   15.1.1.2  as-number 2

R2:

[r2]BGP 2

 [r2-bgp]router-id  172.16.1.2

 [r2-bgp]peer   12.1.1.1   as-number  1

 [r2-bgp]peer   172.16.1.5  as-number   2

 [r2-bgp]peer    172.16.1.5   connect-interface   LoopBack  1

 [r2-bgp]peer   172.16.1.4  as-number  2

 [r2-bgp]peer   172.16.1.4  connect-interface   LoopBack  1

[r2-bgp]peer   172.16.1.7  as-number  2

[r2-bgp]peer   172.16.1.7   connect-interface   LoopBack  1

查看BGP表:

4)宣告BGP路由.

[r1]bgp 1

 [r1-bgp]network  1.1.1.0 24

查看BGP路由表;

R1:

R5:

R7:

R7的1.../24路由不优,是因为IBGP水平分割,其下一跳不可达,所以修改R2/R5的下一跳。(R5同步)

[r2-bgp]peer    172.16.1.7  next-hop-local

[r2-bgp]peer   172.16.1.5  next-hop-local    //防止R1至R5的链路断开,让R2和R5成为IBGP关系,导致路由不传递。

查看R7bgp路由表:

R8:

[r8]bgp  3

[r8-bgp]network   8.8.8.0  24

同样修改R7的下一跳:

[r7-bgp]peer   172.16.1.2  next-hop-local

[r7-bgp]peer  172.16.1.5  next-hop-local

查看R1bgp路由表:

测试:

因为BGP路由黑洞,导致数据层面路由无法查询目标网段。解决bgp路由黑洞,使用MPLS协议。本实验构建mpls域,即AS2区域为MPLS区域。然后所有AS2区域的路由器开启mpls协议。具体配置如下:

R2为例:配置MPLS – LDP

[r2]mpls   lsr-id   172.16.1.2  //必须先定义mpls的router-id,要为本地设备的真实ip地址,且邻居可达

[r2]mpls  // 开启mpls协议

[r2-mpls]mpls   ldp    //再激活LDP协议mpl

[r2-mpls-ldp]q

[r2]interface  GigabitEthernet   0/0/1  //之后需要在所有标签经过的接口上开启协议

[r2-GigabitEthernet0/0/1]mpls

[r2-GigabitEthernet0/0/1]mpls   ldp

当启动配置完成后,邻居间使用UDP报文组播收发hello包;之后基于hello包中的router-id地址进行TCP会话的建立;

查看mpls邻居:

mpls邻居关系建立,默认会生成三张表

FIB表:

LIB表,华为基于32位主机路由,生成标签号,存于LIB表中,之后邻居间共享LIB表

最后路由器将LIB和FIB集合,生成最佳路径的标签转发规则—LFIB

注:默认华为仅针对32位主机路由分配标签

测试结果:

原因:华为设备默认不为BGP协议执行下一跳标签机制,cisco默认执行;

华为设备需要开启,路由基于隧道进行递归查找。 

 [r2]route recursive-lookup   tunnel    //开启下一跳标签服务,ebgp设备均需操作。

AS2bgp路由宣告,R2/R5/R7相同操作。

[r2]ip  route-static  172.16.0.0 21  NULL  0

 [r2-bgp]network  172.16.0.0 21

测试:

R8/R1访问AS2其他未启用BGP协议路由器,测试不成功因为数据包有去无回,所以写静态缺省至ebgp设备,让其再通过bgp协议转发,具体如下操作。

[r3]ip route-static  0.0.0.0 0  172.16.0.1

[r4]ip route-static  0.0.0.0 0  172.16.0.10

[r6]ip route-static 0.0.0.0 0   172.16.0.21

测试:

3. 策略

1)宣告明细路由。

 [r2]bgp 2

 [r2-bgp]network  172.16.2.0 24

[r2-bgp]network 172.16.3.0 24

[r2-bgp]network 172.16.4.0 24

[r5]bgp 2

 [r5-bgp]network  172.16.5.0  24

[r5-bgp]network 172.16.6.0 24

[r5-bgp]network 172.16.7.0 24

根据题设要求,R1medR5访问R2/R3/R4,由上图可知,R1R2走直连,为什么?因为bgp选路规则,优选Router_ID最小的路由器发布的路由R3/R4的路由通过R5走,因为通过R2走带度量值,也称BGPMDE,R5收敛R3/R4路由,MED值会清零,因此造成上图路由表的加表情况。所以通过前缀修改med值干涉选路。

[r2]ip ip-prefix  haha  permit   172.16.2.0 24

[r2]route-policy  haha  permit  node  10

[r2-route-policy]if-match    ip-prefix  haha

[r2-route-policy]apply   cost 4

[r2]route-policy  haha  permit   node  20

[r2]bgp    2

[r2-bgp]peer   12.1.1.1  route-policy  haha export

查看bgp路由表:

四、 测试

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!