BGP宣告、聚合及干涉选路、联邦等问题

一、 BGP的宣告问题;

若在一台运行了BGP协议的路由器上,宣告本地路由器表中通过其他协议学习到的路由信息时,将携带本地到达这些目标网段的cost值
若一台BGP设备通过IBGP关系学习到了一条BGP路由,路由中携带了度量值;之后本地将这条路由转发到本地的其他EBGP邻居时,将删除cost,因为这些cost不是本地的度量;故,若需要基于cost值进行选路干涉,建议本地也配置宣告这些路由条目,来携带本地的cost到其他EBGP邻居;

BGP宣告、聚合及干涉选路、联邦等问题_第1张图片
如此图,新来一条路由时,需要边界路由器全部宣告。

二、 关闭自动汇总—在BGP协议中,自动汇总功能默认被关闭

切记:在RIP/EIGRP这些IGP中的DV型路由协议中,开启自动汇总,将导致邻居间传递的所有路由条目携带主类的子网掩码,但在BGP协议中,自动汇总功能对正常的BGP宣告路由无意义,进针对重发布进入BGP协议的路由起效;
开启自动汇总时:不携带原有掩码,使用主类;不携带cost值;故不建议开启
[r2-bgp] summary automatic //开启命令
BGP协议中的宣告可以理解为逐条的重发布;重发布IGP到BGP可以理解为批量的宣告;但两者产生的路由,其起源属性不同,宣告路由优于重发布路由;因此建议若使用重发布,也可宣告一样,每台存在EBGP邻居的BGP路由器均考虑进行一次重发布

三、 手工汇总—BGP称为聚合

【1】 不是BGP的正常聚合配置,利用了BGP的宣告的特征—本地路由表中的路由条目无论来源,无论去向(缺省除外); 先在本地路由表中静态添加一条指向汇总地址的空接口防环路由,然后再在BGP协议中宣告这条空接口路由,减少了宣告明细部分的操作量;
注:BGP工作在互联网环境下,控制选路的情况十分常见,AS间可以在传递聚合条目的同时,让部分路由器来传递明细路由(精确宣告),可以实现干涉选路的功能;
【2】标准的BGP协议聚合配置; --先逐条宣告本地所有明细路由,再进行聚合配置
[r1-bgp]aggregate 20.1.0.0 22 配置完成后,本地自动生成空接口防环路由,此时明细和聚合条目同时发出
[r1-bgp]aggregate 20.1.0.0 22 detail-suppressed 仅发送聚合条目,不转发明细条目

基于需要,需要在传递聚合条目的同时,再转发部分的明细路由:

  1. 1、 抑制列表—定制抑制列表,在传递路由过程中,对部分不希望传递的条目进行抑制

    	[r1]ip ip-prefix a permit 20.1.1.0 24
    
    	[r1]route-policy a permit node 10
    	[r1-route-policy]if-match ip-prefix a
    	[r1-route-policy]q
    
    	[r1]bgp 1 
    	[r1-bgp]aggregate 20.1.0.0 22 suppress-policy a   
    	//使用抑制规则调用route-policy时,被匹配允许的流量最终被抑制传递
    
  2. 2、 分发列表

    	[r1]bgp 1   
    	[r1-bgp]aggregate 20.1.0.0 22
    
    	[r1]ip ip-prefix b deny 20.1.1.0 24
    	[r1]ip ip-prefix b permit 0.0.0.0 0 le 32
    
    	[r1]bgp 1 
    	[r1-bgp]filter-policy ip-prefix b export
    
  3. 3、 route-map 在bgp协议中直接调用route-map;

    [r1]bgp 1 
    [r1-bgp]aggregate 20.1.0.0 22
    
    [r1]ip ip-prefix c permit 20.1.1.0 24
    
    [r1]route-policy c deny node 10
    [r1-route-policy]if-match ip-prefix c
    [r1-route-policy]q
    [r1]route-policy c permit node 20
    [r1-route-policy]q
    
    [r1]bgp 1 
    [r1-bgp]peer  12.1.1.2 route-policy c export
    
  4. 4、直接调用前缀列表实现分发

    [r1]bgp 1 
    [r1-bgp]aggregate 20.1.0.0 22
    
    [r1]ip ip-prefix d deny 20.1.1.0  24
    [r1]ip ip-prefix d permit 0.0.0.0 0 le 32
    
    [r1]bgp 1 
    [r1-bgp]peer 12.1.1.2 ip-prefix d export
    

