




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
BGP(Border Gateway Protocol)理论部分BGP属于EGP,是高级DV协议,也被称为路径矢量协议,基于TCP 179端口。现在使用版本BGP4。 第一次做完整更新,以后就只增量更新Autonomous Systems:运行同一种选路策略,由统一管理者管理。 164511(公有)6451265535(私有) 电信AS号:4134 网通AS号:9929 B 一个好的网站,可以了解到关于AS号的一些信息 Telnet 这一地址可以看到公网上的路由条目数IGP支持的路由条目有限运行IGP不利于管理,做路由聚合、选路。BGP路由器只能将其使用的路由通告给他的邻居。BGP用Open报文建邻居,用KL报文做日常联系Neighbor table :List of BGP neighborsBGP forwarding table/databaseList of all networks learned from each neighborCan contain multiple pathways to destination networks Database contains BGP attributes for each pathwayIP routing tableList of best paths to destination networksBGP表和路由表是独立的,同样遵循AD小的进入路由表。BGP默认不做负载均衡Router-ID选举和OSPF一致。四种报文:Open -includes holdtime and BGP router ID(用于建立TCP连接后,发起BGP会话,每个邻居都用该消息来标识自己,并且规定自己的BGP运行参数)Keepalive (用于保持BGP会话,每隔60秒发送一次,hold time为180S)Update -information for one path only (could be to multiple networks) -Includes path attributes and networks一个UPDATE 消息一次只能通告一条路由,但它可以携带多个属性。一个UPDATE 消息一次也可通告多条路由,但它的属性必须相同。一个UPDATE 消息可以同时撤消多条路由。Notification -when error is detected -BGP connection is closed after sent(当检测到错误的时候就会发起Notification消息。通常会导致BGP连接的终止) 1,空闲状态:BGP通常以空闲状态开始。在该状态下,它拒绝接收所有入连接。当一个开始时间出现的时候,BGP过程初始化所有的BGP资源,打开重试连接计时器、初始化到邻居的TCP连接,接听来自邻居的TCP初始化消息并将它的状态转到接连状态。开始事件是又一个操作者配置BGP的一个过程。2,连接状态: 在这种状态下,BGP过程会等到TCP连接完成以后再决定后续的动作。如果连接建立成功,BGP连接将ConnectRetry清零,完成初始化过程,给邻居发送一个Open消息并转移到发送Open消息状态。如果TCP连接失败,BGP过程会继续监听由邻居发起的连接,重置ConnectRetry计时器并转移到激活状态。3,激活状态: 在这个状态下,BGP过程试图与邻居建立一个TCP连接。如果连接建立成功,BGP连接将ConnectRetry清零,完成初始化过程,给邻居发送一个Open消息并转移到发送Open消息状态。如果在激活状态时,ConnectRetry计时器超时,该过程回到连接状态。4,发送Open消息状态: 在这种状态下,已经发送了Open消息,BGP正在等待从邻居发来的Open消息。当收到一个Open消息后,检查该消息所有的字段。如果发现了差错,会给它邻居发送一个Notification消息并且将状态转移到空闲。如果在接收到的Open消息中没有发现差错,BGP给邻居发送一个Keepalive消息并且将Keepalive计时器置位。邻居之间协商一个Hold时间,它们会选用较小的值。如果协商的Hold时间是0,则没有启动Hold和keepalive计时器。根据对等的AS号,决定该连接是内部的还是外部的,并且将状态转移到Open消息确认。5,Open消息确认状态: 在这种状态下,BGP过程会等待一个Keepalive或者Notification消息。如果收到了Keepalive消息,转移到建立状态,如果收到了Notification消息或者TCP断开消息,转移到空闲状态。6,建立状态: 在这种状态之下,BGP对等之间的连接完全建立起来了。对等之间可以交换Update,Keepalive和Notification消息。如果收到了Update或Keepalive消息,重新启动Hold计时器 。如果收到Notification消息。状态会转移到空闲。ORIGIN属性ORIGIN是一个公认必选的属性,它明确了路由更新消息的来源。当BGP有多条路由时,它会将ORIGIN当作一个决定较优路由的因素。它规定了以下几种源:IGP一个IGP源会得到ORIGIN值中的最佳的选项。EGPNLRI是从EGP学习到的。相对于IGP,EGP是第2选择。IncompleteNLRI是通过其他手段学习到的。是ORIGIN最低的选择。AS-PATH属性AS-PATH 是一个公认必选属性。它用AS号的顺序来描述AS间的路径或者到NLRI所明确的目的地的路由。AS-PATH属性的另外一个功能就是避免环路,如果BGP路由器从它的外部对端处收到了一条路由,而该路由的AS-PATH包含这个BGP路由器自己的AS号,于是该路由器就知道是条环路路由,从而将这样的路由丢弃掉。R1(config)#route-map ASR1(config-route-map)#set as-path prepend 7 8 9 设置虚拟的AS号通常都会这样加set as-path prepend 4 4 4 加自已的AS号,不易搞混NEXT_HOP属性NEXT_HOP是一个公认必选属性。描述了公布目的地的路径下一跳路由器的IP地址。由BGP NEXT_HOP属性所描述的IP地址不经常是邻居路由器的IP地址。要遵循下面的规则:如果正在进行的路由宣告的路由器和接收的路由器在不同的AS中,NEXT_HOP地址为正在宣告路由的路由器接口IP地址。如果正在进行宣告路由的路由器和接收的路由器在同一个AS里,并且更新消息的NLRI指明目的地是同一个AS内,那么NEXT_HOP就是已经宣告路由的邻居的IP地址。如果正在宣告的路由器和接收的路由器是内部对等实体,并且更新消息的NLRI指明目的地在不同的AS内。NEXT_HOP是外部对等的接口地址。LOCAL_PREF属性LOCAL_PREF是公认自选属性。只用在内部网关对端之间的更新消息中。它不会传递给其他的AS。如果一个内部运行BGP的路由器收到了一个目的地的多条路由。它将这些路由的LOCAL_PREF进行比较,选择具有最高优先级的路由。它只能影响离开AS的业务量。R1(config)#route-map WER1(config-route-map)#set local-preference 101R1(config-router)#bgp default local-preference 101 会影响所有路由打上这一命令后-对EBGP传过来的路由自己network的路由起效,要show明细才能看到。对IBGP传过来的路由不起效。MED属性MED属性是一个任选非传递属性。这个任选非传递属性与EBGP的Update消息中携带,它允许一个AS将它的首选的入口点通知另外一个AS。如果其他参数都相同,则收到同一个目的地的多条路由的AS将这些路由的MED进行比较,具有最低MED值的路由为首选。这是因为将MED看成一个度量,并且最低的度量-最短的距离-是首选。MED值只会传递给配置MED值的对端AS,从而使他们知道优先的路由,但是接收的AS不会在继续传递给下一个AS。如果同一个目的地的两条路由来自两个不同的AS,也不进行MED值的比较。MED值只对单一的AS有意义,当该AS有多个入口点时,它用来说明首选项的等级。R1(config)#route-map MEDR1(config-route-map)#set metric 1R1(config-router)#neighbor route-map MED out测试方法:扩展ping / debug ip bgp updates默认比较从不同AS传来路由的MED。R2(config-router)#bgp always-compare-med ATOMIC_AGGREGATE属性ATOMIC_AGGREGATE属性是一个公认必选的属性,它用来警告下游路由器出现了路径信息丢失。当一个BGP路由器将更具体的路由聚合后,而且已经出现了路径信息丢失时,运行BGP的路由器必须将该属性附加到聚合路由中。任何一台下游路由器收到后,不能使这条NLRI信息更详细。并且当该路由公布给其他对端时,必须也附带该属性.AGGREGATOR属性 当设置了ATOMIC_AGGREGATE属性,运行 BGP的路由器可以选择附加AGGREGATOR属性。这个任选可透明传递属性包括发起聚合路由的路由器的AS号以及IP地址,从而提供了执行聚合的地点的信息。Community属性 COMMUNITY是一个人选可透明传递的属性。COMMUNITY属性标明一个目的地作为一些目的地团体中的一个成员,这些目的地共享一个或者多个共同的属性。 “可选”:BGP的所有邻居都有可能不识别社团属性。(是可选的,路由器默认不认识)R2(config-router)#neighbor send-community “传递”:社团属性只会传给指定的邻居,并只在此邻居上起效。比如上例:就只传给这一邻居,并只在它上面起效,不会再向后传no-advertise:携带此属性的路由不会通告给任何BGP邻居。no-export:携带此属性的路由不会传出本AS外,只会传给IGP。(联邦中的小AS会传递)。local-AS:携带此属性的路由不会传出小AS。R1(config-route-map)#set community no-advertise/no-export/local-ASWeight属性 Weight属性是Cisco私有的属性。只适用于一台路由器中的路由。该参数不会传递给其他的路由器。Weight值越高,优先级就越高。当一个路由有多条路径的时候,路由器选择Weight值最高的那条路由。由本地路由器产生的所有路由Weight值都是32768。 修改Weight-R1同时从R3和R2学到同一条BGP路由,在R1上改:Neighbot weight 1R1(config)#route-map WER1(config-route-map)#R1(config-route-map)#set weight 8R1(config-router)#neighbor weight 8 AS-SET属性 AS-SET属性的作用是在当路由聚合以后,NRLI信心产生了丢失,通过使用AS-SET属性,可以修复原来丢失的属性。如聚合后,路由经过的AS号丢失,通过使用AS-SET,可以还原原来丢失的AS号。防止环路的产生。BGP路径抉择的过程:1, 首选具有最高Weight值的路由。2, 如果Weight相同,那么选择具有最高LOCAL_PREF值的路由。3, 如果LOCAL_PREF值相同,首选逻辑上在该路由器上发起的路由。也就是说,首选从同一个路由器上起源于IGP学习到的路由。4, 如果LOCAL_PREF值相同,而且没有逻辑上发起的路由,首选具有最短AS-PATH的路由。5, 如果AS-PATH相同,首选具有最低ORIGIN CODE的路由,IGPEGPIncomplete6, 如果ORGIGN相同,首选具有最低MED值的路由。7, 如果MED相同值,在EBGP路由和联盟EBGP中,首选EBGP路由,在联盟EBGP路由和IBGP路由中首选联盟EBGP路由。8, 如果路由相同,首选到BGP下一跳最短的路径。9, 如果路由相同,首选具有最低路由器ID的BGP路由。10, 如果路由器ID相同,首选具有最低IP地址的接口地址的路由。BGP路由黑洞的解决方法:1)物理线路的Full Mesh (成本高,不可取)2)BGP重分布进IGP(不可取)3)BGPs Full Mesh IGP内所有路由器都运行BGP(不可取)4)BGPs Partial Mesh (路由反射器/联邦)BGPs Split Horizon Rule:IBGP:从IBGP邻居收到的路由不再传给其他的IBGP邻居。EBGP:不接收携带本AS号的路由更新。EBPG之间用直连接口来建邻居IBGP中用环回口建邻居Synchronization同步。只针对IBGP邻居BGP 的同步仅限于IBGP的邻居,BGP同步的默认情况下,AS内的一个路由器从IBGP学到一条路由,不使用也不传,除非是从IGP也学习到该路由。如果这个时候关闭BGP同步规则,就会产生一个路由黑洞。例如:假如同步关闭的情况下,IGP并不知道AS100和AS300的路由,当R1从AS100学过来一条路由,并且使用next-hop-self命令将下一跳改成自己的接口(EBGP默认学习过来的下一跳是对端路由器的接口)发布给IBGP邻居R4时,R4因为下一跳可达(IGP知道),所以将该路由加入路由表,并且发布给AS300,当AS300要去这个目的地时,它会将数据传给R4,R4收到这个数据包后,查看目的地址发现是去AS100的,它查看自己的路由表发现下一跳是R1的接口地址,于是继续查看路由表发现要去R1首先得经过R3,于是它把数据传送给了R3,由于R3运行的是IGP,并且它不知道AS100里的路由情况,所以它没有到达这个目的地的路由表,它会丢弃该路由,这样就造成了一个路由黑洞。如果同步开启的情况下,R1收到了来自AS100的路由后,由于R1没有将BGP重发布进IGP,所以R1的IGP并不知道AS100里的路由情况,所以R1不会使用这一条路由,也不会传递给其他邻居。所以路由黑洞不会产生。解决IBGP路由器收到更新不会转发给其他IBGP邻居的方法:Reflector打破IBGP的水平分割规则。如果路由是从非客户的IBGP对等学习到的,只将它反射给客户。如果路由是从客户处学习到的,将它反射给除了发起该路由的客户外的所有非客户及客户。如果路由是从EBGP对等处学习到的,将它反射给所有的客户和非客户。Confederation联邦 联盟是控制大型IBGP对等的另一条途径。在联盟内的运行BGP的路由器和在同一个联盟AS内的对端之间使用IBGP,和其他联盟对端之间使用EBGP。给每个联盟分配一个联盟ID。对外部联盟内的对端来讲,这个联盟ID代表整个联盟AD号,外部对端看不到联盟的内部结构,只看到这些联盟所在的AS。将大AS划分成若干个小AS,小AS之间是EBGP关系。1、联邦中的所有路由器都必须用起小AS号。(Route bgp 小AS)R2#show ip bgp neighbor adverised-routes2、联邦中的所有路由器都必须声明大AS号R1(config-router)#bgp confederation identifier 13、连接小AS的边界路由器要互相指peers:联邦中的小AS号(64512)不算作比较,只算作一个R1(config-router)#bgp confederation peers 64512(对端小AS号)联邦外路由器和联邦的边界路由器建立邻居关系时,neighbor大AS号。在sh ip bgp中,小AS号会用括号括住,并且不算做一个进行路径比较的AS号BGP基础配置部份R4(config)#router bgp 64512R4(config-router)#bgp router-id R4(config-router)#neighbor remote-as 64513 (EBGP邻居)R2(config)#router b 64513R2(config-router)#neighbor remote-as 64513(IBGP邻居)R2(config-router)#neighbor update-source loopback 0 (更新源是环回口)R3(config)#ip route serial 0R5(config)#ip route serial 0R5(config-router)#neighbor update-source loopback 0R3(config-router)#neighbor ebgp-multihop 2 (EBGP设置多跳,环回口才用得上)R5(config-router)#neighbor ebgp-multihop (默认255)R2#show ip bgp summary (摘要的邻居邻居信息)R2#show tcp brief R2#show ip bgp neighbors (详细的邻居信息)R4(config-router)#network mask (严格按照IP地址掩码通告)R4(config-router)#network (在auto-summary时,也可以主类方式通告)重发布BGP进入IGP将BGP重发布进IGP的时候,只能发布EBGP学来的路由和自己宣告的路由进入IGP,从IBGP学来的路由不能发布进去,应为I BGP默认不转发给其他IBGP邻居,从发布进IGP的话就等于延长了传播,容易造成环路,而且IBGP的路由都在同一个AS类,推荐使用IGP来完成。如果要强行发布IBGP路由进入IGP,那么在BGP下打 Bgp redistribute-internalPeer-GroupBGP为每个邻居都占用一个Buffer,使用Peer-Group可以使多个邻居共用一个Buffer。针对多的邻居关系,减少配置量。R1(config-router)#neighbor WOLF peer-group R1(config-router)#neighbor WOLF remote-as 64513R1(config-router)#neighbor WOLF update-source loopback 0 调用:neighbor peer-group WOLF R1,R2通过EIGRP 100和IBGP互联,EIGRP 100通告环回接口192.168.192-199段进入BGP。那么汇总的路由要发布给其他AS可以有下面的方法和问题。1,使用静态路由聚合。Ip route null0 Router bgp 100Network mask 通过使用上面的配置来宣告汇总路由。这样不用将EIGRP重发布进BGP也能通告一个汇总路由给其他AS。2,抑制更具体的路由。Router bgp 100Aggregate-address summary-onlyRedistribute eigrp 100在R1,R2上重发布EIGRP 100 进入BGP,要使用aggregate-address命令前提是bgp路由表里面必须得有需要聚合的路由详细条目。通过配置aggregate-address命令可以代替用静态路由方法通告汇总路由,后面如果跟summary-only命令的话,那么就会抑制具体的路由,只发布汇总后的路由。如果不加上一个summary-only的话就会连具体路由一起通告出去,这样对方AS会更方便的控制路由。s 0 32768 ?* /21 32768 i* i 0 100 0 is 0 32768 ?s 0 32768 ?s 0 32768 ?s 2297856 32768 ?s 2297856 32768 ?s 2297856 32768 ?s 2297856 32768 ?加上summary-only之后,在show ip bgp时会显示出以上表格,前面的S代表抑制后的路由。不会发给对方AS。3,公布具体地址以及聚合路由。在上面拓扑中,要满足将聚合路由和具体的地址通告给AS200,方便AS200控制具体的路由,又要满足AS300只能收到聚合的路由,可以通过以下几种方法来满足。在R1上配置:Router bgp 100Aggregate-address Neighbor route-map community outNeighbor send-community access-list 101 permit ip host host (精确匹配聚合路由)route-map community permit 10match ip add 101route-map community permit 20set community no-export在R2上配置:Router bgp 100Aggregate-address Neighbor route-map community outNeighbor send-community Ip prefix-list 101 permit /21Route-map community permit 10Match ip add prefix-list 101Route-map community permit 20Set community no-export通过使用community no-export命令,将社团属性通告给AS200,该属性的作用是将收到附带该属性的路由不发送给下一个AS,故AS300只能收到没有附带该属性的聚合路由。* 2169856 0 100 ?* i 2169856 100 0 100 ?* /24 0 0 100 ?* i 0 100 0 100 ?* 0 0 100 ?* i 2297856 100 0 100 ?* /21 0 0 100 i* i 0 100 0 100 i* 0 0 100 ?* i 2297856 100 0 100 ?* 0 0 100 ?* i 2297856 100 0 100 ?* 0 0 100 ?* i 2297856 100 0 100 ?* 2297856 0 100 ?* i 0 100 0 100 ?* 2297856 0 100 ?* i 0 100 0 100 ?* 2297856 0 100 ?* i 0 100 0 100 ?* 2297856 0 100 ?* i 0 100 0 100 ?以上为R3的路由表,包括了聚合和具体的路由。 Network Next Hop Metric LocPrf Weight Path* /21 0 200 100 i* 0 200 100 i在AS300的路由表里,仅仅能看到聚合路由。4,公布聚合路由和挑选出来的路由。现在AS100需要公布聚合后的路由,已经经过挑选出来的路由发布给AS200,除了195和199的路由不发布之外,其他所有路由都发布给AS200。通过配置suppress-map抑制列表来满足抑制相应的路由发布给其他AS。在R1上配置:Router bgp 100Aggregate-address suppress-map denyAccess-list 1 permit 55Access-list 1 permit 55Route-map deny permit 10Match ip add 1在R2上配置:Router bgp 100Aggregate-address suppress-map denyIp prefix-list 1 permit /24Ip prefix-list 1 permit /24Route-map deny permit 10Match ip add prefix-list 1R2#show ip bgp* i 2169856 100 0 ?* 2169856 32768 ?* i/24 0 100 0 ?* 0 32768 ?* 2297856 32768 ?* i 0 100 0 ?* /21 32768 i* i 0 100 0 i* 2297856 32768 ?* i 0 100 0 ?* 2297856 32768 ?* i 0 100 0 ?s 2297856 32768 ?* i 2297856 100 0 ?* 0 32768 ?* i 2297856 100 0 ?* 0 32768 ?* i 2297856 100 0 ?* 0 32768 ?s 0 32768 ?在R2上show ip bgp 我们可以看到 和的路由条目前面带有S,表示被抑制后的路由,在AS200已经看不到这2条路由了。5,改变聚合的属性。因为/21段的路由是从EIGRP 100重发布进BGP的,所以所有更具体的路由都有一个incomplete的ORIGIN属性。但是聚合后的路由有一个IGP的ORIGIN属性,这是因为这条路由在R1,R2的BPG进程中发起的。假如我们希望把 R1,R3之间的链路用做主要的链路,R2,R4之前的链路用做备用的链路,那么可以通过attribute-map 命令来完成,也可以通过route-map 指定邻居来完成。在R1上配置:Router bgp 100Aggregate-address attribute-map att suppress-map denyRoute-map att permit 10Set origin igp在R2上配置:Router bgp 100Nei route-map att outRoute-map att permit 10Set origin incompleteR3的路由表:* 2169856 0 100 i* i 2169856 100 0 100 ?* /24 0 0 100 i* i 0 100 0 100 ?* 0 0 100 i* i 2297856 100 0 100 ?* /21 0 0 100 i* i 0 100 0 100 ?* 0 0 100 i* i 2297856 100 0 100 ?* 0 0 100 i* i 2297856 100 0 100 ?* 2297856 0 100 i* i 0 100 0 100 ?* 2297856 0 100 i* i 0 100 0 100 ?* 2297856 0 100 i Network Next Hop Metric LocPrf Weight Path* i 0 100 0 100 ?所有的路由都从R1过去,来自R2的路由属性是?,代表未知属性,那么只有当与R1连接失效的时候才会使用。R4的路由表: Network Next Hop Metric LocPrf Weight Path*i 2169856 100 0 100 i* 2169856 0 100 ?*i/24 0 100 0 100 i* 0 0 100 ?*i 0 100 0 100 i* 2297856 0 100 ?*i/21 0 100 0 100 i* 0 0 100 ?*i 0 100 0 100 i* 2297856 0 100 ?*i 0 100 0 100 i* 22
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 金融服务行业保密协议模板
- 生物医药研发设计质量保障措施
- 小学五年级下册体育比赛组织计划
- 2025人教版小学数学三年级下册实践活动计划
- 医院后勤管理制度与政策法规岗位职责
- 实验楼智能化控制系统-全面剖析
- 铁路安全监测系统-全面剖析
- 智能化信息导航-全面剖析
- 家庭环保亲子活动计划
- 细胞迁移与组织形态发生机制-全面剖析
- 猪场转让合同范本
- 2025年入团考试练习试题(100题)附答案
- 感染性休克指南解读
- JGJ/T235-2011建筑外墙防水工程技术规程
- (正式版)HG∕T 21633-2024 玻璃钢管和管件选用规定
- 幼儿绘本故事之十二生肖
- 病媒生物监测记录表
- 车床、钻床安全风险辨识清单
- BLM(含样例)(培训调研)课件(PPT 121页)
- 第4期一文打尽xps图谱分析教程及在各领域的应用avantage操作指南
- 公司流程文件管理规范
评论
0/150
提交评论