并在IBGP路由的前面打上r,表示自已有一条同样的IGP路由。在与其竞争时IBGP路由失败了。
<Synchronization>同步。只针对IBGP邻居
·Do not use or advertise to an external neighbor a route learned by IBGP until a matching route has been learned from an IGP.
解释:开启同步的情况下,AS内的一个路由器从IBGP邻居处学到一条路由,不用也不传,除非是从IGP学到同样一条路由。(网络号和掩码都必须完全一样)
同步规则是为了在一个不是full-mesh的网络中解决路由黑洞而产生的。如果路由器认为一条BGP路由存在黑洞的可能性,它就不会去传这条路由。由于同步规则会对路由的传递产生影响,所以建议关闭它。
router bgp 123
no synchronization
BGP路由不优的2个原因: 1)同步问题
2)下一跳是否可达
解决方案:
router bgp 123
no synchronization //关闭同步,高版本IOS默认开启 neighbor 3.3.3.3 next-hop-self
BGP支持MD5认证 router bgp 123
neighbor 2.2.2.2 password cisco
清除BGP会话:
当你将一个policy应用于BGP的时候,由于BGP是不会做周期更新,所以需要手动做更新。
clear ip bgp * //来硬的,会DOWN掉邻居关系 clear ip bgp * soft //软清,不会down掉邻居关系
neighbor [ip-address] soft-reconfiguration inbound 本命令告诉BGP路由器:保存从邻居那里学到的所有路由更新,供入站策略被修改时使用。这样就无需对方重新发送信息。
<Auto-Summary>
·在开启自动汇总的情况下,当其他IGP协议重分布进BGP时,默认会进行自动汇总。其它情况下BGP不会自动汇总
1、在auto-summary情况下,将IGP重分布进BGP,不会携带原有的METRIC值,next-hop
2、在no auto-summary情况下,会携带原有的METRIC值和掩码,next-hop
router bgp 123
no auto-summary //关闭自动汇总
<Summary>aggregate聚合
1)通过Network做汇总:
方法:先为路由器配置一条静态的汇总路由,再宣告进BGP就可以了,注意不要把明细路由宣告进BGP
ip route 192.168.0.0 255.255.252.0 Null0
router bgp 123
network 192.168.0.0 mask 255.255.252.0
2)Aggregate:
使用aggregate命令做路由聚合
第一步:要先宣告每一条明细
第二步:在BGP进程中用以下命令做聚合
例一:如下图所示,要求在R2上做聚合,让R1收到一条192.168.0.0/16的聚合路由
R2:
router bgp 123
aggregate-address 192.168.0.0 255.255.255.0
注意:观察R1,你会发现,默认情况下,明细和汇总路由都会被发出。
例二:以下命令做聚合,则只发汇总,不发明细 R2:
router bgp 123
aggregate-address 192.168.0.0 255.255.255.0 summary-only //只通告汇总
例三:还可用抑制列表对其中的一部分明细路由进行抑制 Suppress-map 抑制列表 -----抓的就是被抑制的路由
ip prefix-list 1 permit 192.168.2.0/24
route-map WOLF
match ip address prefix-list 1
router bgp 123
aggregate-address 192.168.0.0 255.255.255.0 suppress-map WOLF//抑制192.168.2.0/24路由
注意:如果用了suppress-map不起作用的话,要清一下本路由器,要硬清才行
例四:
使用aggregate做汇总后,在汇总路由中的一些明细属性将会消失,用下面这一
命令可以还原 router bgp 123
aggregate-address 192.168.0.0 255.255.255.0 as-set //还原AS属性
*> 192.168.0.0/22 0.0.0.0 100 32768 4 i {4,5} (明细从不同AS传来)
如果不将明细路由的属性还原,有可能导致路由回馈现象发生: 路由回馈现象:
在R2上起两条路由宣告进BGP,在R1上做聚合,想想有啥问题。在这时as-set命令就有大作用了。
aggregate命令参数详解:
aggregate-address
advertise-map//Set condition to advertise attribute as-set//Generate AS set path information attribute-map//Set attributes of aggregate route-map//Set parameters of aggregate
summary-only//Filter more specific routes from updates
suppress-map //Conditionally filter more specific routes from updates nlri
? Advertise-map----只对advertise-map里面匹配的路由进行聚合。当
advertise-map里面匹配的明细路由全部消失后,即使聚合路由范围内还有其他明细路由,聚合路由也将消失。当与as-set合用时,只继承advertise-map里面匹配的明细路由的属性。
? As-set----让聚合路由继承明细路由的属性,包括:as-path,
local_preference,community,origin-code。与advertise-map合用,只继承advertise-map里面匹配的明细路由的属性。 ? ?
Attribute-map和route-map----这两个参数一样,可以将聚合路由的属性清除掉(除了as-path属性),添加自己需要添加的属性。
Summary-only----将聚合路由所包括的所有明细路由都抑制掉,被抑制的路由在bgp的转发表里,显示为s,代表suppress的意思。发送更新时,只发送聚合路由。可以与neighbor 1.1.1.1 unsuppress-map XX合用,对特定邻居漏过特定的明细路由。
?
Suppress-map----将suppress-map里面匹配的路由抑制掉,被抑制的路由在bgp的转发表里,显示为s,代表suppress的意思。发送更新时,只发送聚合路由和没有被抑制的明细路由。可以neighbor 1.1.1.1 unsuppress-map XX合用,对特定邻居漏过特定的明细路由。
<IGP与BGP之间的重分布>
redistribute命令可以将IGP的路由引入BGP。 例:
router bgp 123
redistribute eigrp 90
注意:
将OSPF重分布进BGP的时候,默认只能将internal的路由重分布进BGP。如果还想将OSPF的其他路由重分布进BGP,可以用以下命令。
router bgp 123
redistribute ospf 110 match [internal | external | nssa external] //后面的参数可以任意组合