、BGP Attributes(属性)

BGP笔记4_BGP笔记

*的是公认比遵属性,任何厂商都必须支持。

BGP笔记4_BGP笔记_02

BGP笔记4_BGP笔记_03

BGP笔记4_BGP笔记_04

上面BGP选路的一个大前提是,都关闭同步而且下一跳都是可达的,这样才有资格竞争。

1、weight(权重)(cisco私有):越大越好,默认本地通告的为32768,其他的为0。

BGP笔记4_BGP笔记_05

下面用一个实例来演示如何修改weight值

在下面这个图中,R3和R4之间是用交叉线,其他都是串行线。所以没有修改weight值之前,R3去往2.2.2.0/24和9.9.9.0/24的bpg路由应该都是走R4这条线的。下面我们通过修改在R3上修改weight值,让R3去往2.2.2.0/24和9.9.9.0/24的bpg路由都走R1这条线。

BGP笔记4_BGP笔记_06

还没修改weight值之前R3的BGP路由:

BGP笔记4_BGP笔记_07

修改weight值:

BGP笔记4_BGP笔记_08

neighbor 1.1.1.1 weight 1这条命令是把从1.1.1.1发过来的BGP路由都把它的weight值修改为1,这个方向是in方向而不是out方向。

看看效果:

先软清一下:

BGP笔记4_BGP笔记_09

BGP笔记4_BGP笔记_10

如果我们要让R3去往2.2.2.0/24的路由往R1走,去往9.9.9.0/24的路由往R4走。

只需要在R3上把收到来自R1的2.2.2.0/24的BGP路由的weight值设置得比0高就可以了。

BGP笔记4_BGP笔记_11

上面的命令中,还额外配置了一条route-map W permit 20,这是一条空的route-map,是为了允许其他路由进入R3.

看看最后效果:

BGP笔记4_BGP笔记_12

这样可以做到负载分担的作用。

2、local preference attribute本地优先级属性(告诉IBGP邻居怎样离开AS)越大越好,默认为100.

BGP笔记4_BGP笔记_13

BGP笔记4_BGP笔记_14

BGP笔记4_BGP笔记_15

另外,单独控制:

BGP笔记4_BGP笔记_16

BGP笔记4_BGP笔记_17

BGP笔记4_BGP笔记_18

3、AS path,个数越少越好

BGP笔记4_BGP笔记_19

注意上图中,1 2的顺序。

下面我们要通告修改R2通告的AS path值,让R3去2.2.2.0/24的BGP路由原本往R4走变成往R1走。

 

BGP笔记4_BGP笔记_20BGP笔记4_BGP笔记_21BGP笔记4_BGP笔记_22 
BGP笔记4_BGP笔记_23

BGP笔记4_BGP笔记_24

BGP笔记4_BGP笔记_25

但是AS号不能像上面那样随便取,要是附近真有那样的AS号,则就真的会往哪个AS发,所以,我们一般是“加自己的AS号”像下面这样:

BGP笔记4_BGP笔记_26

4、MED Attribute(告诉EBGP邻居怎样进入AS)越小越好

BGP笔记4_BGP笔记_27

BGP笔记4_BGP笔记_28

现在R2去往8.8.8.0网络是往R4走的,因为这条路径cost值较小。

我们现在要让其往R1走,由于metric值默认为0,所以我们选择在R1提高metric值。。

BGP笔记4_BGP笔记_29 
BGP笔记4_BGP笔记_30 
BGP笔记4_BGP笔记_31 
BGP笔记4_BGP笔记_32这是拓展ping的结果。BGP笔记4_BGP笔记_33 
这是debug ip bgp update的结果。

因为你AS2有时候是不可控的,你只能控制本AS,所以得使用这些方法知道我们配置起了作用没有。

 

上面的各种属性中,我们最常用的就是本地优先级metric值

本文出自 “梦想不远” 博客,请务必保留此出处http://zjskobe.blog.51cto.com/2772091/836969