BGP 属性(1)

⼀、BGP 属性

1.BGP 属性分类

 - 公认必遵
 - 公认任意
 - 可选过渡
 - 可选⾮过渡

2、公认必遵

-所有 BGP 设备都要认识这⼀类属性
-⽽且这类属性必须存在于 Update 报⽂中 
-如果缺少这类属性,update 报⽂不完整, 路由信息会出现错误列举属性 

 -Origin 属性:起源属性,标识以什么方式变成BGP属性的
 -AS_path 属性:对路径进行记录(怎么到达某个路由,经过了哪里)
 -Next_Hop:明确标识BGP的下一条怎么走

3、公认任意

-所有 BGP 设备认识此类属性 
-这类属性不要求必须存在于 Update 报⽂中(可以在,也可以不在) 
-如果缺少这类属性,路由信息不会出现错误 

列举属性: 
Local_Pref 属性 :本地优先级,表示该条路由的优先级,在AS内部使用
Atomic_aggregate属性 :原子聚合属性,当路由器对路由进行聚合后会相当产生了一条新的路由。变成新的路由以后,以前的路由属性可能就会出现消失,从而可能出现环路的可能,从而打上原子聚合属性,标记该条路由是被聚合过的在使用的时候需要注意。

4、可选过渡

-所有 BGP 设备可以认识,也可以不认识此类属性 
-如果不认识,但仍然会接收此类属性,并且会通告给邻居 

列举属性: 
Aggregator属性:聚合者,表示这条路由是哪一台设备做的聚合
Community团体属性:团体属性, 类似于tag,bgp路由不像ospf、isis,bgp不可以tag。

5、可选⾮过渡

-所有 BGP 设备都可以认识,也可以不认识此类属性(可以认识,也可以不认识) 
-如果不认识,会忽略此类属性,⽽且不会通告邻居 

列举属性: 
MED 属性 :出口鉴别器,可以直接理解为cost。在EBGP使用,在as之间比较。
Cluster-List:
Originator-ID 

⼆、BGP 选路原则

BGP 选路原则

  • 根据 BGP 属性来的,所以要先了解属性,在判断路由优选原则

第⼀个:丢弃下⼀跳不可达的路由

-这不是 BGP 选路原则(⾄少华为不是这么认为的),因为在任何路由协议中,我们都会认为下⼀跳不可达的路由是⽆效的 
-但是有其他⼚商会把这条原则当做 BGP 选路原则的第⼀原则,比如:思科

下一步→进⾏选路:

0、丢弃下一跳不可达的路由 (这一跳华为不作为选路规则中的一条,这个本身就是一个前提);
1、⽐较“协议⾸选值preferred-Value属性,数值越⼤越好,默认值是 0,只在本设备⽣效,不会传递 (华为私有属性);
2、⽐较“本地优先级local_preferred属性,数值越⼤越好,默认值是 100;

3、本地始发的BGP路由优于从其他对等体学习到的路由,本地始发的路由优先级:优选手动聚合>自动聚合>network>import>从对等体学到的;
4、⽐较“as-path” 属性 AS 号越短越好 ;
5、⽐较“起源属性” 指的是已什么⽅式注⼊进 BGP 协议的,Origin属性值按优先级从高到低的排列是:IGP、EGP及Incomplete;
6、⽐较“MED”属性,指的是⼀个路由器去往⼀个 BGP 路由⽹段的距离,类似 cost;
7、优选从EBGP对等体学来的路由(EBGP学来的路由优先于IBGP路由);
8、比较Next-hop的IGP度量值,越小越优先;
	当前8条属性完全相同的时候,可以形成路由负载分担;
9、比较 Cluster_List ,越短越优先;
10、比较Router ID,越小越优先;
11、优选具有最小IP地址的对等体通告的路由;

三、实验BGP选路原则

拓扑:
在这里插入图片描述

  1. 实验配置:
    1.配置IP地址
    2.配置ospf互通
    3.配置bgp全互联

  2. 配置命令:

R1:

#
 sysname R1
#
 undo info-center enable
