HCIP(12)

(接上文HCIP(11))
        因为 BGP 水平分割是为了防止环路的产生,而路由反射器将路由反射之后就打破 BGP 的水平分割,就可能造成环路的出现。---所以,路由反射器为了防止环路的出现,又引入了两个属性---
 Originator _ ID (起源者 D ), Cluster _ list (簇列表)
起源者 ID --- O_ ID ---当一条路由信息来到路由反射器时,反射器需要将这条路由信息反射,反射前将在该路由信息中添这个属性,这个属性的值为该反射器收到这条路由信息的通告者的 RID ,之后,别的路由反射器收到一条路由信息如果其中包含O_ ID ,则他将不会改变这个属性。如果一台设备收到一条路由条目其中起源者 ID 为自己本地的 RID ,则将不再学习这条路由信息,起到防止环路的效果。


如果在一个AS当中,存在多次反射,则一定存在多个反射簇,则每个RR在反射路由信息时都会在其簇列表属性中添加本地的簇ID。当一个设备收到一条反射的路由信息后,其中的簇列表属性包含本地簇ID ,则将不再学习该路由,防止环路的产生。

[r3-bgp]peer2.2.2.2 reflect-dient ---指定R2作为反射客户,则同时R3自动成为RR 


4,联邦
        联邦的思想就是将同一个 AS 当中的 BGP 对等体关系改变为 EBGP 对等体关系,通过这种方法打破 BGP 的水平分割。这就需要将不同的 IBGP 对等体划分到不同成员 AS 当中,成员 AS 之间建立的 EBGP 对等体关系是一种特殊的 EBGP 对等体关系,他们之间仅遵循 EBGP 对等体的传递性,而从传递的内容角度看,依然需要遵循 AS-BY-AS 规则,因为从宏观上看,他们依然处于同一个 AS 当中。
        联邦的做法也相当于打破了 IBGP 的水平分割,则也将可能出现环路问题,则需要考虑防环。防环方法可以直接借鉴 EBGP 水平分割,在AS_ PATH 属性当中添加成员 AS 号来防止回传。(注意,为了区分成员 AS 正常的 AS ,成员 AS 号将使用小括号括起来。)
联邦的配置:

