BGP的丰富属性
公认属性:所有BGP路由都必须识别并支持的属性
- 公认必遵属性:BGP的Update消息中必须包含的属性。
- 公认任意属性:不必存在于BGP的Update消息中,可以根据需求自由选择属性。
可选属性:不要求所有的BGP路由器都能够识别的属性
- 可选过度:BGP 不能识别该属性,但可以接收该属性并将其发布给其他邻居的属性。
- 可选非过度:BGP可以忽略包含该属性的消息并且不向他的邻居发布
1、 Origin 属性
携带 Origin 属性的路由是通过以下三种方式注入到 BGP 中的
1. i :表示 BGP 路由通过network命令注入的。IGP:优先级最高,路由产生于AS内部
2. e :从EGP学来的路由
3. ?:即Incomplete,表示通过iimport命令引入的路由
三种 Origin 属性的优先级为:i > e > Incomplete
2、 AS-Path 属性
(1)AS-Path 作用:
①、用于选路,路由的选择和过滤。BGP会优先选择AS_PATH最短的路由
②、用于AS 之间的 防止环路
(2)在AS序列上,本地AS 号添加在AS_PATH列表的最前面。离本地AS最近的相邻AS号排在前面,其他AS号按顺序依次排列。
(3)BGP发言者在向EBGP邻居发送路由更新时修改AS_PATH属性,向IGP邻居发送时不修改该属性。
(4)AS-Path 的四种类型
①、AS_Sequence :以序列的方式进行记录as号,聚合时生成。
②、AS_Set :用于BGP聚合时防止环路,聚合时生成。
③、AS_Confed_Sequence :应用于联盟
④、AS_Confed_Set :应用于联盟
3、 Next_hop 属性
(1)从EBGP学到的路由,在传递给IBGP对等体时,默认下一跳不改变,需要通过Next_hop_local 修改
(2)从IBGP学到的路由信息,默认不会传递给其他IBGP对等体
(3)从IBGP对等体学到的路由,在传递给EBGP对等体时,下一跳不改变。
EBGP多跳
由于默认BGP中EBGP邻居之间的TTL值为1,(TTL,数据包的生命周期值,每经过一个路由器该值会-1,当该值为0后,数据包将会被丢弃)。若EBGP对等体非直连(通信时需要经过一个以上的路由器,TTL值就不够用了),TTL值限制会使非直连的对等体无法正常建立邻居关系,所以需要用EBGP多跳的命令来解决非直连的邻居关系。
[R]bgp 100
[R-bgp]peer 2.2.2.2 ebgp-max-hop 2
4、 Local-Preference 属性
(1)Local-Perf属性仅在IBGP对等体之间有效,不会通告给其他AS,本地优先级在AS内部传递,数值越大越优先。默认优先级为100,可以手动更改。
(2)用于判断流量离开AS时的最佳路由
5、 MED 属性
(1)仅在两个相邻的AS之间传递,收到此属性的AS不会在通告给其他的AS。3
(2)MED属性相当于IGP的度量值(metric),用于判断流量进入AS时的最佳路由
(3)越小越优先,默认为0
6、 Community 团体属性
(1)作用:
①、限定路由的传播范围
②、打标记,便于对符合相同条件的路由进行统一处理
(2)Community 属性分为两类:
①、公共团体属性
②、扩展团体属性
(3)公共团体属性分为:
①、Internet :缺省属性,所有路由都属于Internet,此属性的路由可以通告给所有BGP的邻居
②、No_Export :收到此属性的路由后,不会将该路由发布给其他的AS。
③、No_Advertise :收到此属性的路由后,不会将该路由通告给任何BGP邻居。
④、No_Export_Subconfed :在联盟中使用
(4)扩展团体属性用一组4字节为单位列表表示,扩展团体属性格式为:aa:nn 或团体号:
(5)aa : nn 中,aa通常为AS编号,nn是定义的团体属性标识
(6)团体号范围为 0-4294967295
7、 Atomic_aggregate 原子聚合属性
(1)Atomic_aggregate:用来通告路由接收者,该路由是经过聚合的,是公认任意属性。
(2)有时BGP发布者会收到两条重叠的路由,其中一条路由包含的地址是另一条路由的子集。一般情况下BGP发布者会优选更精细的路由(前者),但是在对外发布时,如果它选择发布更粗略的那条路由(后者),这时需要附加上Atomic_aggregate 属性,以通知对等体。它实际上是一种警告,因为发布更粗略的路由意味着更精细的路由信息在发布过程中丢失了。在进行路由聚合时,对于聚合的路由信息会添加Atomic_aggregate 属性。
8、 Preferred-Value 权重属性
(1)华为私有属性,仅在本地路由器有效。
(2)Preferred-Value 值越大越优先。
9、 Orinator-id 起源者-ID属性
(1)越小越优先
(2)可以防止环路
10、Cluster-list 反射器列表属性
(1)每一个 cluster-id 计数为 1,长度最小的优先。经过反射器越少越优先
(2)可以防止环路