BGP
原理
1,当BGP设备学习去往同一个目的网络的多余BGP路由时,设备会将路由都装在到BGP路由表,并在这些条目中进行路由优选,最终决策出最优路由,将该BGP路由加载到全局路由表中,作为数据转发的依据。
2,当存在多条路径时,BGP会选择最优的路由通告给其他对等体。
3,BGP定义了一系列路由优选规则,从而使得能选择出最优路由。
4,BGP的选路规则与BGP路径属性及路由策略息息相关,它让BGP拥有了强大的路由操控能力。
路径属性
路径属性的作用类似metric,用于度量BGP的路由优劣
类别
公认必尊属:所有的BGPupdate消息都要包含该属性
例如:As路径(AS-path),下一跳(next-hop),起源(Origin)
公认自决属性:该属性是可选可不选的,但是所有的BGP进程都能识别
例如:本地优先级(loacl preferent)
可选传递属性:即使BGP进程不能识别该属性,也会继续传递下去
例如:团体属性(community)
可选非传递属性如果BGP进程不能识别该属性,那么这条update会被丢弃
例如:MED
BGP选路原则
一,如果此路的下一条为不可达,那么会忽略此路
二,Local-preference值最高的路由优先
三,As-path的长度最短的路径优先
四,选择MED最小的路由
五,比较对等体的IP地址,选择IP地址数值最小的路径
BGP的三种常见路径控制
一,根据local-prefernce控制路由
为公有自决属性,用于告诉AS中的路由器,哪条路径是离开AS的首选路径。
local-preference属性只能在IBGP对等体间传递
注意local-preference只能在IBGP间传递,配置完并执行后记得重启BGP,local-preference 的数值是也大优先级越高。
根据AS-PATH属性控制选路
为公有必尊属性,是前往目标网络的路由经过的AS号列表
为了确保路由在EBGP对等体之间传递无环,也是路由优选的衡量标椎之一
可使用route-policy修改BGP路由的AS-path
apply as-path xxx additive 在已有的上面累加
apply as-path xxx overwrite 将已有的替换为
appiy as-path nope overwrite 清空路由中的AS-path属性
AS-path可以在EBGP之间使用也可以在IBGP之间使用
注意配置路由策略时要清楚,路由转发的源路由器与目的路由器,对路由的转发来说谁是入站,谁是出站。
根据MED属性控制路由
为可选非传递属性,是一种度量值
一般情况下,BGP设备只比同比较来自同一AS(不同对等体)的路由的med属性值。可以通过配置命令来允许BGP比较来自不同AS的路由的med属性值。
med的属性值越大的话,优先级就越低。