[r2]bgp 64512 --- 联邦成员设备启动BGP进程时需要使用小号来启动
[2-bgp]confederation id 2 --- 声明联邦成员的大号
[r2-bgp]peer3.3.3.3 as-number 64512 --- 联邦成员之间建立IBGP等体关系需要使用小号来建立
[r3-bgp]confederation peer-as 64513---在需要建立联邦的EBGP对等体关系的设备上需要声明建的成员AS号
[r3-bgplpeer4.4.4.4 as-number 64513 --- 联邦的 EBG 对等体关系使用小号建邻
[r3-bgp] peer 4.4.4.4 ebgp-max-hop --﹣因为联邦的 EBGP 对等体关系之间需遵循EBGP对等体的传递性,所以,其TTL值默认为一,在非直连建邻时需要将TTL值修改才能正常建邻

 5.BGP的选路原则

        BGP选路的前提条件 ---  丢弃所有不可用的路由信息

属性名称传播范围默认值评判标准
PV不传播0(0—65535)越大越优
LPIBGP对等体之间100越大越优
AS_PATHbgp对等体之间记录数量越少越优
OGNbgp对等体之间根据起源类型决定I>e> ?
MEDbgp对等体之间认继承全局路由表中的开销值越小越优

 
1,优选 PV 值最大的路由
         PV 值是华为的私有属性,可以理解为是权重,数值越大,其优先级越高,又因为他是所有选路原则中的第一条原则,所以,该属性是本设备上选路最方便的一个属性。---这个属性只能在本设备上生效,他无法传递给任何 BGP 对等体。
修改 PV 影响选路的配置:
方法一:全局修改

[r4-bgpJpeer 3.3.3.3 preferred-value ?
 INTEGER <0-65535> Preference value 
[r4-bgp]peer 3.3.3.3 preferred-value 100


        负载分担 --- 即让不同的流量走不同的线路,分担单一线路的压力。
方法二:精细化控制

1,抓取流量
[r4]ip ip-prefix PV permit 10.0.0.0 24

2,做路由策略
[r4] route-policy PV permit node 10
[r4-route-policy]if-match ip-prefix pv 
[r4-route-policy]apply preferred-value 100
[r4-route-policy]q 
[r4]route-policy PV permit node 20 --- 注意,必须要配置空表放通剩余所有流量
 Info : New Sequence of this List .
[r4-route-policy]q 

3,在 BGP 中调用路由策略
[r4-bgplpee r3.3.3.3 route-policy PV import 


2,优选 LP 属性值最大的路由
 LP ---本地优先级 --- 默认值为100,越大越优。这个属性可以在 IBGP 对等体之间进行传递,所以,他是 AS 内部选路最常用的属性。路由信息在传递给 EBGP 对等体时将不携带这个属性。通过修改 LP 值来影响选路
方法一:全局修改

[r3-bgp]default localpreference 200 ---R3之后发给IBGP对等体的路由的LP属性都将被改为200


方法二:精细化控制

在R3的出方向做
1,抓取流量
[r3]ip ip-prefix lp permit 10.0.0.0 24


2,做路由策略
[r3]route-policy lp permit node 10 
Info : New Sequence of this List .
[r3-route-policy]if-match ip-prefix lp 
[r3-route-policy]apply local-preference 300
[r3-route-policy]q 
[r3]route-policy lp permit node 20 
Info : New Sequence of this List .
[r3-route-policy] q 


3,在 BGP 进程中调用
[r3-bgp]peer 4.4.4.4 route-policy Ip export

 
3,自己始发的路由优先级高于从对等体处学来的,自己始发的方法也存在多种,他们的优先级关系为手工聚合>自动聚合> network > import 


4,优选 AS _ PATH 属性最短的路由
         AS _ PATH 属性进行选路时,需要注意一下两点:
        1,我们在进行路由聚合时,如果激活 AS _ SET 关键字之后,将不同 AS 的明细路由进行聚合,则我们将在 AS _ PATH 属性中携带所有明细 As 的 AS 号,并用大括号括起来。在进行选路比较时,大括号的内容当作一个 AS 号来看待。
        2,在联邦时,我们联邦内部也需要使用 AS _ path 来进行防环,我们将使用小括号将 AS 号括起来,在进行选路比较时,将不计算小括号里的内容。
方法一:在R1的出方向修改 AS _ PATH 属性。

1,抓取流量
[r1]ip ip-prefix as permit 10.0.0.0 24

2,配置路由策略
[r1]route-policy as permit node 10 
Info : New Sequence of this List .
[r1-route-policy ]if-match ip-prefix as 
[r1-route-policy]apply as-path 11 22 33 ?
 INTEGER <1-4294967295> AS number in asplain format 
                        (number <1-4294967295>)
 STRING <3-11>        AS number in asdot format 
                    (number <1-65535>. number <0-65535>)
 additive     Append to original As Number ---在原有AS_PATH 属性的基础上添加配置的AS号
 overwrite     Overwrite original AS Number --- 直接覆盖原有的 AS_PATH 属性值
[r1-route-policy]apply as-path 112233 additive ---建议使用添加,因为 AS _ path 属性主要任务用来防止环路,将原有属性覆盖可能导致路由回传,造成环路产生。
[r1-route-policylq 
[r1] route - policy as permit node 20
 Info : New Sequence of this List .


3,在 BGP 中调用策略
[r1-bgp]peer 12.0.0.2 route-policy as export
[r2-route-policy]apply as-path 1 1 1 additive ---建议在AS_PATH属性中添加真实离开的AS的 AS 号,因为AS_PATH属性本身具有防环作用,添加AS号后可能导致路由无法发送到对应的AS当中,影响路由的传递。 AS_PATH属性在进行选路时,仅关注AS号的长短,不关注内容。


5,优选起源码属性最优的路由。起源码的优先级--- l> E >?
    OGN --- 起源码--- l, e ,?--﹣用来标识路由条目的起源
        l---代表该路由信息起源于 IGP 协议(不局限于 IGP 协议,包括静态,直连),代表该路由条目起源于 AS 内部---通过 network 发布出来的路由信息其起源码为
         E ---代表该路由信息起源于 EGP 协议---  EGP 指的是 BGP 之前使用的外部网关协议
         ?---通过除了以上两种方式学习到的路由---重发布导入的路由起源码都是?
控制选路的方法:

1,抓流量
[r2]ip ip-prefix ogn permit 10.0.0.0 24

2,配置路由策略
[r2]route-policy ogn permit node 10 Info : New Sequence of this List .
[r2-route-policy]if-match ip-prefix ogn 
[r2-route-policy]apply origin ?
 egP  Remote EGP 
 igp    Local IGP 
 incomplete Unknown heritage 
[r2-route-policy]apply origin incomplete 
[r2-route-policy]q 
[r2]route-policy ogn permit node 20 
Info : New Sequence of this List .
[r2-route- policy]q 

3,在 BGP 中进行调用
[r2-bgp]peer 12.0.0.1 route- policy ogn import 


6,优选 MED 属性值较小的路由
 MED ---多出口鉴别属性 --- MED 值默认初始值并不是0,而是继承了路由表中该路由条目的开销值,所以,它可以反应到达目标网段在本 AS 内部的开销大小,通过这个参数,别的 AS 的流量在进入本 AS 时将可以选择开销较小的入口进入。通过修改这个属性值,我们也可以影响其他 AS 的流量流入本 AS 的路径。若本地通过 IBGP 对等体学习到一条 BGP 路由,其中存在 MED 值,之后需要将这条路由再传递给本地的 EBGP 对等体,则他将不再携带这个 MED 值。这种设置将有可能造成选路不佳的情况。所以,建议,如果存在多组边界设备需要将路由发送给 EBGP 对等体关系时,需要将所有的路由信息都发布。(每台设备都需要发布)
干涉选路的方法:
在R2上配置,影响R1的选路

1,抓取流量
[r2]ip ip-prefix med permit 4.4.4.0 24

2,配置路由策略
[r2]route- policy med permit node 10 
Info : New Sequence of this List .
[r2-route-policy]if - match ip - prefix med 
[r2-route-policy]apply cost 10
[r2-route-policy]q 
[r2]route-policy med permit node 20 
Info : New Sequence of this List .
[r2-route-policylq 
3,在 BGP 进程中调用
[r2-bgp]peer 12.0.0.1 route-policy med export

 
注意: MED 值影响的是别的 AS 的流量通过多个出口进入到本 As 内部,如果流入的不是同一个 AS ,即收到的路由条目中 AS _ PATH 属性最左边的 AS 号不同,则将不比较第六条,直接比较第7条。

[r4]ping -r -a 4.4.4.4    1.1.1.1 --- 可以记录流量流过的全过程
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值