《E-配置BGP.ppt》由会员分享,可在线阅读,更多相关《E-配置BGP.ppt(170页珍藏版)》请在金锄头文库上搜索。
1、BGP 自治系统自治系统AS是一组被统一管理的路由器,它们使用相同的内部网关协议和统一的度量值在AS内部路由分组,并使用外部网关协议将分组路由到其它AS.自主系统使用多种IGP,并采用多种度量值.BGP用于连接自主系统,提供AS-AS间的路由.确保交换无环路的网络信息.路径矢量路由协议路径矢量路由协议IGPs 用于在自主系统内部交换路由选择信息.BGP 的主旨是提供一种域间路由选择系统,确保自主系统只能够无环路的交换路由选择信息。BGP路由器交换有关前往目标网络的路径的信息.BGP 可以管理和定义策略或规则来使数据如何穿越自治系统(不能管别人,只能管自己).BGP 基于策略的路由基于策略的路由
2、BGP 路由器只能将其使用的路由通告给邻接自主系统中的对等体, 采用的是逐跳的路由选择模式(AS-by-AS).何时使用和不使用何时使用和不使用BGP仅当完全理解BGP的影响,且至少满足下列条件之一时,才应在AS中使用BGP:AS允许分组穿越它前往其它的自主系统(例如:服务提供商)AS有多条到其它自主系统的连接必须对数据流进入和离开AS的方式进行控制.BGP并非总是适合用来连接自主系统,有下列条件之一的,不要使用BGP:只有一条到Internet或另一个AS的连接路由器没有足够的内存和处理器能力来处理BGP更新 对路由过滤和BGP路径选择过程的了解有限自主系统之间的链路的带宽较低BGP特点特点
3、BGP是一种路径矢量协议,与其它的标准距离矢量协议有许多不同的地方:可靠的更新: BGP路由器之间建立TCP(179端口)连接,并通过交换消息来指出和确认连接参数增量式触发更新周期性发送存活消息(keepalive)来保持连接,类似于OSPF等发送的hello消息丰富的度量 (更多的路径矢量或属性)使用TCP来提供窗口技术和可靠性机制。而不象OSPF和EIGRP那样使用1-TO-1窗口为大型网络设计的协议BGP 数据库数据库邻居表 BGP邻居的列表BGP 转发数据库从邻居学到的所有网络包含到达网络的多条路径 包含BGP路径的多种属性IP 路由选择表到达网络的最佳路径BGP 消息类型消息类型BG
4、P 定义了下列的消息类型:Open(打开消息)包含版本号 自治系统号 保持时间 RID 等可选参数Keepalive(存活消息)Update(更新)只包含一条路径的信息,多条路径需要多条消息。包含网络的路径属性Notification(通知消息)当发生错误检测到错误并发出通知,然后立刻关闭BGP连接BGP 状态状态当建立BGP会话,路由器与邻居之间的关系经过如下状态:1. Idle(空闲): 路由器查看路由表,邻居是否可达.2. Connect(连接): 路由器发现路由并完成TCP连接的三次握手.3. Active:活动-协商还未成功4. Open sent(打开发送): 发送BGP会话之间的
5、连接参数.5. Open confirm(打开确认): 路由器收到连接参数一致性的确认. Alternatively, router goes into active state if no response to open message6. Established(已建立): 邻居关系建立BGP Established and Idle StatesIdle: BGP连接的第一个状态,对资源进行初始化,发起它自己到其它BGP对等体的传输连接,并侦听其它对等体所发起的连接。当出现错误后BGP可以从任何状态退回到空闲状态。Established: 邻居关系建立的最终状态。这时BGP将开始与它的
6、对等体交换路由更新分组。BGP Active State TroubleshootingActive: BGP试图通过发起TCP连接来获得对等体。如果成功就转到OpenSent状态。如果一个邻居状态总在连接和活跃之间变化,说明该TCP连接没有生效。Configuring Basic BGP理解理解BGP的概念和术语的概念和术语BSCI v2.27-11对等体(邻居)对等体(邻居)BGP对等体=BGP邻居 它是一个BGP发言者,被配置成与其它BGP发言者建立邻居关系,以便彼此直接交换BGP路由选择信息BGP发言者将有限的BGP邻居作为对等体,并同其建立基于TCP的关系,BGP对等体可以位于AS的
7、内部也可以是AS的外部.外部外部BGP邻居邻居当两个BGP对等体位于不同的自治系统号中,它们的关系就叫做EBGP关系.EBGP 邻居关系默认时需要直接相连内部内部BGP邻居邻居当两个BGP对等体位于相同的自治系统号中,它们的关系就叫做IBGP关系.邻居不需要直接连接,只要它们能够彼此到达对方.AS内部如何防止环路内部如何防止环路由由IBGP对等体学习到的路由对等体学习到的路由不会被通告给其他的不会被通告给其他的IBGP对等体对等体LondonDenver172.16.1.0/24AS 50001FlorenceXIBGPIBGP默认,通过默认,通过IBGP邻居学到的路由不会发送给自己的邻居学到
8、的路由不会发送给自己的IBGP邻邻居对等体居对等体,因此它们需要全互连因此它们需要全互连.IBGP 水平分割原则水平分割原则Router C 由于没有运行由于没有运行IBGP,它不会从路由器它不会从路由器B学到关于学到关于10.0.0.0的路由的路由,所以它将会丢弃关于网络所以它将会丢弃关于网络 10.0.0.0.的数据包的数据包; Router B and Router E 没有将没有将BGP重分布到重分布到OSPF中中(C会扔弃数据包,但会扔弃数据包,但F根本不知道根本不知道C的情况,所以会不停的把数据的情况,所以会不停的把数据包发往包发往C,这就是著名的路由黑洞这就是著名的路由黑洞)黑洞
9、是如何形成的黑洞是如何形成的?如何避免黑洞如何避免黑洞?-同步规则同步规则同步规则同步规则 从从IBGP对等体学习到路由时,必须进行以下检查:对等体学习到路由时,必须进行以下检查: 1、next-hop是否可达是否可达 2、目标网络是否已经存在于、目标网络是否已经存在于IGP路由表路由表 (同步)(同步) 同步规则定义:同步规则定义: BGP不允许将从不允许将从IBGP对等体学习到的路由直接发布对等体学习到的路由直接发布 给给EBGP对等体,除非这些路由已经被对等体,除非这些路由已经被IGP学到!学到!no synchronization (同步规则是用来指导和约束同步规则是用来指导和约束BG
10、P规划和配置,以避规划和配置,以避免路由黑洞的发生,只要我们能确保黑洞不会发生,我们就可以关闭同步。免路由黑洞的发生,只要我们能确保黑洞不会发生,我们就可以关闭同步。类似于现实生活中的法律,如果我们遵纪守法,我们不用担心法律的制裁类似于现实生活中的法律,如果我们遵纪守法,我们不用担心法律的制裁)解决解决BGP穿越的方法一:穿越的方法一:BGP和IGP之间进行重分布,可以解决同步,但一般不建议重分布。IBGP全网状互联(可关闭同步规则)全网状互联(可关闭同步规则)解决解决BGP穿越的方法二:穿越的方法二:规则总结规则总结 由由EBGP对等体学习来的路由可以直接进入对等体学习来的路由可以直接进入I
11、P路由表,路由表, 并且通告给自己的并且通告给自己的IBGP对等体和其他对等体和其他EBGP对等体。对等体。 由由IBGP对等体学习来的路由不可以通告给其他的对等体学习来的路由不可以通告给其他的 IBGP对等体。对等体。 由由IBGP对等体学习来的路由能否直接进入对等体学习来的路由能否直接进入IP路由表?路由表?(检查下一跳是否可达,以及检查同步规则)检查下一跳是否可达,以及检查同步规则) 由由IBGP对等体学习来的路由能否通告给对等体学习来的路由能否通告给EBGP对等体?对等体?Configuring Basic BGP配置基本的配置基本的BGPBSCI v2.27-22BGP 命令命令ro
12、uter bgp autonomous-systemRouter(config)#仅仅此命令并不能激活仅仅此命令并不能激活BGP.一个路由器上只能配制一个自治系统一个路由器上只能配制一个自治系统.自治系统号用来识别这台路由器是属于哪个自治系统的自治系统号用来识别这台路由器是属于哪个自治系统的.自治系统号也用来识别将来的指定的邻居关系是自治系统号也用来识别将来的指定的邻居关系是IBGP关关系还是系还是EBGP关系关系.指定指定BGP邻居邻居neighbor ip-address | peer-group-name remote-as autonomous-systemRouter(config-
13、router)#指定与当前路由器建立会话的对等路由器指定与当前路由器建立会话的对等路由器.remote-as 后指定的后指定的AS号,将用来确定指定的邻居是号,将用来确定指定的邻居是IBGP邻居还是邻居还是EBGP邻居关系邻居关系.IP地址是所有前往该邻居路由器的地址是所有前往该邻居路由器的BGP分组的目标地址分组的目标地址.要建立邻居关系,无论是要建立邻居关系,无论是IBGP还是还是EBGP首先要保证邻居首先要保证邻居是可到达的是可到达的. EBGP和和IBGP都需要此命令建立邻居都需要此命令建立邻居示例示例BGP关闭邻居关系关闭邻居关系neighbor ip-address | peer-
14、group-name shutdown Router(config-router)#no neighbor ip-address | peer-group-name shutdownRouter(config-router)#管理性的关闭邻居关系管理性的关闭邻居关系如果对邻居路由器的策略进行修改,则需要关闭邻居关系,修改后重如果对邻居路由器的策略进行修改,则需要关闭邻居关系,修改后重新启用邻居关系新启用邻居关系启用邻居关系启用邻居关系指定源指定源IP地址地址BGP neighbor命令将更新分组的目标IP地址告知BGP进程,路由器必须决定在BGP路由选择更新中,将哪个地址用作源IP地址(一般用
15、外出接口的IP).对于BGP分组,源IP地址必须与另一台路由器上相应的neighbor命令指定的地址相同.如果相同,则可以建立邻居关系.如果不同,则分组将被BGP忽略.BGP不接受主动提供的更新,它必须知道每台邻接路由器,且对于每台邻接路由器都有一个相应的neighbor命令.IBGP 对等示例对等示例BGP 邻居的更新源地址邻居的更新源地址neighbor ip-address | peer-group-name update-source interface-type interface-numberRouter(config-router)#此命令用来指定此命令用来指定BGP进程用哪个地
16、址做为对邻居的更新源地址进程用哪个地址做为对邻居的更新源地址.通常使用环回地址来作为更新源地址,因为环回地址总是可用的通常使用环回地址来作为更新源地址,因为环回地址总是可用的.在两台路由器中必须有到更新源的路由在两台路由器中必须有到更新源的路由.通常只用与通常只用与IBGP邻居关系之间邻居关系之间.默认时默认时EBGP邻居关系要求直连,邻居关系要求直连, 环回地址对于环回地址对于EBGP来说不是相互直接相来说不是相互直接相连的。如果连的。如果EBGP之间使用环回口建邻居,之间使用环回口建邻居,还需要指定多跳还需要指定多跳。环回接口示例环回接口示例EBGP之间的多跳之间的多跳Next HopBG
17、P is an AS-by-AS routing protocol, not a router-by-router routing protocol. In BGP, the next hop does not mean the next router; it means the IP address to reach the next AS.Router A advertisesnetwork 172.16.0.0 torouter B in EBGP, with a next hop of 10.10.10.3.Router B advertises172.16.0.0 in IBGP t
18、orouter C, keeping 10.10.10.3as the next-hop address.Next-hop 属性属性LondonDenver172.16.1.1/24AS 50001Florence172.16.1.2/24172.16.1.3/24AS 50002192.168.1.0/24192.168.2.0/24192.168.3.0/24IBGPEBGPnext-hop-self 命令命令强制邻居的下一跳指向自己.这个下一跳地址和更新源地址是相同的.neighbor ip-address | peer-group-name next-hop-selfRouter(co
19、nfig-router)#示例示例 neighbor peer-group-name peer-group Router(config-router)#创建对等体组创建对等体组对等体组对等体组neighbor ip-address peer-group peer-group-nameRouter(config-router)#定义一个邻居加入到这个组中来定义一个邻居加入到这个组中来当有很多策略相同的邻居关系时,它就变的非常有用当有很多策略相同的邻居关系时,它就变的非常有用成员可以有不同的入站策略成员可以有不同的入站策略一个对等体组只需要一次更新实例,高效一个对等体组只需要一次更新实例,高效简单
20、化配置简单化配置Router C Using a Peer GroupRouter C Without a Peer Grouprouter bgp 65100neighbor 192.168.24.1 remote-as 65100neighbor 192.168.24.1 update-source loopback 0neighbor 192.168.24.1 next-hop-selfneighbor 198.101.24.1 distribute-list 20 outneighbor 192.168.25.1 remote-as 65100neighbor 192.168.25.1
21、 update-source loopback 0neighbor 192.168.25.1 next-hop-selfneighbor 198.101.25.1 distribute-list 20 outneighbor 192.168.26.1 remote-as 65100neighbor 192.168.26.1 update-source loopback 0neighbor 192.168.26.1 next-hop-selfneighbor 198.101.26.1 distribute-list 20 outrouter bgp 65100neighbor internal
22、peer-groupneighbor internal remote-as 65100neighbor internal update-source loopback 0neighbor internal next-hop-selfneighbor internal distribute-list 20 outneighbor 192.168.24.1 peer-group internalneighbor 192.168.25.1 peer-group internalneighbor 192.168.26.1 peer-group internal示例示例 BGP network 命令命令
23、 network network-number mask network-mask route-map map-tag Router(config-router)#这个命令用来告诉这个命令用来告诉BGP通告什么网络通告什么网络,而不是象而不是象IGP一样在接口一样在接口上启用协议上启用协议 .如果没有指定子网掩码,默认时通告主类网络,它支持无类前如果没有指定子网掩码,默认时通告主类网络,它支持无类前缀,路由器可以通告子网缀,路由器可以通告子网 网络或者超网网络或者超网在通告之前在通告之前BGP,BGP会查看路由表是不是有路由会查看路由表是不是有路由Example: BGP network Co
24、mmand network 192.168.1.1 mask 255.255.255.0Router(config-router)#The router looks for exactly 192.168.1.1/24 in the routing table, but cannot find it, so it will not announce anything. network 192.168.0.0 mask 255.255.0.0Router(config-router)#The router looks for exactly 192.168.0.0/16 in the routi
25、ng table.If the exact route is not in the table, you can add a static route to null0 so that the route can be announced.BGP 同步同步同步规则: 仅当从IBGP邻居那里获悉的路由出现在本地路由选择表中后,BGP进程才将其加入到IP路由选择表中.确保AS内路由信息的一致性避免黑洞问题如果运行全互联IBGP,可以关闭同步。off by default in Cisco IOS software release 12.2(8)T and laterno synchronizati
26、on Router(config-router)#关闭同步可减少关闭同步可减少IGP通告的路由数,提高通告的路由数,提高BGP的会聚速度,的会聚速度,默认是被打开的默认是被打开的synchronization Router(config-router)#Enables BGP synchronization so that a router will not advertise routes in BGP until it learns them in an IGPIf synchronization is on then:Routers A, C, and D would not use o
27、r advertise the route to172.16.0.0 until they receive the matching route via an IGP.Router E would not hear about 172.16.0.0.If synchronization is off, then:Routers A, C, and D would use and advertise the route that theyreceive via IBGP; router E would hear about 172.16.0.0.If router E sends traffic
28、 for 172.16.0.0, routers A, C, and Dwould route the packets correctly to router B.示例示例BGP 配置实验配置实验1. RouterB(config)# router bgp 650002. RouterB(config-router)# neighbor 10.1.1.2 remote-as 645203. RouterB(config-router)# neighbor 192.168.2.2 remote-as 650004. RouterB(config-router)# neighbor 192.168
29、.2.2 update-source loopback 05. RouterB(config-router)# neighbor 192.168.2.2 next-hop-self6. RouterB(config-router)# network 172.16.10.0 mask 255.255.255.07. RouterB(config-router)# network 192.168.1.08. RouterB(config-router)# network 192.168.3.09. RouterB(config-router)# no synchronizationExample:
30、 BGP Active State TroubleshootingAS number misconfiguration: At the router with the wrong remote AS number:((本端路由器as号错误)%BGP-3-NOTIFICATION: sent to neighbor 172.31.1.3 2/2 (peer in wrong AS) 2 bytes FDE6FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF 002D 0104 FDE6 00B4 AC1F 0203 1002 0601 0400 0100 0102 0
31、280 0002 0202 00 At the remote router:(对端路由器AS号错误)%BGP-3-NOTIFICATION: received from neighbor 172.31.1.1 2/2 (peer in wrong AS) 2 bytes FDE6BGP 会话建立过程会话建立过程debug ip bgpRouterA#BGP : 172.16.1.2 passive openBGP : 172.16.1.2 went from idle to connectBGP : 172.16.1.2 open rcvd, version 4BGP : 172.16.1.2
32、 went from connect to open sentBGP : 172.16.1.2 sending open, version 4BGP : 172.16.1.2 went from open sent to open confirmBGP : Scanning routing tablesBGP : 172.16.1.2 went from open confirm to establishedRouterA#查看查看BGPRouterA# show ip bgp summaryBGP table version is 23, main routing table version
33、 2310 network entries and 11 paths using 1242 bytes of memory4 BGP path attribute entries using 380 bytes of memoryBGP activity 23/13 prefixes, 38/27 paths0 prefixes revised. Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQUp/Down State/PfxRcd10.1.1.100 4 65200 211 211 13 0 0 00:01:53 5192.168.1.18 4 6
34、5101 214 226 23 0 0 00:00:13 1192.168.1.34 4 65101 214 226 23 0 0 00:00:09 1192.168.1.50 4 65101 214 225 23 0 0 00:00:06 3show ip bgp 命令命令RouterA# show ip bgpBGP table version is 23, local router ID is 192.168.1.49Status codes: s suppressed, d damped, h history, * valid, best, i - internalOrigin cod
35、es: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path* 10.0.0.0 10.1.1.100 0 0 65200 i* 172.16.10.0/24 10.1.1.100 0 0 65200 i* 172.16.11.0/24 10.1.1.100 0 0 65200 i*i172.26.1.16/28 192.168.1.50 0 100 0 i*i172.26.1.32/28 192.168.1.50 0 100 0 i*i172.26.1.48/28 192.168.1.50 0
36、100 0 i* 192.168.1.0 0.0.0.0 0 32768 i * 192.168.2.0 10.1.1.100 0 65200 65102 i* 192.168.2.64/28 10.1.1.100 0 65200 65102 i* i192.168.101.0 192.168.1.34 0 100 0 i*i 192.168.1.18 0 100 0 iThe table displays networks from lowest network to highest.RouterA# show ip bgp neighborsBGP neighbor is 10.1.1.1
37、, remote AS 65000, external link Index 1, Offset 0, Mask 0x2 BGP version 4, remote router ID 172.16.10.1 BGP state = Established, table version = 5, up for 00:10:47 Last read 00:00:48, hold time is 180, keepalive interval is 60 seconds Minimum time between advertisement runs is 30 seconds Received 1
38、6 messages, 0 notifications, 0 in queue Sent 15 messages, 1 notifications, 0 in queue Prefix advertised 1, suppressed 0, withdrawn 0 Connections established 1; dropped 0 Last reset 00:16:35, due to Peer closed the session 2 accepted prefixes consume 64 bytes 0 history paths consume 0 bytes -More- sh
39、ow ip bgp neighbors 命令(邻居表)命令(邻居表)debug ip bgp 命令命令routerA# debug ip bgp updatesBGP updates debugging is onRTRA# clear ip bgp *3w5d: BGP: 10.1.1.1 computing updates, neighbor version 0, table version 1, starting at 0.0.0.03w5d: BGP: 10.1.1.1 update run completed, ran for 0ms, neighbor version 0, sta
40、rt version 1, throttled to 1, check point net 0.0.0.03w5d: BGP: 10.1.1.1 rcv UPDATE w/ attr: nexthop 10.1.1.1, origin i, aggregated by 65000 172.16.10.1, path 650003w5d: BGP: 10.1.1.1 rcv UPDATE about 172.16.0.0/163w5d: BGP: nettable_walker 172.16.0.0/16 calling revise_route3w5d: BGP: revise route i
41、nstalling 172.16.0.0/16 - 10.1.1.13w5d: BGP: 10.1.1.1 rcv UPDATE w/ attr: nexthop 10.1.1.1, origin i, metric 0, path 650003w5d: BGP: 10.1.1.1 rcv UPDATE about 192.168.1.0/243w5d: BGP: nettable_walker 192.168.1.0/24 calling revise_route3w5d: BGP: revise route installing 192.168.1.0/24 - 10.1.1.1BGP N
42、eighbor AuthenticationBGP authentication uses MD5. Configure a key (password); router generates a message digest, or hash, of the key and the message.Message digest is sent; key is not sent.Router generates and checks the MD5 digest of every segment sent on the TCP connection. Router authenticates t
43、he source of each routing update packet that it receivesneighbor ip-address | peer-group-name password string Router(config-router)#Example: BGP Neighbor AuthenticationExample: show ip bgp rib-failure CommandRouterA# show ip bgp rib-failureNetwork Next Hop RIB-failure RIB-NH Matches172.31.1.0/24 172
44、.31.1.3 Higher admin distance n/a172.31.11.0/24 172.31.11.4 Higher admin distance n/aDisplays networks that are not installed in the RIB and the reason that they were not installedClearing the BGP SessionWhen policies such as access lists or attributes are changed, the change takes effect immediatel
45、y, and the next time that a prefix or path is advertised or received, the new policy is used. It can take a long time for the policy to be applied to all networks. You must trigger an update to ensure that the policy is immediately applied to all affected prefixes and paths.Ways to trigger an update
46、:Hard resetSoft resetRoute refreshclear ip bgp * router#Resets all BGP connections with this router.Entire BGP forwarding table is discarded.BGP session makes the transition from established to idle; everything must be relearned.Hard Reset of BGP Sessionsclear ip bgp neighbor-addressrouter#Resets on
47、ly a single neighbor.BGP session makes the transition from established to idle; everything from this neighbor must be relearned.Less severe than clear ip bgp *.Soft Reset Outboundclear ip bgp *|neighbor-address soft outRouter#Routes learned from this neighbor are not lost.This router resends all BGP
48、 information to the neighbor without resetting the connection.The connection remains established.This option is highly recommended when you are changing outbound policy.The soft out option does not help if you are changing inbound policy.Inbound Soft Resetneighbor ip-address soft-reconfiguration inb
49、oundRouter(config-router)#This router stores all updates from this neighbor in case the inbound policy is changed.The command is memory-intensive.clear ip bgp *|neighbor-address soft inRouter#Uses the stored information to generate new inbound updatesclear ip bgp *|neighbor-address soft in | in Rout
50、er#Routes advertised to this neighbor are not withdrawn.Does not store update information locally.The connection remains established.Introduced in Cisco IOS software release 12.0(2)S and 12.0(6)T.Route Refresh: Dynamic Inbound Soft ResetConfiguring Basic BGPBGP选路原则选路原则BSCI v2.27-58BGP 路由属性路由属性BGP 的度
51、量值叫做 路径属性.特有的属性包括:公认必选属性公认自选属性任选可透明传送属性任选非可透明传送属性公认属性公认属性公认属性公认属性可以是强制性的,意味着所有的BGP更新消息都必须包含该属性,也可以是自己选择的,更新中不包含此属性所有的BGP执行都必须识别它公认必选属性强制更新中必须有此属性公认自选属性在更新中可能有此属性任选属性任选属性任选属性不要求BGP一定要支持该属性任选可透明传送即使BGP过程不支持该属性,它也应当接受包含该属性的路由并且把这个路径传送给它的对端 任选非可透明传送不识别该属性的BGP过程可以忽略包含这个属性的更新消息并且不向它的对端公布这条路径BGP 属性属性BGP 路径
52、属性包括:AS path *Next-hop *Origin *Local preferenceMEDOthers* 公认必选属性公认必选属性AS Path 属性属性(BGP中用来避免环路的最有效机制中用来避免环路的最有效机制)它用AS号的顺序来描述AS间的路径或者NLRI(网络层可达性信息 , network layer teachability information )所明确的目的地的路由例如, 在路由器 B上, 到达 192.168.1.0 路径的 AS 号为 (65500, 64520).AS path 是一个公认必选的属性,只有在两个EBGP对等体之间公布路由时,AS号才被附加到A
53、S-PATH中Next-Hop 属性属性描述到公布目的地的路径的下一跳路由器的IP地址:Router A advertises network 172.16.0.0 torouter B in EBGP, with anext hop of 10.10.10.3.Router B advertises172.16.0.0 in IBGP torouter C, keeping 10.10.10.3as the next-hop address.下一跳属性是公认必选的属性Origin 属性属性IGP (i)network commandEGP (e)Redistributed from EGPI
54、ncomplete (?)Redistributed from IGP or static起源属性是一个公认必选的属性,它明确了路由更新消息的来源,当BGP有多条路由时,它会将起源属性当做一个决定较优路由的因素。 IGP (i) EGP (e) Incomplete(?)Example: Origin AttributeRouterA# show ip bgpBGP table version is 14, local router ID is 172.31.11.1Status codes: s suppressed, d damped, h history, * valid, best,
55、i - internal, r RIB-failure, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path* 10.1.0.0/24 0.0.0.0 0 32768 i* i 10.1.0.2 0 100 0 i* 10.1.1.0/24 0.0.0.0 0 32768 i*i10.1.2.0/24 10.1.0.2 0 100 0 i* 10.97.97.0/24 172.31.1.3 0 64998 64997 i* 172.31.11.4 0 6
56、4999 64997 i* i 172.31.11.4 0 100 0 64999 64997 i* 10.254.0.0/24 172.31.1.3 0 0 64998 i* 172.31.11.4 0 64999 64998 i* i 172.31.1.3 0 100 0 64998 ir 172.31.1.0/24 172.31.1.3 0 0 64998 ir 172.31.11.4 0 64999 64998 ir i 172.31.1.3 0 100 0 64998 i* 172.31.2.0/24 172.31.1.3 0 0 64998 iLocal Preference 属性
57、属性如果一个内部运行BGP的路由器收到一条到一个目的地的多条路由,它将用本地优先级进行比较:只用在内部AS的更新消息中,它不会传递给其它的自治系统只传递给自己的IBGP邻居本地优先级属性是一个公认可选的属性,只在本地AS有效和传递,默认值是100本地优先级影响离开本地优先级影响离开AS的因素,的因素,如果想要影响进入如果想要影响进入AS的因素,则的因素,则可以使用可以使用MED属性属性: 这个属性在这个属性在EBGP的更新消息中携带,的更新消息中携带,它允许一个它允许一个AS将它首选的入口点通知将它首选的入口点通知另外一个另外一个AS.MED 只发送给它的只发送给它的 EBGP邻居邻居MED是
58、一个任选非传递的属性是一个任选非传递的属性.MED 属性属性管理权重是管理权重是CISCO特有的特有的BGP参数,只适用于一台路参数,只适用于一台路由器中的路由由器中的路由. 权重是不会传递给其它的路由器,只在本地路由器有权重是不会传递给其它的路由器,只在本地路由器有效效Weight 权重权重(Cisco 私有私有)BGP Path SelectionThe BGP forwarding table usually has multiple paths from which to choose for each network.BGP is not designed to perform lo
59、ad balancing:Paths are chosen because of policy.Paths are not chosen based on bandwidth.The BGP selection process eliminates any multiple paths through attrition until a single best path is left.That best path is submitted to the routing table manager process and evaluated against the methods of oth
60、er routing protocols for reaching that network (using administrative distance).The route from the source with the lowest administrative distance is installed in the routing table.Route Selection Decision ProcessConsider only (synchronized) routes with no AS loops and a valid next hop, and then:1.Pre
61、fer highest weight (local to router).2.Prefer highest local preference (global within AS).3.Prefer route originated by the local router (next hop = 0.0.0.0).4.Prefer shortest AS path.5.Prefer lowest origin code (IGP EGP default-information-originatenetworkredistributeaggregate-address4.优选最短的AS_PATH
62、,可以使用bgp bestpath as-path ignore这个命令来跳过这一步5.最小的 origin code (IGP EGP best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path* i172.16.0.0 172.20.50.1 100 0 65005 65004 65003 i*i 192.168.28.1 100 0 65002 65003 i*i172.24.0.0 172.20.50.1 100 0 65005 i
63、* i 192.168.28.1 100 0 65002 65003 65004 65005 i*i172.30.0.0 172.20.50.1 100 0 65005 65004 i* i 192.168.28.1 100 0 65002 65003 65004iBy default, BGP selects the shortest AS path as the best () pathway.In AS 65001, the percent of traffic going to 172.24.0.0 is 30%, 172.30.0.0 is 20%, and 172.16.0.0 i
64、s 10%.50% of all traffic will go to the next hop of 172.20.50.1 (AS 65005), and 10% of all traffic will go to the next hop of 192.168.28.1 (AS 65002).Make traffic to 172.30.0.0 select the next hop of 192.168.28.1 to achieve load sharing where both external links get approximately 30% of the load.配置配
65、置 Router ARouter As Configuration:router bgp 65001 neighbor 2.2.2.2 remote-as 65001neighbor 3.3.3.3 remote-as 65001neighbor 2.2.2.2 remote-as 65001 update-source loopback0neighbor 3.3.3.3 remote-as 65001 update-source loopback0neighbor 192.168.28.1 remote-as 65002neighbor 192.168.28.1 route-map loca
66、l_pref in!route-map local_pref permit 10match ip address 65set local-preference 400!route-map local_pref permit 20!access-list 65 permit 172.30.0.0 0.0.255.255Router C的的BGP表表RouterC# show ip bgpBGP table version is 7, local router ID is 3.3.3.3Status codes: s suppressed, d damped, h history, * valid
67、, best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path* i172.16.0.0 172.20.50.1 100 0 65005 65004 65003 i*i 192.168.28.1 100 0 65002 65003 i*i172.24.0.0 172.20.50.1 100 0 65005 i* i 192.168.28.1 100 0 65002 65003 65004 65005 i* i172.30.0.0 172.2
68、0.50.1 100 0 65005 65004 i*i 192.168.28.1 400 0 65002 65003 65004iBest () pathways for networks 172.16.0.0/16 and 172.24.0.0/16 have not changed.Best () pathway for network 172.30.0.0 has changed to a new next hop of 192.168.28.1 due to the next hop of 192.168.28.1 having a higher local preference,
69、400.In AS 65001, the percentage of traffic going to 172.24.0.0 is 30%, 172.30.0.0 is 20%, and 172.16.0.0 is 10%.30% of all traffic will go to the next hop of 172.20.50.1 (AS 65005), and 30% of all traffic will go tothe next hop of 192.168.28.1 (AS 65002).影响入向的流量:影响入向的流量:MEDdefault-metric numberRoute
70、r(config-router)#设置默认的设置默认的MED值值.路由器通告给所有的路由器通告给所有的EBGP路由器时路由器时MED将修改成指定的值将修改成指定的值.当两个自主系当两个自主系统统之之间间存在多条路径,而其中一个存在多条路径,而其中一个AS试图试图影响影响对对方方进进入的路径入的路径时时,可以使用,可以使用MED来操作来操作.MED值值越低越越低越优选优选. CISCO路由器的默路由器的默认认MED值为值为0.MED是一个不可是一个不可传递传递的的(在同一个在同一个AS内是可内是可传递传递的的)MED属性只在两个自治系属性只在两个自治系统统之之间传递间传递,只有一跳只有一跳(不能
71、不能传给传给第第三个三个AS).配置配置MED配置配置 Router ARouter As Configuration:router bgp 65001 neighbor 2.2.2.2 remote-as 65001neighbor 3.3.3.3 remote-as 65001neighbor 2.2.2.2 update-source loopback0neighbor 3.3.3.3 update-source loopback0neighbor 192.168.28.1 remote-as 65004neighbor 192.168.28.1 route-map med_65004
72、out!route-map med_65004 permit 10match ip address 66set metric 100route-map med_65004 permit 100set metric 200!access-list 66 permit 192.168.25.0.0 0.0.0.255access-list 66 permit 192.168.26.0.0 0.0.0.255配置配置 Router BRouter Bs Configuration:router bgp 65001neighbor 1.1.1.1 remote-as 65001neighbor 3.3
73、.3.3 remote-as 65001neighbor 1.1.1.1 update-source loopback0neighbor 3.3.3.3 update-source loopback0neighbor 172.20.50.1 remote-as 65004neighbor 172.20.50.1 route-map med_65004 out!route-map med_65004 permit 10match ip address 66set metric 100route-map med_65004 permit 100set metric 200!access-list
74、66 permit 192.168.24.0.0 0.0.0.255Router Z的的BGP表表RouterZ# show ip bgpBGP table version is 7, local router ID is 122.30.1.1Status codes: s suppressed, d damped, h history, * valid, best, i - internalOrigin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path*i192.168.24.
75、0 172.20.50.2 100 100 0 65001 i* i 192.168.28.2 200 100 0 65001 i* i192.168.25.0 172.20.50.2 200 100 0 65001 i*i 192.168.28.2 100 100 0 65001 i* i192.168.26.0 172.20.50.2 200 100 0 65001 i*i 192.168.28.2 100 100 0 65001 iExamine the networks that have been learned from AS 65001 on Router Z in AS 650
76、04.For all networks: Weight is equal (0); local preference is equal (100); routes are not originated in this AS; AS path is equal (65001); origin code is equal (i).192.168.24.0 has a lower metric (MED) through 172.20.50.2 (100) than 192.168.28.2 (200).192.168.25.0 has a lower metric (MED) through 19
77、2.168.28.2 (100) than 172.20.50.2 (200).192.168.26.0 has a lower metric (MED) through 192.168.28.2 (100) than 172.20.50.2 (200).Configuring Basic BGP多宿主设计方案多宿主设计方案BSCI v2.27-84什么是多宿主什么是多宿主?连接到多家ISP的AS具有如下特征:可靠性通过多条的连接提供了冗余性,不倚赖于单家ISP的路由选择策略,如果一家ISP连接失效,则可以实现连接切换, 保证网络的连通性。更高的可用性能对于目标网络更好的路径选择,并不倚赖单家
78、ISP的性能限制所有所有ISP只提供默认路由只提供默认路由占用AS内部路由器更少的内存和更低的CPU资源.ISP只发送AS内部一条默认路由.默认路由重分布进 IGP.路由器根据内部默认路由的IGP度量值来决定通过哪家ISP前往Internet.根据带宽使用率极其困难,只能通过操纵默认路由的IGP度量值来实现.将数据流从一个出口转到另一个出口将是一种挑战,因为对于前往所有目的地的数据流,将基于相同的默认路由来选择路径.AS 1AS 50001AR1R4R5BGP选路原则配合选路原则配合AS 2Metric 100Metric 50172.16.20.1192.168.9.2配置配置 Router
79、 ARouter As Configuration:router bgp 2 neighbor 172.16.20.1 remote-as 1neighbor 172.16.20.1 route-map BLOCK inneighbor 172.16.20.1 route-map SETMETRIC1 outneighbor 192.168.9.2 remote-as 1neighbor 192.168.9.2 route-map BLOCK inneighbor 192.168.9.2 route-map SETMETRIC2 out!route-map SETMETRIC1 permit
80、10set metric 100!route-map SETMETRIC2 permit 20set metric 100!route-map BLOCK deny 10!ip route 0.0.0.0 0.0.0.0 172.16.20.1 50ip route 0.0.0.0 0.0.0.0 172.16.20.1 40Configuring Basic BGP配置配置BGP路由汇总路由汇总BSCI v2.27-89CIDR 和和 聚合地址聚合地址BGP4 是一个无类的, 支持VLSM 和 最长匹配掩码路由, 和在路由更新中携带子网掩码.网络边界汇总网络边界汇总 默认时BGP, RIPv
81、1 与RIPv2, IGRP, 和EIGRP都在网络边界自动汇总.BGP, RIPv2, and EIGRP 可以关闭自动汇总在12.2(8)之前,自动汇总默认被启用 在12.2(8)之后,自动汇总默认被关闭no auto-summaryRouter(config-router)# network network-number mask network-maskRouter(config-router)#BGP network 命令命令ip route prefix mask null0Router(config)#配置示例配置示例原子聚合原子聚合aggregate-address ip-ad
82、dress mask summary-only as-setRouter(config-router)#在在BGP表中创建一个汇总条目表中创建一个汇总条目加上加上summary-only 关键字则只通告汇总路由而不通告明细关键字则只通告汇总路由而不通告明细路由路由加上as-set 关键字则在关键字则在BGP as-path属性表中加上路由所经属性表中加上路由所经过的过的AS BGP推荐使用的汇总方法推荐使用的汇总方法不需要指向不需要指向NULL的静态路由的静态路由; 自动创建一条自动创建一条配置示例配置示例原子聚合原子聚合show ip bgpNetwork 192.168.24.0/22 1
83、92.168.24.0 192.168.25.0 192.168.26.0 192.168.27.0*s s s s Next Hop 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0LocPrfWeight 32768 32768 32768 32768 32768 Path i i i i iMetric 0 0 0 0 0routerC# show ip bgpBGP table version is 28, local router ID is 172.16.2.1Status codes: s = suppressed, * = valid, = bes
84、t, and i = internalOrigin codes : i = IGP, e = EGP, and ? = incompleteRouterC#接下来的部分接下来的部分CCNP不要求掌握不要求掌握BSCI v2.27-97BGP路由配置的高级部分路由配置的高级部分(CCIE)实验实验1前缀提醒通告前缀提醒通告router bgp 100neighbor 202.101.12.2 maximum-prefix 8或者或者neighbor 202.101.12.2 maximum-prefix 8 warming-only特别注意:特别注意:如果不加如果不加warming-only这个
85、参数,当超过前缀数这个参数,当超过前缀数目的目的75%产生报警,超过最多的前缀邻居会断开,加了产生报警,超过最多的前缀邻居会断开,加了warming-only只会产生报警,不会中断连接只会产生报警,不会中断连接 实验实验2 bgp always-compare-medLondonDenver10.1.1.1/30AS 51Florence10.1.1.2/3010.1.1.5/3010.1.1.6/30AS 53198.1.1.1/24EBGPEBGPS0.2S0.2S0.1S0.1S0.1S0.1S0.2S0.210.1.1.9/3010.1.1.10/3010.1.1.13/3010.1.
86、1.14/30EBGPEBGPNewYork2.2.2.21.1.1.13.3.3.34.4.4.4198.1.1.0/24 MED=200198.1.1.0/24 MED=100AS 52AS 54实验实验2 AS-path prependLondonDenver10.1.1.1/30AS 51Florence10.1.1.2/3010.1.1.5/3010.1.1.6/30AS 53198.1.1.1/24EBGPEBGPS0.2S0.2S0.1S0.1S0.1S0.1S0.2S0.210.1.1.9/3010.1.1.10/3010.1.1.13/3010.1.1.14/30EBGPEB
87、GPNewYork2.2.2.21.1.1.13.3.3.34.4.4.4AS 52AS 54198.1.1.0/24( 53, 51, i ) MED=200198.1.1.0/24 ( 52, 51, 51, i ) MED=100198.1.1.0/24( 51, 51, i )198.1.1.0/24( 51, i )两条附加命令两条附加命令 bgp bespath med missing-as-worst bgp bestpath as-path ignore (Cisco 隐藏命令)隐藏命令)实验实验3 路由标记路由标记LondonDenverAS 51Florence10.1.1
88、.5/3010.1.1.6/30AS 53198.1.1.1/24EBGPS0.2S0.2S0.1S0.1S0.2S0.210.1.1.9/3010.1.1.10/3010.1.1.13/3010.1.1.14/30EBGPNewYork2.2.2.21.1.1.13.3.3.34.4.4.4AS 52OSPF area 0BGP OSPFOSPF BGP实验实验3 路由标记路由标记 答案答案London:router ospf 1 redistribute bgp 53 subnets!router bgp 53 table-map set-tag!route-map set-tag per
89、mit 10 set automatic-tagNewYork:router bgp 53 redistribute ospf 1 match external 1 external 2 route-map get-tag!route-map get-tag permit 10 set as-path tagBGP Attributesatomic-aggregate / aggregator /community / BGP路由汇总BGP 路由汇总路由汇总BasicLondonFlorenceDenver1.1.1.12.2.2.23.3.3.310.1.1.1/30192.168.192.
90、0/24192.168.193.0/24192.168.194.0/24192.168.196.0/24192.168.197.0/24192.168.198.0/24S 0.1S 0.210.1.1.2/30S 0.1S 0.210.1.1.5/3010.1.1.6/30AS 51AS 52EIGRP 51192.168.192.0/21BGP 路由总结路由总结London:router bgp 51 network 192.168.192.0 mask 255.255.248.0!ip route 192.168.192.0 255.255.248.0 null0 使用使用network命
91、令进行总结命令进行总结London:router bgp 51 redistribute eigrp 51 aggregate-address 192.168.192.0 255.255.248.0 summary-only使用使用aggregate-address命令进行总结命令进行总结公布汇总路由和更具体的地址公布汇总路由和更具体的地址LondonFlorenceDenverNewYorkIstanbul1.1.1.12.2.2.23.3.3.34.4.4.45.5.5.510.1.1.1/30192.168.192.0/24192.168.193.0/24192.168.194.0/24
92、192.168.196.0/24192.168.197.0/24192.168.198.0/24S 0.1S 0.210.1.1.2/30S 0.1S 0.2S 0.2S 0.2S 0.1S 0.110.1.1.10/3010.1.1.9/3010.1.1.5/3010.1.1.6/3010.1.1.13/3010.1.1.14/30S 0.3S 0.3S 0.1S 0.210.1.1.17/3010.1.1.18/3010.1.1.21/3010.1.1.22/30AS 51AS 52AS 53EIGRP 51全部路由汇总路由全部路由汇总路由只有汇总路由只有汇总路由BGP 路由总结路由总结L
93、ondon:access-list 101 permit ip host 192.168.192.0 host 255.255.248.0route-map set-comm permit 10 match ip address 101 set community noneroute-map set-comm permit 20 set community no-export!router bgp 51 neighbor 3.3.3.3 send-community neighbor 3.3.3.3 route-map set-comm outFlorence:ip prefix-list c
94、isco seq 5 permit 192.168.192.0/21route-map set-comm permit 10 match ip address prefix-list cisco set community noneroute-map set-comm permit 20 set community no-export!router bgp 51 neighbor 4.4.4.4 send-community neighbor 4.4.4.4 route-map set-comm outBGP 路由总结路由总结Denver:router bgp 52 neighbor 4.4.
95、4.4 send-communityNewYork:router bgp 52 neighbor 3.3.3.3 send-communitySuppress-mapLondonFlorenceDenverNewYorkIstanbul1.1.1.12.2.2.23.3.3.34.4.4.45.5.5.510.1.1.1/30192.168.192.0/24192.168.193.0/24192.168.194.0/24192.168.196.0/24192.168.197.0/24192.168.198.0/24S 0.1S 0.210.1.1.2/30S 0.1S 0.2S 0.2S 0.
96、2S 0.1S 0.110.1.1.10/3010.1.1.9/3010.1.1.5/3010.1.1.6/3010.1.1.13/3010.1.1.14/30S 0.3S 0.3S 0.1S 0.210.1.1.17/3010.1.1.18/3010.1.1.21/3010.1.1.22/30AS 51AS 52AS 53EIGRP 51192.168.192.0/24192.168.193.0/24192.168.194.0/24汇总路由汇总路由192.168.196.0/24192.168.197.0/24192.168.198.0/24汇总路由汇总路由Suppress-mapLondo
97、n:access-list 10 permit 192.168.196.0 0.0.3.255!route-map supp permit 10 match ip address 10!router bgp 51 aggregate-address 192.168.192.0 255.255.248.0 suppress-map suppFlorence:ip prefix-list juniper seq 5 permit 192.168.192.0/22 le 24!route-map supp permit 10 match ip address prefix-list juniper!
98、router bgp 51 aggregate-address 192.168.192.0 255.255.248.0 suppress-map suppAttribute-mapLondonFlorenceDenverNewYorkIstanbul1.1.1.12.2.2.23.3.3.34.4.4.45.5.5.510.1.1.1/30192.168.192.0/24192.168.193.0/24192.168.194.0/24192.168.196.0/24192.168.197.0/24192.168.198.0/24S 0.1S 0.210.1.1.2/30S 0.1S 0.2S
99、0.2S 0.2S 0.1S 0.110.1.1.10/3010.1.1.9/3010.1.1.5/3010.1.1.6/3010.1.1.13/3010.1.1.14/30S 0.3S 0.3S 0.1S 0.210.1.1.17/3010.1.1.18/3010.1.1.21/3010.1.1.22/30AS 51AS 52AS 53EIGRP 51192.168.192.0/24 ?192.168.193.0/24 ?192.168.194.0/24 ?汇总路由汇总路由 i192.168.196.0/24 ?192.168.197.0/24 ?192.168.198.0/24 ?汇总路由
100、汇总路由 999 eAttribute-mapFlorence:route-map att permit 10 set origin egp 999!router bgp 51 aggregate-address 192.168.192.0 255.255.248.0 attribute-map att suppress-map suppAS-setLondonFlorenceDenverNewYorkIstanbul1.1.1.12.2.2.23.3.3.34.4.4.45.5.5.510.1.1.1/30192.168.192.0/24192.168.193.0/24192.168.194
101、.0/24192.168.196.0/24192.168.197.0/24192.168.198.0/24S 0.1S 0.210.1.1.2/30S 0.1S 0.2S 0.1S 0.110.1.1.5/3010.1.1.6/3010.1.1.13/3010.1.1.14/30S 0.3S 0.3S 0.1S 0.210.1.1.17/3010.1.1.18/3010.1.1.21/3010.1.1.22/30AS 51AS 52AS 53AS 54EIGRP 51全部路由全部路由全部路由全部路由全部路由全部路由汇总路由汇总路由AS-setLondonFlorenceDenverNewYor
102、kIstanbul1.1.1.12.2.2.23.3.3.34.4.4.45.5.5.510.1.1.1/30192.168.192.0/24192.168.193.0/24192.168.194.0/24192.168.196.0/24192.168.197.0/24192.168.198.0/24S 0.1S 0.210.1.1.2/30S 0.1S 0.2S 0.1S 0.110.1.1.5/3010.1.1.6/3010.1.1.13/3010.1.1.14/30S 0.3S 0.3S 0.1S 0.210.1.1.17/3010.1.1.18/3010.1.1.21/3010.1.1
103、.22/30AS 51AS 52AS 53BeiJing6.6.6.6S 0.4S 0.110.1.1.25/3010.1.1.26/30192.168.195.0/24192.168.199.0/24AS 54AS 55EIGRP 51全部路由全部路由全部路由全部路由全部路由全部路由汇总路由汇总路由192.168.195.0/24192.168.199.0/24AS-setIstanbul:router bgp 53 aggregate-address 192.168.192.0 255.255.248.0 as-set summary-onlyAdvertise-mapLondonFlor
104、enceDenverIstanbul1.1.1.12.2.2.23.3.3.35.5.5.510.1.1.1/30192.168.192.0/24192.168.193.0/24192.168.194.0/24192.168.196.0/24192.168.197.0/24192.168.198.0/24S 0.1S 0.210.1.1.2/30S 0.1S 0.210.1.1.5/3010.1.1.6/30S 0.3S 0.110.1.1.17/3010.1.1.18/30AS 51AS 52AS 53BeiJing6.6.6.6S 0.4S 0.110.1.1.25/3010.1.1.26
105、/30192.168.195.0/24192.168.199.0/24AS 55EIGRP 51全部路由全部路由汇总路由汇总路由192.168.195.0/24192.168.199.0/24NO-EXPORTAdvertise-mapDenver:access-list 15 deny 192.168.195.0 0.0.0.255access-list 15 deny 192.168.199.0 0.0.0.255access-list 15 permit any!route-map allow-route permit 10 match ip address 15!router bgp
106、52 aggregate-address 192.168.192.0 255.255.248.0 as-set summary-only advertise-map allow-routeAdvertise-map202.101.12.1/24202.101.12.2./24AS200R1:router bgp 100 neighbor 202.101.12.2 advertise-map secondary non-exist-map primaryroute-map primary permit 10 match ip address prefix-list 1route-map seco
107、ndary permit 10 match ip address prefix-list 11 ip prefix-list 1 permit 1.1.1.0/24ip prefix-list 11 permit 11.11.11.0/24R1R21.1.1.12.2.2.21.1.1.0/2411.11.11.0/24S 1/1S 1/0AS 100管理BGP连接管理管理BGP连接连接Istanbul:router bgp 53 neighbor 3.3.3.3 description *frame-relay p2p intf to Denver使用使用neighbor descripti
108、on命令写出命令写出BGP对等体的描述语句对等体的描述语句Istanbul:router bgp 53 neighbor 3.3.3.3 password ciscoDenver:router bgp 52 neighbor 5.5.5.5 password ciscoBGP对等体认证对等体认证Istanbul:router bgp 53 neighbor 3.3.3.3 shutdown暂时中断暂时中断BGP对等体连接对等体连接BGP的的Dampening不稳定的网络,路由经常会进行摆动,不停的进行计算,消耗了其他设备的内存和CPU,通过使用BGP的dampening,可以有效的解决这种问题
109、的产生Cisco缺省的BGP Dampening的值如下惩罚值-1000抑制界限-2000重新使用界限-750半衰期-15分钟最达抑制时间-60分钟,半衰期的四倍BGP dampening202.101.12.1/24202.101.12.2./24AS200R1R21.1.1.12.2.2.21.1.1.0/2411.11.11.0/24S 1/1S 1/0AS 100R2:Router bgp 200bgp dampening route-map dampen!route-map dampen permit 10 match ip address prefix-list 1 set dam
110、pening 15 750 2000 60ip prefix-list 1 permit 1.1.1.0/24BGP路由过滤详解BGP路由过滤的三种方法路由过滤的三种方法 distribute-list 用于过滤由用于过滤由ip access-list定义的路由定义的路由 prefix-list 用于过滤由用于过滤由ip prefix-list定义的路由定义的路由 filter-list 用于过滤由用于过滤由ip as-path access-list定义的路由定义的路由Prefix-listLondonDenver10.1.1.6/30AS 52Florence10.1.1.5/3010.1
111、.1.2/3010.1.1.1/30AS 51192.168.0.0/24192.168.1.0/25192.168.2.0/26192.168.3.0/27192.168.4.0/281.1.1.12.2.2.23.3.3.3AS 53Prefix-listFlorence:router bgp 52 neighbor 3.3.3.3 prefix-list cisco out其中,其中,Prefix-list cisco 分别使用如下语句进行测试:分别使用如下语句进行测试:ip prefix-list cisco seq 5 permit 192.168.0.0/24ip prefix-l
112、ist cisco seq 5 permit 192.168.0.0/22 le 25在在192.168.0.0/22网络中,前缀长度小于等于网络中,前缀长度小于等于25ip prefix-list cisco seq 5 permit 192.168.0.0/22 ge 26在在192.168.0.0/22网络中,前缀长度大于等于网络中,前缀长度大于等于26ip prefix-list cisco seq 5 permit 192.168.0.0/22 ge 25 le 26在在192.168.0.0/22网络中,前缀长度大于等于网络中,前缀长度大于等于25,小于等于,小于等于265,Ip
113、prefix-list cisco permit 192.168.0.0/22 ge 25 le25Filter-list正则表达式正则表达式 “心法心法”.任何单个字符任何单个字符一个字符串的开始一个字符串的开始$一个字符串的结束一个字符串的结束_匹配匹配 , ( ) 空格,以及字符串的开始或结束空格,以及字符串的开始或结束|逻辑或逻辑或-连接符,例如连接符,例如“0-5”代表代表0、1、2、3、4、5中的任意一个字符中的任意一个字符*匹配前一个字符的匹配前一个字符的0个或任意多个个或任意多个+匹配前一个字符的匹配前一个字符的1个或任意多个个或任意多个?匹配前一个字符的匹配前一个字符的0个或
114、个或1个个( )圆括号中的字符是一个整体圆括号中的字符是一个整体 在方括号中列出的任意一个字符在方括号中列出的任意一个字符 任意一个没有在方括号中列出的字符任意一个没有在方括号中列出的字符正则表达式例子正则表达式例子c*表示匹配行中任意多个表示匹配行中任意多个 c的出现,包括不出现的出现,包括不出现cc+表示匹配行中一个或多个字符表示匹配行中一个或多个字符c的出现的出现ca?B匹配匹配cB或者或者caBAa表示匹配单个的字符表示匹配单个的字符A或或a1-35-7表示匹配值为表示匹配值为1,2,3,5,6,7的单个字符的单个字符bB匹配以匹配以b或或B开头的行开头的行2-5$匹配以匹配以2,3,
115、4,5结尾的行结尾的行1-3匹配字符匹配字符0和和4-9,表示取反的意思表示取反的意思$ 从该从该AS起源的路由起源的路由2_ 所有从直连的位于所有从直连的位于AS2的邻居来的路由的邻居来的路由2$源于源于AS2中的邻居的路由中的邻居的路由_3_路由包含路由包含AS3的路由的路由1 2使用使用as-set选项聚合路由,从选项聚合路由,从AS1和和AS2的路由形成聚合的路由形成聚合(65530)与对等体形成联邦,该对等体在)与对等体形成联邦,该对等体在AS65530中中Filter-listLondonDenver10.1.1.6/30AS 52Florence10.1.1.5/3010.1.1
116、.2/3010.1.1.1/30AS 51192.168.1.0/24 ( i )192.168.2.0/24 ( 60, i )192.168.3.0/24 ( 61, i )192.168.4.0/24 ( 61, 62, i )192.168.5.0/24 ( 61, 62, 63, i )192.168.6.0/24 ( 61, 62, 63, 63, i )192.168.7.0/24 ( 62, 89, 63, i )192.168.8.0/24 ( 61, 89, 56, 99, i )192.168.9.0/24 ( 51, 89, i )192.168.0.0/24 ( 63
117、, 89, 99, i )1.1.1.12.2.2.23.3.3.3AS 53172.16.1.0/24 ( i )Filter-list 实验准备实验准备London:access-list 1 permit 192.168.4.0 0.0.0.255!route-map set-path permit 10 match ip address 1 set as-path prepend 61 62!route-map set-path permit 20!router bgp 51 neighbor 2.2.2.2 route-map set-path out为了仅使用三台路由器完成本实验,
118、需要在为了仅使用三台路由器完成本实验,需要在London上做上做ap-path prepend下面给出仅模拟下面给出仅模拟192.168.4.0/24 ( 61, 62, i )的配置示例。的配置示例。Filter-listFlorence:router bgp 52 neighbor 3.3.3.3 filter-list 1 out其中,其中,filter-list 1 分别使用如下语句进行测试:分别使用如下语句进行测试:1 . ip as-path access-list 1 permit 0( 在在as中包含有中包含有0的可以放行)的可以放行)2 . ip as-path access
119、-list 1 permit 51$(以(以51开始以开始以51结束)结束)3 . ip as-path access-list 1 permit $?(起源于本?(起源于本AS的路由)的路由)4 . ip as-path access-list 1 permit 51_61_62_63$(起源于(起源于51,经过,经过61,62,以,以63结尾)结尾)5 . ip as-path access-list 1 permit _51_61_62_63_(经过(经过as 51 61 62 63)6 . ip as-path access-list 1 permit 2_63_(经过(经过X.63
120、,其中,其中x末尾为末尾为2)7. ip as-path access-list 1 permit _2_63_(经过(经过as 2 和和63)8. ip as-path access-list 1 permit 51_(以(以51开头,至少后面还有一个开头,至少后面还有一个as)(有点问题)有点问题)9. ip as-path access-list 1 permit _63$(以(以63号结尾)号结尾)10. ip as-path access-list 1 permit _61-3$(以(以61,62,63结尾的结尾的as)11. ip as-path access-list 1 per
121、mit _603$ (60或者或者63)12. ip as-path access-list 1 permit _61-3$ 不是不是1,2,3结尾结尾13. ip as-path access-list 1 permit _(61|60|89)$(以(以61或者或者60或者或者89结尾)结尾)14. ip as-path access-list 1 permit 51_61_62_(63)?$15. ip as-path access-list 1 permit 51_61_62_(63)*$16. ip as-path access-list 1 permit 51_61_62_(63)+
122、$17. ip as-path access-list 1 permit .*18. ip as-path access-list 1 permit (51)+_(61|62)?_89_.*管理大型管理大型BGP的工具的工具 BGP路由抑制路由抑制 BGP对等组对等组 过滤专用过滤专用AS号号 路由反射器路由反射器 BGP团体团体 BGP联盟联盟BGP路由抑制路由抑制路由抑制LondonDenver10.1.1.6/30AS 52Florence10.1.1.5/3010.1.1.2/3010.1.1.1/30AS 51192.168.1.0/241.1.1.12.2.2.23.3.3.3AS
123、 53192.168.3.0/24路由抑制的相关命令路由抑制的相关命令 bgp dampening half-life reuse suppress max-suppress By default half-life=15m, reuse=750, suppress=2000, max-suppress=60m show ip bgp flap-statistics show ip bgp dampened-paths clear ip bgp flap-statistics clear ip bgp dampeningDampening只用在只用在EBGP学来的路由学来的路由BGP对等组ne
124、ighbor peer-group-name peer-group Router(config-router)#Creates peer groupPeer Groupsneighbor ip-address peer-group peer-group-nameRouter(config-router)# Defines a template with parameters set for a group of neighbors instead of individually Useful when many neighbors have the same outbound policies
125、 Members can have a different inbound policy Updates generated once per peer group Simplifies configurationExample: Peer Group Router C Using a Peer GroupRouter C Without a Peer Grouprouter bgp 65100neighbor 192.168.24.1 remote-as 65100neighbor 192.168.24.1 update-source loopback 0neighbor 192.168.2
126、4.1 next-hop-selfneighbor 198.101.24.1 distribute-list 20 outneighbor 192.168.25.1 remote-as 65100neighbor 192.168.25.1 update-source loopback 0neighbor 192.168.25.1 next-hop-selfneighbor 198.101.25.1 distribute-list 20 outneighbor 192.168.26.1 remote-as 65100neighbor 192.168.26.1 update-source loop
127、back 0neighbor 192.168.26.1 next-hop-selfneighbor 198.101.26.1 distribute-list 20 outrouter bgp 65100neighbor internal peer-groupneighbor internal remote-as 65100neighbor internal update-source loopback 0neighbor internal next-hop-selfneighbor internal distribute-list 20 outneighbor 192.168.24.1 pee
128、r-group internalneighbor 192.168.25.1 peer-group internalneighbor 192.168.26.1 peer-group internal过滤专用AS号过滤专用过滤专用AS号号LondonDenverAS 51Florence10.1.1.5/3010.1.1.6/30AS 52172.48.1.0/2410.1.1.2/3010.1.1.9/3010.1.1.1/3010.1.1.10/30NewYork2.2.2.21.1.1.13.3.3.34.4.4.4AS 65001电信运营商电信运营商: 中国电信中国电信中国电信的客户中国电
129、信的客户Internet过滤专用过滤专用AS相关命令相关命令London:router bgp 51 neighbor 4.4.4.4 remove-private-AS把更新中的私有把更新中的私有AS号移出,范围是号移出,范围是64512-65535使用条件如下1只应用于ebgp2如果AS路径的更新中只有私有的AS号码,BGP就会移出3如果AS路径中既有私有的也有公共的AS,BGP不移出私有AS,这种情况属于配置错误4如果AS路径中包含有EBGP邻居的AS号码,也不移出5如果AS路径中包含有联邦,BGP就会移出出现在AS路径中联邦部分后面的私有AS号BGP backdoor路由通过使用bac
130、kdoor使ebgp的管理距离变为200,从而使IGP更受欢迎后门路由实验后门路由实验LondonDenverAS 52Florence10.1.1.3/2910.1.1.2/2910.1.1.1/29AS 51192.168.1.0/241.1.1.12.2.2.23.3.3.3192.168.2.0/24AS 5310.1.1.9/3010.1.1.10/30EBGPEBGPOSPF要求正常情况下,要求正常情况下,Denver和和London之间走之间走OSPF,当它们的直连链路出,当它们的直连链路出现故障以后,才能走现故障以后,才能走BGP。EBGPFrame-relay后门路由实验后门
131、路由实验 答案答案London:router ospf 1 network 10.1.1.8 0.0.0.3 area 0 network 192.168.1.0 0.0.0.255 area 0!router bgp 51 network 192.168.1.0 network 192.168.2.0 backdoor( 对端的路由,不是自己的)对端的路由,不是自己的)Denver:router ospf 1 network 10.1.1.8 0.0.0.3 area 0 network 192.168.2.0 0.0.0.255 area 0!router bgp 53 network 1
132、92.168.1.0 backdoor network 192.168.2.0路由反射器RR通告原则通告原则RR只通告或反射它所知道的最佳路由RR总是向EBGP对等体通告RR在通告路由时遵循IBGP防环机制RR从EBGP学来的通告给客户和非客户RR从IBGP 的非客户学来的,通告给客户RR从客户学来的,通告给客户和非客户打了no bgp client-to-client reflection,客户不能通告客户) BGP Split HorizonLondonDenver172.16.1.0/24AS 50001FlorenceXIBGPIBGPBGP split horizon: Routes
133、 learned via IBGP are never propagated to other IBGP peersTherefore need full-mesh IBGPFull Mesh IBGP Problem13 Routers = 78 IBGP Sessions!# IBGP sessions = n(n-1)/21000 routers means nearly half a million IBGP sessions!当今当今BGP的设计使用的设计使用当今当今BGP的设计使用的设计使用Full Mesh IBGPAvoids routing information loops
134、Does not scaleMany TCP sessionsReplicate routing trafficSolutions include route reflectorsRoute Reflectors反射器反射器Florence:router bgp 50001 neighbor 1.1.1.1 route-reflector-client neighbor 2.2.2.2 route-reflector-clientLondonDenver172.16.1.0/24AS 50001FlorenceIBGPIBGP 从从EBGP对等体学到的路由按正常的方式处理对等体学到的路由按正常
135、的方式处理 从客户学到的路由要反射给客户和非客户从客户学到的路由要反射给客户和非客户 从非客户学到的只反射给客户从非客户学到的只反射给客户Route Reflectors环路环路London192.168.1.0/24AS 51Florence1.1.1.1AS 52Istanbul4.4.4.4RR.10/3010.1.1.X/30.2/30.5/30.6/30.9/30.1/30RR在反射的时候,在反射的时候,next-hop属性是不会改变的,即使已经设置了属性是不会改变的,即使已经设置了next-hop-selfDenver2.2.2.23.3.3.3Originator-id和和Clu
136、ster-listLondon192.168.1.0/24AS 51Florence1.1.1.1Istanbul4.4.4.42.2.2.2Denver.10/3010.1.1.X/30.2/30.5/30.6/30.9/30.1/303.3.3.3.13/30.14/30no bgp client-to-client reflectionLondon192.168.1.0/24AS 51Florence1.1.1.13.3.3.3Istanbul4.4.4.42.2.2.2Denver.10/3010.1.1.X/30.2/30.5/30.6/30.9/30.1/30.13/30.14/3
137、0192.168.2.0/24BGP团体属性BGP团体属性团体属性 (well-known)(属性只能传一跳)(属性只能传一跳)NO-EXPORT对等体可以将路由公布给联盟内的其他子对等体可以将路由公布给联盟内的其他子AS,但是不,但是不能公布给联盟以外的能公布给联盟以外的ASNO-ADVERTISE不将路由公布给任何不将路由公布给任何BGP对等体对等体LOCAL-AS(只限制在最小的(只限制在最小的as中)中)不将路由公布给任何不将路由公布给任何EBGP(联盟内的联盟内的EBGP也不传也不传)BGP团体属性团体属性 (自定义自定义) 用户可以自定义团体属性,简化网络的配置用户可以自定义团体属
138、性,简化网络的配置 ip community-list 团体属性值的两种格式团体属性值的两种格式: 十进制十进制 ( 缺省缺省 )AA:NN (ip bgp community new-format)AA:NN团体属性值的表示方法团体属性值的表示方法 直接在直接在AA:NN中输入团体属性值中输入团体属性值例如例如: set community 400:50 以十六进制输入以十六进制输入 例如例如: set community 0x1900032 以十进制形式输入以十进制形式输入例如例如: set community 26214450自定义团体属性自定义团体属性LondonDenver10.1.
139、1.6/30AS 50Florence10.1.1.5/3010.1.1.2/3010.1.1.1/30AS 65001192.168.1.0/24192.168.0.0/241.1.1.12.2.2.23.3.3.3192.168.3.0/24192.168.2.0/24AS 65003自定义团体属性配置(缺省十进制)自定义团体属性配置(缺省十进制)London:(Denver配置省略)配置省略)access-list 1 permit 192.168.0.0 0.0.0.255!route-map set-comm permit 10 match ip address 1 set comm
140、unity 5route-map set-comm permit 20 set community 10!router bgp 65001 neighbor 2.2.2.2 send-community neighbor 2.2.2.2 route-map set-comm outFlorence:ip community-list 1 permit 5!route-map comm-pref permit 10 match community 1 set local-preference 150route-map comm-pref permit 20 set local-preferenc
141、e 200!router bgp 50 neighbor 3.3.3.3 route-map comm-pref in自定义团体属性配置(自定义团体属性配置(AA:NN)London:(Denver配置省略)配置省略)ip bgp-community new-formataccess-list 1 permit 192.168.0.0 0.0.0.255route-map set-comm permit 10 match ip address 1 set community 65001:5route-map set-comm permit 20 set community 65001:10!r
142、outer bgp 65001 neighbor 2.2.2.2 send-community neighbor 2.2.2.2 route-map set-comm outFlorence:ip bgp-community new-formatip community-list 101 permit .*:5route-map comm-pref permit 10 match community 101 set local-preference 150route-map comm-pref permit 20 set local-preference 200!router bgp 50 n
143、eighbor 3.3.3.3 route-map comm-pref inBGP联盟IBGP Transit AS - Problems IBGP 需要在需要在BGP对等体间建立全网状互联对等体间建立全网状互联large number of TCP sessionsunnecessary duplicate routing traffic 解决方案解决方案route reflectors modify IBGP split horizon rulesBGP confederations modify IBGP AS Path processingBGP联盟联盟 将将AS分成更小的分成更小的A
144、SAS 51AS 52AS 53AS 65001AS 65002AS 65003AS 65004真实的真实的EBGP会话会话IBGP会话会话联盟内的联盟内的EBGP会话会话 将将AS划分成更小的划分成更小的AS可以减少可以减少IBGP会话的数量会话的数量 BGP联盟隐藏了内部联盟隐藏了内部AS的号码的号码 ,对外部只宣告一个,对外部只宣告一个AS号号联盟对联盟对BGP选路的影响选路的影响 到联盟的外部到联盟的外部EBGP路由优于到联盟成员路由优于到联盟成员AS的的EBGP 路由,而到联盟成员路由,而到联盟成员AS的的EBGP路由优于路由优于IBGP路由路由 在联盟内保留联盟外部的在联盟内保留联
145、盟外部的next-hop属性属性 公布给联盟的公布给联盟的MED属性在整个联盟内保留属性在整个联盟内保留 本地优先属性在整个联盟内保留本地优先属性在整个联盟内保留 在联盟范围内,联盟成员的在联盟范围内,联盟成员的AS号加入到号加入到AS-path中,中, 但是它不会被公布到联盟范围以外但是它不会被公布到联盟范围以外 as-path中的联盟成员中的联盟成员AS号仅用于防止环路,在计算号仅用于防止环路,在计算 as-path长短时,不考虑成员长短时,不考虑成员AS号号 在在BGP选路时,不考虑联盟内部路由的选路时,不考虑联盟内部路由的MED值值BGP联盟实验联盟实验R2R3R4R5R7R8AS 1
146、000AS 3000AS 65501AS 65502AS 65504AS 65503.1/30.2/3010.1.1.X/30.6/30.5/30.9/30.10/30.14/30.13/30.17/30.18/30.21/30.22/30.25/30.26/30.29/30.30/30192.168.1.0/24192.168.2.0/24172.16.1.0/24172.16.2.0/24R6R1AS 2000BGP联盟实验联盟实验 部分配置部分配置R4:router bgp 65502 bgp confederation identifier 3000 bgp confederation
147、 peers 65501 65504 neighbor 3.3.3.3 remote-as 65001 neighbor 3.3.3.3 ebgp-multihop 2 neighbor 3.3.3.3 update-source Loopback0 neighbor 3.3.3.3 next-hop-self neighbor 5.5.5.5 remote-as 65002 neighbor 5.5.5.5 update-source Loopback0 neighbor 5.5.5.5 next-hop-self neighbor 7.7.7.7 remote-as 65004 neighbor 7.7.7.7 ebgp-multihop 2 neighbor 7.7.7.7 update-source Loopback0 neighbor 7.7.7.7 next-hop-self让让bgp比较联盟内部路由的比较联盟内部路由的MED值值: bgp deterministic-medEND