云计算~BGP的选路描述
BGP路由优选规则
- 优选具有最大Preferred_Value的路由
- 优选具有最大Local_Preference的路由
- 优选起源本地的路由
- 优选AS_Path最短的路由
- Origin(IGP>Incomplete)
- 优选MED最小的路由
- 优选EBGP对等体所通告的路由
- 优选到Next_Hop的IGP度量值最小的路由
- BGP路由负载分担
- 优选Cluster_list最短的路由
- 优选Router-ID最小的BGP最小对等体发来的路由
- 优选Peer-IP地址最小的对等体发来的路由
BGP路由优选规则也被称为BGP选路规则,不同厂商的设备在BGP选路上存在细微差异。
四种属性分类
Local-Preference
LP(Local-Preference)属性是一个公认自决属性,属性值越大,则路由越优。
- LP属性只能在IBGP邻居之间传递(除非做了策略,否则LP值在AS内的IBGP邻居间传递过程中不会丢失),而不能在EBGP邻居之间传递。但是可以在AS边界路由器上使用In方向的策略来修改LP属性值。
- BGP路由器在向其EBGP邻居发送路由更新时,此时该EBGP路由不能携带LP属性,但是对方收到该路由后,会在本地为这条路由赋一个默认值,也就是100(可通过命令修改),然后再将路由传递给自己的IBGP邻居。
AS_PATH的四种类型
一、是用于在AS之间的路由防环,如果一台路由器收到一条BGP路由,该路由携带的AS_PATH中出现了自己所在AS的AS号,那么它知道出现了环路,因此忽略该条路由更新。
二、AS_PATH的另一个作用是用于路由优选,我们知道AS_PATH实际上是一个列表,呈现出来就是一串AS号,那么既然是列表它就有长度,AS_PATH越短则该路由被视为越优,因为这条路径距离目的地所要经过的AS跳数更少。
- AS_SET:一个去往特定目的地所经路径上的无序AS号列表。
- AS_SEQENCE:一个有序的AS号列表。
- AS_CONFED_SEQUENCE:联邦内特有的AS_PATH类型,一个去往特定目的地
- 经路径上的有序AS号列表,其用法与AS_SEQUENCE一样,区别在于该列表中的AS号属于本地联邦中的AS号。
- AS_CONFED_SET:联邦内特有的AS_PATH类型,一个去往特定目的地所经路径上的无序AS号列表,用方法与AS_SET一样,区别在于列表中的AS号属于本地联邦中的AS号。
EMD
MED(MULTI_EXIT_DISC)是可选非传递属性,是一种度量值,用于向外部邻居指出进入AS的首选路径,即当入口有多个时,AS可以使用MED动态地影响其他AS如何选择进入路径。MED属性值越小,则路由越优。MED主要用于在AS之间交互,MED属性值随路由通告给EBGP对等体后,对方在AS内传播该路由时,会携带该MED属性值,但是,这个MED属性值不会被通告给下一个AS。
实验展示以上选路
local-prefernce选路规则配置
1.local-prefernce控制选路(值越大优先级越高)
在R3上配置选路:只有R5>R4>R3>R1,R1>R2>R4
local-prefernce 控制选路(值越大优先级越高)
route-policy yy permit node 10 创建yy路由策略
apply local-preference 500 设置优先级
R3配置:peer 4.4.4.4 route-policy yy export export为出栈方向,import为入栈
R4配置:peer 3.3.3.3 route-policy GG import 与上方效果相同。(入栈引用优先级)
route-policy GG permit node 10
apply local-preference 222
As_Path选路规则配置
1.local-prefernce控制选路(值越大优先级越高)
在R3上配置选路:只有R5>R4>R3>R1,R1>R2>R4
local-prefernce 控制选路(值越大优先级越高)
route-policy yy permit node 10 创建yy路由策略
apply local-preference 500 设置优先级
R3配置:peer 4.4.4.4 route-policy yy export export为出栈方向,import为入栈
R4配置:peer 3.3.3.3 route-policy GG import 与上方效果相同。(入栈引用优先级)
route-policy GG permit node 10
apply local-preference 222
EMD 选路规则配置
3.配置MED的值
在R2上配置选路:AR1>AR3>AR4>AR5
route-policy med permit node 10 创建名为med更改MED值
apply cost + 500 更改度量值(原基础上加500)
bgp 200
peer 1.1.1.1 route-policy med export
reset bgp all 重启bgp