四、 认证 邻居间保证更新安全

[r1-bgp]peer 12.1.1.2 password cipher cisco123 两端的邻居配置需要一致

五、 打破IBGP水平分割

有条件的打破IBGP的水平分割;
IBGP水平分割—避免IBGP环路—从一个IBGP邻居处学习到的路由条目不能传递给本地的其他IBGP邻居;
因为BGP可以非直连建邻,故正常一台运行了BGP协议的路由器,均存在EBGP邻居,需要从其他AS学习路由条目,再共享到内部AS时,由于水平分割的现在,需要和本地AS内所有的BGP设备建立IBGP邻居关系;IBGP邻居关系的数量成指数上升;

有条件打破IBGP水平分割— 有条件 – 在管理员确定网络无环的前提下,人为的打破水平分割限制建设邻居关系的数量;
无环的核心思想为AS-BY-AS规则;一条条目在AS内部传递时其属性默认不变化;

  1. 【1】 路由反射器

3种角色,RR(反射器) 客户端 非客户端
3者构建一个簇;可以理解为RR为中心站点,客户端或非客户端是分支站点
要求所有分支与中心必须是IBGP邻居关系;
在一个簇中至少存在一台客户端;

规则:
1、 RR从一台EBGP邻居处学习到的路由可以传输给本地的客户端、非客户端、其他EBGP邻居
2、 RR从一台客户端邻居处学习到的路由,可以传输给本地的其他客户端、非客户端、其他EBGP邻居
3、 RR从一台非客户端邻居处学习到的路由条目,可以传输给本地的客户端,其他EBGP邻居;不得传输给本地的其他非客户端;
注意:若路由条目不优,不具有传递性;反射器也无法反射路由;

[r3-bgp]peer 2.2.2.2 reflect-client
该指令的作用,是让2.2.2.2成为本地的客户端,同时本地成为路由反射器;

  1. 【2】 联邦

将一个真实的大AS,逻辑的分为多个小AS;小AS的编号建议为私有编号;
小AS间构建联邦内的EBGP邻居关系,可以向真实EBGP关系一样传递路由条目,但不修改属性; 对于该大AS外的其他AS,是不知道内部的小AS情况;

1、所有配置全部基于小as号进行
[r3]bgp 64512
[r3-bgp]router-id 3.3.3.3
[r3-bgp]peer 2.2.2.2 as-number 64512
[r3-bgp]peer 2.2.2.2 connect-interface LoopBack 0
[r3-bgp]peer 4.4.4.4 as-number 64513
[r3-bgp]peer 4.4.4.4 connect-interface LoopBack 0
[r3-bgp]peer 4.4.4.4 ebgp-max-hop 2
BGP宣告、聚合及干涉选路、联邦等问题_第2张图片
2、联邦内所有运行BGP协议的设备均声明自己所在的大AS号
[r2]bgp 64512
[r2-bgp]confederation id 2
3)小AS间互指peer;在联邦内的ebgp邻居关系间的两台设备,互相定义对端的小AS号;
[r4-bgp]confederation peer-as 64513
切记:华为设备,必须先定义联邦的id,和互相小AS号后再配置邻居关系建立的命令;
在实际的工程案例中,联邦和反射器是同时被使用,降低配置量;

你可能感兴趣的:(学习总结)