BGP实验.docx

上传人:b****7 文档编号:10902837 上传时间:2023-02-23 格式:DOCX 页数:24 大小:768.04KB
下载 相关 举报
BGP实验.docx_第1页
第1页 / 共24页
BGP实验.docx_第2页
第2页 / 共24页
BGP实验.docx_第3页
第3页 / 共24页
BGP实验.docx_第4页
第4页 / 共24页
BGP实验.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

BGP实验.docx

《BGP实验.docx》由会员分享,可在线阅读,更多相关《BGP实验.docx(24页珍藏版)》请在冰豆网上搜索。

BGP实验.docx

BGP实验

基本BGP配置实验

1.实验拓扑:

2.实验需求:

按照上述拓扑图使用BGP基本配置,使得R2和R3使用物理接口建立IBGP邻居,R2、R3、R1运行OSPF路由协议,R2和R4使用直连接口建立EBGP邻居,R3和R5使用直连接口建立EBGP邻居,R1不运行BGP路由协议,在R4上NETWORK4.4.4.4/32,看看R5能否学习到路由信息?

在R5上PING4.4.4.4/32看看能否ping通?

如果R2和R3使用环回口能不能够建立邻居关系呢?

R2和R4、R3和R5能否通过环回口能不能够建立邻居关系?

路由黑洞的解决方法

1.实验拓扑:

2.实验需求:

解决上个实验产生的路由黑洞

方法一、R1运行BGP路由协议,并且与R2、R3都建立IBGP邻居关系,实现全互联的的逻辑拓扑

方法二、使用物理互联来解决路由黑洞

方法三、使用隧道模式解决路由黑洞

拓展:

如果使用创建TUNNEL隧道模式解决路由黑洞问题,但是题目要求必须还是使用R2和R3的环回口建立邻居,我们怎样做到呢?

方法四、使用重分布来解决路由黑洞问题(不推荐)

