路径属性分类:
- 公认(Well-known)
- 强制(Mandatory):所有BGP对等体都识别,必须存在于Update报文中,如果缺少路由器则会报错。
- 自由决定(Discretionary):所有BGP对等体都可以识别,不要求存在于Update报文中,可以根据具体使用情况决定是否添加到Update报文中
- 可选(Optional)
- 传递(Transitive):BGP对等体可以选在在Update报文中携带这样的属性,接受路由器如果不识别这种属性,可以传递给邻居路由器,邻居路由器可能会使用到这种属性。
- 非可传递(Non0transitive):BGP对等体可以选择是否在Update报文中携带这样的属性,整个发布路径上如果部分路由器不能识别这种属性,可能会导致该功能无法发挥作用。因此接收路由器如果不识别这种属性,将丢弃这种属性,不会转发给邻居路由器。
Preferred_Value:
- 是一条华为的私有属性,可以理解为路由的权重。取值范围0-65535,越大越优先,默认为0。
- 只在本地有效
- 可以用来对收到多条到达同一目的的路由条目进行操控优先。
Local_Preference:
- 该属性是一个公认自由决定属性
- 只能在IBGP对等体之间传递
- 用于告知在同一个AS内部有多个BGP出口,哪个出口更优
- 缺省值为100,取值范围0-4294967295,越大越优先
- 可以在本地使用命令:default Local-preference 修改
- 可以使用route-policy apply 中设置
AS_Path:
- 公认强制属性
- 本地路由通过BGP传出时,需要在路有前增加一个本地的AS_NUMBER
- 作用:可以避免EBGP路由的环路;如果收到的EBGP路由中的AS_PATH中含有自己的AS Number,则会被丢弃掉。
- 可以作为同一个目的多条BGP路由优选参数
Origin:
- 公认强制属性
- 用于描述路由的来源
- 分为:IGP、EGP、Incomplete类型
- IGP:使用network命令发布到BGP的,属性为IGP
- EGP:如果是通过EGP学习到的,则为EGP
- Incomplete:其他方式学习到的路由,如import-route
- 当存在多条到达同一目的网络的路由时,其他条件相同的情况下,IGP最优,其次EGP,最后是incomplete
Next-Hop:
- 公认强制属性
- 路由下一跳地址
- BGP Speaker向EBGP对等体发布某条路由时,会把该路由信息的下一条设置为本地和对端建立邻居关系的接口地址
- BGP Speaker将本地始发路由发送给IBGP邻居时,则会把该路由信息的吓一跳设置为本地和对端建立邻居关系的接口地址
- BGP Speaker向IBGP对等体发布从EBGP学习的路由时,不会修改下一跳属性
- 华为对next-hop实现方案不同,network和import-route的路由下一跳均为0.0.0.。思科会对宣告或者引入的路由做检查,检查该路由的下一跳是否是本地直连可达。如果可达引入IGP的下一跳作为BGP的下一跳使用。如果不是则将下一跳设置为0.0.0.0
MED(cost):
- 可选非可传递属性
- 当到达同一个目的网段存在多条BGP路由时,在其他条件相同的情况下,MED值最小的BGP路由将被优选。
- 如果network或import-route引入路由时,MED值将继承IGP的cost值
- 默认只比较来自同一个AS路由的MED值
- 通过命令compare-different-as-med可以设置比较不同的AS的MED值
Atomic-Aggregate(as-set原子聚合):
- 公认非强制属性
- 用于标识BGP汇总路由
Aggregate(聚合者):
- 可选可传递属性
- 用于标识汇总路由的来源,是由谁来标识的。
Community(标签):
- 可选可传递属性
- 标识了一组拥有共同特征的路由信息。
- 类似于TAG功能,功能是给BGP路由打标记。
Originator-ID(起源ID用于DD):
- 可选择非可传递属性
- 只能再AS内部传递,不能传递给其他AS
- 标识BGP路由的来源(用RouterID来标识)
- 用于路由反射器
Cluster-List(簇列表):
- 可选择非可传递属性
- 列表中会填充路由反射器的cluster-id
- 用于路由选路及防止环路
- AS内部传递
- 用于路由反射器
Extended-Communities(扩展团体属性):
- 可选择可传递属性
- 用于MPLS VPN
- 作用类似TAG
- 主要为VPN私网路由打标签,通过标签可以执行路由的引入和输出策略