#
interface GigabitEthernet0/0/0
 ip address 12.1.1.1 255.255.255.0 
#
interface GigabitEthernet0/0/1
 ip address 13.1.1.1 255.255.255.0 
#
interface LoopBack0
 ip address 1.1.1.1 255.255.255.255 
#
bgp 100
 peer 2.2.2.2 as-number 100               
 peer 2.2.2.2 connect-interface LoopBack0
 peer 3.3.3.3 as-number 100 
 peer 3.3.3.3 connect-interface LoopBack0
 #
  peer 2.2.2.2 enable
  peer 3.3.3.3 enable
#
ospf 1 router-id 1.1.1.1 
 area 0.0.0.0 
  network 1.1.1.1 0.0.0.0 
  network 12.1.1.0 0.0.0.255 
  network 13.1.1.0 0.0.0.255 
#

R2:

#
 sysname R2
#
 undo info-center enable
#
interface GigabitEthernet0/0/0
 ip address 12.1.1.2 255.255.255.0 
#
interface GigabitEthernet0/0/1
 ip address 24.1.1.2 255.255.255.0 
#
interface LoopBack0
 ip address 2.2.2.2 255.255.255.255 
#
bgp 100
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 connect-interface LoopBack0
 peer 24.1.1.4 as-number 200 
#
ospf 1 router-id 2.2.2.2 
 area 0.0.0.0 
  network 2.2.2.2 0.0.0.0 
  network 12.1.1.0 0.0.0.255 
  network 24.1.1.0 0.0.0.255 
#

R3:

#
 sysname R3
#
 undo info-center enable
#
interface GigabitEthernet0/0/0
 ip address 34.1.1.3 255.255.255.0 
#
interface GigabitEthernet0/0/1
 ip address 13.1.1.3 255.255.255.0 
#
interface LoopBack0
 ip address 3.3.3.3 255.255.255.255 
#
bgp 100
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 connect-interface LoopBack0
 peer 34.1.1.4 as-number 200 
 #
ospf 1 router-id 3.3.3.3 
 area 0.0.0.0 
  network 3.3.3.3 0.0.0.0 
  network 13.1.1.0 0.0.0.255 
  network 34.1.1.0 0.0.0.255 
#

R4:

#
 sysname R4
#
 undo info-center enable
#
interface GigabitEthernet0/0/0
 ip address 34.1.1.4 255.255.255.0 
#
interface GigabitEthernet0/0/1
 ip address 24.1.1.4 255.255.255.0 
#
interface LoopBack0
 ip address 4.4.4.4 255.255.255.255 
#
bgp 200
 peer 24.1.1.2 as-number 100 
 peer 34.1.1.3 as-number 100 
#
ospf 1 router-id 4.4.4.4 
 area 0.0.0.0 
  network 4.4.4.4 0.0.0.0 
  network 24.1.1.0 0.0.0.255 
  network 34.1.1.0 0.0.0.255 
#

1、(第8条后一条) 当前8条属性完全相同的时候,可以形成路由负载分担;

R1命令:

#
interface LoopBack11
 ip address 11.11.11.11 255.255.255.255 
#
network 11.11.11.11 255.255.255.255 

在R4上路由查看BGP路由,这里的最优路由经过R2。
在这里插入图片描述

查看没有被优选的原因是因为R2的router id更优(10.比较Router ID,越小越优先);
在这里插入图片描述
在这里出现了一个问题,为什么没有形成路由负载分担?
原因是因为设备默认的是一条路由负载(默认没有开路由负载)
在这里插入图片描述
配置命令:

[R4-bgp]maximum load-balancing 2        //修改负载数量,最大为8

在这里插入图片描述

开启路由负载为2以后,bgp的路由表里面依然会选择一条最优的路由出来,这里系统的认为是人为把一条不优的路由加入到路由表里面,R4在传递的时候,依然只传递最优的路由。对于R4 来说,会使用那条不优的路由,但是不会传递。

在这里插入图片描述

2、比较Next-hop的IGP度量值,越小越优先;

在R4中引入一条路由,配置命令:

[R4]int l1
[R4-LoopBack1]ip a 44.44.44.44 32
[R4-LoopBack1]bgp 200
[R4-bgp]net 44.44.44.44 32

在这里插入图片描述

同时在R2,R3中需要修改下一条地址为本地IP,原因看上图(下一条不可达),命令如下:

[R2]bgp 100
[R2-bgp]peer 1.1.1.1 next-hop-local 
<R2>refresh bgp all export 

[R3]bgp 100
[R3-bgp]peer 1.1.1.1 next-hop-local 
<R3>refresh bgp all export 

<R1>refresh bgp all import 

在这里插入图片描述
这里优选R2的原因和上面说的一样
在这里插入图片描述
这里我们通过修改cost值然后路由走R3,配置命令:

[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ospf cost 50

在这里插入图片描述
在这里插入图片描述

3、优选从EBGP对等体学来的路由(EBGP学来的路由优先于IBGP路由);

这个实验通过R2、R3建立BGP邻居来实现,这样R2路由和R3路由会把通过EBGP获取的R4路由相互传递给对方。
在这里插入图片描述
配置命令如下:

[R2]bgp 100
[R2-bgp]peer 3.3.3.3 as-number 100 
[R2-bgp]peer 3.3.3.3 connect-interface LoopBack0
[R2-bgp]peer 3.3.3.3 next-hop-local 

[R3]bgp 100
[R3-bgp]peer 2.2.2.2 as-number 100 
[R3-bgp]peer 2.2.2.2 connect-interface LoopBack0
[R3-bgp]peer 2.2.2.2 next-hop-local 

查看R2、R3邻居:
在这里插入图片描述
在这里插入图片描述
之后在R2、R3看44.44.44.44的路由:

在这里插入图片描述
在这里插入图片描述
这里为啥会优先选择EBGP 邻居获取的路由,看路由明细,可以知道是EBGP获取的路由优先于IBGP获取的
在这里插入图片描述
在这里插入图片描述
这里配置结论出来后先解除R2、R3的BGP邻居。

[R2]bgp 100
[R2-bgp]un peer 3.3.3.3

[R3]bgp 100
[R3-bgp]un peer 2.2.2.2

4.⽐较“MED”属性,指的是⼀个路由器去往⼀个 BGP 路由⽹段的距离,类似 cost,在有效EBGP邻居使用;

这里看路由,优先选择走R2


通过修改MED让路由优先选择走R3,配置命令:

[R2]route-policy med permit node 10 
[R2]apply cost 100 

[R2]bgp 100
[R2-bgp]peer 24.1.1.4 route-policy med export  //在R2出方向配置,也可以在R4入方向配置;

查看结果
在这里插入图片描述
查看路由明细,R2不优先的原因是MED值
在这里插入图片描述

5、⽐较“起源属性” 指的是已什么⽅式注⼊进 BGP 协议的,Origin属性值按优先级从高到低的排列是:IGP、EGP及Incomplete;

这里通过在R1上创建一个环回口引入ospf,然后在R2 BGP中引入ospf,在R3 BGP中network, 在R4上查看验证
配置命令:

[R1]int l111
[R1-LoopBack111]ip address 111.1.1.1 255.255.255.255 
[R1-LoopBack111]ospf enable 1 area 0

[R2]bgp 100
[R2-bgp]import-route ospf 1

[R3]bgp 100
[R3-bgp]network 111.1.1.1 32

在R4上查看验证:
在这里插入图片描述
在这里插入图片描述
得出结论:network>import

6、⽐较“as-path” 属性 AS 号越短越好 ;

这个实验基清除上一个实验配置的路由引入,然后查看R4的BGP路由表可以看到路由优先经过R3,这里我通过修该as属性走R2,配置命令如下:

先清楚引入的配置,然后看R4路由表:

[R2]bgp 100
[R2-bgp]un import-route ospf 1

[R3]bgp 100
[R3-bgp]un network 111.1.1.1

在这里插入图片描述
在R3上手动追加as300,然后在R4在次看配置结果:

[R3]route-policy as permit node  10
[R3-route-policy]apply as-path 300 300 300 additive   //这里可以对as进行重写,追加,或者清空。我这里配置的是追加
[R3]bgp 100
[R3-bgp] peer 34.1.1.4 route-policy as export  //在出口方向上引入

在这里插入图片描述
在这里插入图片描述

7、本地始发的BGP路由优于从其他对等体学习到的路由,本地始发的路由优先级:优选手动聚合>自动聚合>network>import>从对等体学到的;

这里对这一条路选路原则单独做一个实验
拓扑:

在这里插入图片描述

基础配置命令:
R1:

#
 sysname R1
#
interface GigabitEthernet0/0/0
 ip address 12.1.1.1 255.255.255.0 
#
bgp 100
 router-id 1.1.1.1
 peer 12.1.1.2 as-number 200 
#
ip route-static 10.1.1.0 255.255.255.252 NULL0
ip route-static 10.1.1.8 255.255.255.252 NULL0
ip route-static 10.1.1.12 255.255.255.252 NULL0
#

R2:

#
 sysname R2
#
interface GigabitEthernet0/0/0
 ip address 12.1.1.2 255.255.255.0 
#
bgp 200
 router-id 2.2.2.2
 peer 12.1.1.1 as-number 100 
 #

这里反着顺序实验:import<network<自动聚合<手动聚合

7.1 通过import引入静态路由:

[R1-bgp]import-route static 

在这里插入图片描述

这有三条最优路由

7.2 通过Network引入:

[R1-bgp] network 10.1.1.0 255.255.255.252 

检查路由表:

在这里插入图片描述

在这里插入图片描述

7.3 自动聚合:

[R1-bgp]summary automatic

在这里插入图片描述
这里的10.0.0.0 是因为自动聚合自动聚合成一个网段,比如:192.168.1.1/24 是C类IP地址,自动聚合以后会默认聚合成192.168.1.0/24 A类、B类也是如此

7.4 使用手动聚合:

[R1-bgp]aggregate 10.0.0.0 8 

检查路由:

在这里插入图片描述
在这里插入图片描述
注:这里的手动聚合还有一个点是,抑制明细路由命令如下;

[R1-bgp]aggregate 10.0.0.0 255.0.0.0 detail-suppressed    //就是在路由后面加上detail-suppressed

在R2上查看

在这里插入图片描述

在这里插入图片描述
然后在R2的BGP路由表最终聚合成1条路由,同时以前路由的明细和配置的属性也会丢失,就会可能出现环路的可能。但是在10.0.0.0路由明细里面可以看到多了一个Atomic-aggregate(聚合者),可以知道是哪个路由聚合的,集合者ID多少。为了避免环路还可以在后面加上 as-set ,这样会把聚合的路由的as号加上。

8、⽐较“本地优先级local_preferred属性,数值越⼤越好,默认值是 100。AS内部有效;

这里的的话我们先看看R1上的BGP路由,44.44.44.44优先是R2,我们通过改下R2的local_pre值,让优先走R3。
在这里插入图片描述
配置命令:

[R2]route-policy lp permit node 10
[R2-route-policy]apply local-preference  50
[R2]bgp 100
[R2-bgp]peer 1.1.1.1route-policy lp export   

在R1上再看路由:

在这里插入图片描述
在这里插入图片描述

9、⽐较“协议⾸选值preferred-Value属性,数值越⼤越好,默认值是 0,只在本设备⽣效,不会传递 (华为私有属性);

这个实验接上一个实验的配置,因为Pre_val只能本地生效,直接在R1如方向配置,让路由优先经过R2。
在这里插入图片描述
配置命令如下:

[R1]route-policy pv permit node 10
[R1-route-policy]apply preferred-value 50 
[R1]bgp 100
[R1-bgp]peer 2.2.2.2 route-policy pv import 

在这里插入图片描述
这里在分享一个BGP属性熟记小方法,记住:漂亮老男人 PL LAO MEN

P:preferred-Value
L:local_preferred
L:本地始发
A:AS_path
O:Origin
M:MED
E:EBGP>IBGP
N:Next-hop

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值