在R2上把BGP123重分布进OSPF1(一般不建议将BGP的路由重分布进IGP,因为路由条目很大,很容易造成IGP的瘫痪。

EBGP和IBGP邻接关系建立实验

1.实验拓扑:

2.实验需求:

要求R4和R2使用环回口建立EBGP邻接关系,并且修改R4的BGPkeepalive时间间隔和HOLD时间间隔,修改成keepalive时间间隔是10S,HOLD时间间隔是30S。

修改R2的BGPKEEPALIVE时间间隔为30S,HOLD时间是150S,看看R4和R2还能否建立RBGP邻接关系?

要求IBGP也使用环回口建立邻接关系。

即使keepalive时间间隔不一致也是能够建立邻接关系的,但是他们会协商出一个最小的keepalive时间间隔和一个最小的HOLD时间。

使用peer-group来简化BGP邻居命令的配置

1.实验拓扑:

2.实验需求:

要求AS12345内部建立全互联的IBGP邻居。

并且全部邻居都是汉斯用环回口建立邻居。

3.实验结论:

使用pee-group的作用是可以有效地节省路由器的带宽,如果没有使用peer-group,那么BGP会为每一个邻居都创建一个数据表,使用peer-group后路由器只创建一个数据表应用于整个对等体组。

第三方下一跳路由实验

1.实验拓扑:

2.实验需求:

R4和R2使用直连接口建立EBGP邻居,R1和R2使用直连接口建立IBGP邻居,R1和R3使用直连接口建立EBGP邻居,查看第三方下一跳现象。

3.实验结论:

在MA环境下运行BGP,如果使用直连接口指定邻居,会产生第三方下一跳现象,有效的利用了带宽。

MA网络的下一跳:

当把一条路由发送给EBGP邻居时,如果接收这条路由的接口与EBGP邻居的更新源地址在同一网段的时候,路由的下一跳不改变。

BGP的认证试验

1.实验拓扑:

2.实验需求:

由于BGP只支持MD5认证,要求R4和R2直连简历EBGP邻居并且其认证,password为cisco

BGP同步问题

BGP同步的定义(只针对IBGP邻居):

从BGP学习到的路由不会最优除非从IGP业学习到这条相同的路由信息

BGP同步的目的就是为了防止路由黑洞。

如果BGP同步开启的情况下,AS内的一个路由器从IBGP邻居处学到一条路由,不会最优(不会传递),除非是从IGP学到同样一条路由。

在IOS12.2(8)T以后,BGP同步默认被禁用。

同步规则是为了在一个不是full-mesh的网络中解决【黑洞】而产生的。

如果路由器认为一条BGP路由存在黑洞的可能性,它就不会去传这条路由。

由于同步规则会对路由的传递产生影响,所以建议关闭它。

1.实验拓扑:

2.实验需求:

完全理解BGP同步的概念。

3.实验结论:

BGP同步的定义(只针对IBGP邻居):

从BGP学习到的路由不会最优除非从IGP业学习到这条相同的路由信息

BGP同步的目的就是为了防止路由黑洞。

如果BGP同步开启的情况下,AS内的一个路由器从IBGP邻居处学到一条路由,不会最优(不会传递),除非是从IGP学到同样一条路由。

在IOS12.2(8)T以后,BGP同步默认被禁用。

同步规则是为了在一个不是full-mesh的网络中解决【黑洞】而产生的。

如果路由器认为一条BGP路由存在黑洞的可能性,它就不会去传这条路由。

由于同步规则会对路由的传递产生影响,所以建议关闭它。

BGP自动汇总实验

BGP自动汇总定义:

是指其他路由协议重分布到BGP时会进行自动汇总,在最新的IOS中默认就关闭自动汇总的。

如果打开自动汇总,使用network可以使用主类网络通告路由条目,前提是路由表中要有明细路由条目。

也可以使用精确宣告的network。

如果关闭自动汇总,必须使用精确宣告的network,network必须和路由表中的路由条目一模一样。

1.实验拓扑:

2.实验需求:

了解BGP中自动汇总的定义。

R4和R2使用直连接口建立邻居关系,R2和R1、R3只用LO0建立邻居关系。

看看在默认情况下BGP是不是关闭自动汇总的?

在关闭自动汇总情况下,在R4上面宣告一条172.16.1.0/24路由条目,看看能否主类宣告?

打开R4的自动汇总宣告172.15.1.0/24,看看能否进行主类宣告?

查看自动汇总对BGP的影响。

3.实验结论:

BGP自动汇总定义:

是指其他路由协议重分布到BGP时会进行自动汇总,在最新的IOS中默认就关闭自动汇总的。

BGP的自动汇总对整个BGP路由协议是没有作用的,只是对重分布进BGP的其他路由协议进行自动汇总。

如果打开自动汇总,使用network可以使用主类网络通告路由条目,前提是路由表中要有明细路由条目。

也可以使用精确宣告的network。

当其他IGP协议重分布进BGP时,默认会进行自动汇总,不会携带原有的METRIC值值和掩码,next-hop

 

如果关闭自动汇总,必须使用精确宣告的network,network必须和路由表中的路由条目一模一样。

当其他IGP协议重分布进BGP时,携带原有的METRIC值和掩码,next-hop

BGP计时器实验

1.实验拓扑:

2.实验需求:

首先确保邻接关系建立起来,然后修改R4的本地BGP计时器,keepalive时间间隔改成70S,HOLD时间改成200S,看看能不能够与R2形成邻接关系?

在把R2的BGP计时器改成keepalive时间间隔为100S,HOLD时间为250S,看看能否形成邻居?

在使用neighbor命令看看是什么现象?

3.实验结论:

两个BGP路由器建立邻接关系,将会协商使用最小的keepalive时间间隔和最小的HOLD时间,如果使用的是neighbor关键字命令就会覆盖掉使用timesbgp关键字设置的值,而不管他的大小。

BGP邻居关系的建立过程

1.实验拓扑:

2.实验需求:

要求R1用R2的环回口2.2.2.2建立邻居关系,R2用R1的环回口11.1.1.1建立邻居关系,看看是否能够建立起来?

1、idle空闲--查找是否有去往邻居的路由

2、connect连接--建立TCP三次握手

3、Active活动--协商还未成功

4、opensent打开发送--互发参数进行协商,也就是发送open报文,确定能否建立邻居。

5、openconfirm打开确认--协商取得一致,开始发送和接受keepalive报文,成功后进入established状态

6、established邻居建立完成并开始交换update数据包。

4.实验结论:

Bgp建立邻居实际上是互相建立邻居,互相备份

只要一个方向上建立的邻居,邻居就会up起来。

邻居建立的含义:

在邻居各接口路由互通的前提下,允许对方的更新源地址访问本地的179端口。

BGP聚合实验

1.实验拓扑:

2.实验需求:

按照上述拓扑配置,要求EBGP使用直连接口建立邻居,IBGP使用环回口建立邻居关系,在R4上创建4个环回口,宣告进BGP,使用BGP聚合命令,了解BGP聚合命令的使用方法

3.实验结论:

BGP下发默认路由

1.实验拓扑:

2.实验需求:

使用尽可能多的方法使得BGP下发默认路由

方法一:

创建一条默认路由并且宣告进BGP

方法二:

创建一条就默认路由,再使用重分布进BGP

方法三:

使用命令neighborXXXXXdefault-originate来实现

方法四:

使用条件下发默认路由

IGP和BGP的重分布

1.实验拓扑:

2.实验需求:

假设AS123内运行EIGRP路由协议,正常运行BGP,把IGP重分布进BGP看看现象?

假设IGP是OSPF呢?

再把BGP重分布进IGP,看看产生什么现象?

3.实验结论:

将OSPF重分布进BGP的时候,默认只能将internal的路由重分布进BGP。

如果还想将OSPF的其他路由重分布进BGP,可以用以下命令:

redistributeospf110match[internal|external|nssaexternal]

向IGP中注入BGP路由:

一般不建议将BGP的路由重分布进IGP,因为路由条目很大,很容易造成IGP的瘫痪。

默认情况下只能将EBGP的路由重分布进IGP。

默认不让IBGP的路由重分布进IGP是为了防止环路。

如果非要将IBGP的路由重分布进IGP。

需要在进程内使用命令:

bgpredistribute-internal

BGP属性实验

1.实验拓扑:

2.

3.实验需求:

了解BGP选路规则

一、修改weight值:

目前R3上去4.4.4.4/32的数据下一跳是指向R2的,假设我们想在R3上看到去4.4.4.4/32的数据下一跳是指向R1的,修改weight怎么实现?

二、修改local-preference值

目前R4上面去172.16.1.0/24的数据下一跳是指向R1的,R2上面去172.16.1.0/24的数据下一跳是指向RBGP邻居R3的,我们现在要使得AS124内部的路由器去172.16.1.0/24的数据下一跳指向R1,怎样实现?

三、修改AS-PATH属性

四、修改起源属性

目前R3收到两条4.4.4.4/32的路由,现在对4.4.4.4/32这条路由修改起源属性。

R3(config)#access-list1permit4.4.4.4

五、修改MED值

R4上目前是选择下一跳是R1去192.168.1.0/24我们修改MED值使得R4去192.168.1.0/24下一跳指向R2。

是用next-hop属性代替next-hop-self命令

1.实验拓扑:

2.实验需求:

是用下一跳属性代替命令next-hop-self。

路由反射器实验

1.实验拓扑:

2.实验需求:

要求实验路由反射器实现5.5.5.5能够ping通4.4.4.4

BGP联邦实验

1.实验拓扑:

2.实验需求:

要求使用联邦使得R4上能够学习到5.5.5.5/24的路由条目

3.实验结论:

路由属性实验2

1.实验拓扑:

2.实验需求:

3.实验步骤:

一、修改MED值

现在目前R4去往172.16.0.0的数据下一跳是3.3.3.3,我们通过修改MED属性来调节成下一跳指向R2的2.2.2.2。

可以再R3把路由条目传给R4的时候作用route-map来实现:

二、修改起源属性

R1#shipbg

NetworkNextHopMetricLocPrfWeightPath

*4.4.4.0/2413.0.0.30234i

*>12.0.0.20234i

目前R1上面学习过来的4.4.4.4/24的路由条目起源都是i的,表示是BGP内的,现在我们通过修改起源属性来修改使得R1去4.4.4.4/24下一跳指向13.0.0.3。

三、修改AS-path属性

R4#shipbg

NetworkNextHopMetricLocPrfWeightPath

*i192.168.0.02.2.2.2010001i

*>i3.3.3.3010001i

目前R4上面去往192.168.0.0的数据下一跳是3.3.3.3最优,我们通过修改R1传给R3是AS-PATH属性使得R4去往192.168.0.0下一跳是指向2.2.2.2

四、修改nexthop属性

R4#shipbg

NetworkNextHopMetricLocPrfWeightPath

*>i192.168.0.03.3.3.301000111111i

*i2.2.2.2010001i

目前R4去往192.168.0.0的数据是走下一跳是3.3.3.3,是通过第8条选路原则选路的,我们通过修改nexthop让R3传给R4的192.168.0.0的路由下一跳不可达。

五、修改localprf属性

R4#shipbg

NetworkNextHopMetricLocPrfWeightPath

*i172.16.0.0/243.3.3.325010001i

*>i2.2.2.2010001i

目前R4上面去往172.16.0.0/24的数据下一跳是指向2.2.2.2,现在通过修改localprf值使得去往172.16.0.0数据下一跳指向3.3.3.3。

六、修改weight值

R1#shipbg

NetworkNextHopMetricLocPrfWeightPath

*4.4.4.0/2412.0.0.20234?

*>13.0.0.30234e

目前R1去往4.4.4.0/24的数据下一跳是指向13.0.0.3,我们通过修改本路由器的weight值使得下一跳指向12.0.0.2。

Bgp社团属性实验

1.实验拓扑:

2.实验需求:

用实验来验证社团属性的作用(共有的和私有的)

·社团属性中已经预定义好的三类well-known属性:

Internet:

此属性为默认属性会全internet传递

local-AS:

 携带此属性的路由不会传出小AS。

no-export:

 携带此属性的路由不会传出本AS外,只会传给IBGP。

(联邦中的小AS会传递)。

no-advertise:

携带此属性的路由不会通告给任何BGP邻居。

也就是说只传达给一个邻居,只传一跳

3.实验步骤:

BGP一些小feature实验

1.实验拓扑:

2.实验需求:

按照上述拓扑图配置bgp路由协议,要求修改R4和R2的路由更新最小时间间隔为20S,在R4上做配置使得通告4.4.4.4/24的时候能够抑制掉44.4.4.4/24路由条目,仅当4.4.4.4/24断掉了才会自动通告44.4.4.4/24。

使用distribute-list来过滤22.2.2.0/24这条路有明细传给R4。

拓展:

现在假设在R4上面添加4个环回口172.16.0.1/24172.16.1.1/24172.16.2.1/24172.16.3.0/24,并且宣告到BGP中,使用路由聚合聚合4条明细,现在需求使用分发列表来实现抑制明细路由条目,怎样实现?

BGP最大路由条目实验

1.实验拓扑:

2.实验需求:

按照上述拓扑配置,把R2的最大路由条目数修改成10条,阀值调成8条,看看现象。

BGP邻居flapping实验

1.实验拓扑:

2.实验需求:

R1、R2运行EIGRP100,宣告环回口,R1、R2使用环回口建立EBGP邻居,并且把R1、R2的BGPkeepalive时间间隔改成10S,holdtime改成30S,这样方便查看现象,看看会产生什么现象呢?

假如我们使用静态路由的方式替代EIGRP,使用24位的静态路由指向对端的环回口地址,又会出现什么问题呢?

尽可能用最多的方法解决问题。

我们发现邻居关系抑制在UP和DOWN状态切换,这时我们很不想看到的,这是为什么呢?

根据推敲我们发现,BGP建立邻居关系是使用TCP连接的。

原本的1.1.1.1和2.2.2.2建立BGP的邻居关系,本来有EIGRP的路由条目使得路由可达,所以EBGP邻居成功建立。

建立完毕后BGP宣告自己的环回口,使得BGP学习到环回口的网络信息,由于EBGP的管理距离是20,所以会覆盖掉EIGRP管理距离为90的路由条目信息,在路由表中出现B2.2.2.2[20/0]via2.2.2.2,00:

00:

06的路由信息,但是BGP需要发送keepalive包来保鲜,进过路由器的递归查询发现去往2.2.2.2的路由下一跳是2.2.2.2,这样问题就出现了。

我们在HOLD时间内都收不到keepalive包,邻居关系就会DOWN掉。

之后EIGRP的路由又出现在路由表中,所以邻居关系又能够建立起来。

这就是问题形成的原因

解决方法一:

使用直连口建立邻居关系

方法二、使用静态路由代替EIGRP

这两种方法是最普遍的,因此不做阐述。

方法三:

修改BGP的管理距离

AS迁徙实验

1.实验拓扑:

2.实验需求:

现在R1为某公司的边界网路由器,R2为已经被R4的AS200兼并了的AS,现要求使用AS迁徙来实现不用改变R1上的配置实现AS300到AS200的兼并。

Backdoor实验

1.实验拓扑:

2.实验需求:

R1和R2、R1和R3都形成EBGP邻居关系,并且宣告172.16.0.0/24。

R2和R3运行EIGRP,并且宣告172.16.0.0/24。

我们看看会发生什么现象,怎么解决?

BGP环路实验

1.实验拓扑:

2.实验需求:

R1和R2建立EBGP邻居关系,R2和R3建立IBGP邻接关系,全网运行EIGRP100,不宣告172.16.0.0/24路由条目。

在BGP中宣告172.16.0.0/24的路由条目,看看会出现什么问题,怎么解决?

解决方法二:

使用route-map来修改路由的下一跳属性

解决方法三:

使用PBR的next-hop来解决下一跳问题

使用dampening技术解决路由抖动

1.实验拓扑:

2.实验需求:

R1和R2建立EBGP邻接关系,R2在BGP中宣告172.16.0.0/24,在R1上配置dampening,使得172.16.0.0/24反复抖动,查看现象!

查看dampening技术的原理。

Dampening的原理:

当在路由器上启用Dampening后,如果有一条路由up->down,路由器会对这条路由记录一个惩罚值,每down一次,惩罚值加1000,当惩罚值达到startsuppress(开始抑制)值时,这条频繁抖动的路由被抑制。

一条被抑制的路由不会被使用,也不会传递。

BGP默认不启用Dampening,需要手一启用,Dampening仅对EBGP邻居传来的路由起效。

3.实验结论:

Dampening的原理:

当在路由器上启用Dampening后,如果有一条路由up->down,路由器会对这条路由记录一个惩罚值,每down一次,惩罚值加1000,当惩罚值达到startsuppress(开始抑制)值时,这条频繁抖动的路由被抑制。

一条被抑制的路由不会被使用,也不会传递。

BGP默认不启用Dampening,需要手一启用,Dampening仅对EBGP邻居传来的路由起效。

AS-PATH和正则表达式实验

1.实验拓扑:

(1)实验需求:

按照上述拓扑配置,全网运行BGP,在R1上能够看到许多路由条目,使用正则表达式来过滤路径路由。

现在我们进行过滤:

要求在R1上面有AS300的路由条目拒绝掉,过滤掉带有AS200的(穿越的和AS200自己产生的)路由条目。

只能看见本地产生的路由条目以及AS500的路由条目。

最后R1上面应该只有4条路由(2条自身产生的,两条是AS500传递过来的),现在需求把AS500做路由策略使得as-path增加5次。

要求R1路由器不接收4条AS以上的路由。

正则表达式我们可以通过shipbgpregexp来查看这个正则表达式匹配了多少路由条目,这样可以减少很多错误,很方便,强烈推荐。

2.实验结论:

<RegularExpression>正则表达式:

正则表达式:

一种用来做匹配的工具,可用来匹配字符串,在BGP中可用来按AS号进行路由过滤,控制路由器只接受某些特定的AS传来的路由。

常用的通配符:

^:

代表路径列表(字符串)的开头

$:

代表路径列表(字符串)的结尾

_:

代表一个符号(只能是空格/逗号/左括号/右括号)

.:

代表任何一个字符

*:

星号前的字符可重复0次或多次

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 历史学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1