NotedBy3s_NwgeekBGP边界网关协议主要作用:AS间传递路由信息,路径控制BGP的自治系统通过AS号来区分AS:1-65535;(64512-65535是私有AS号)AS号由IANA分配旧版AS号16bit新版AS号32bit企业BGP与ISPBGP连接方式单线单宿主:只连接到一家ISP且没有冗余链路双线单宿主:只连接到一家ISP有两条冗余链路单线多宿主:连接到多家ISP双线多宿主:连接到多家ISP,同时使用两条链路使用BGP情景大量路由需要传递当AS连接到多宿主时有一个AS为TransitAS时AS之间要部署路径控制策略时不使用BGP情景路由条目少单宿主设备性能差路径矢量特征AS_PATHout的时候才加路径矢量信息中包含一个BGP自治系统号列表路径矢量可用来防环路BGP支持对不同的路径使用路由策略BGP特征应用层协议BGP使用TCP为传输层协议,TCP端口号为179BGP路由器之间建立TCP连接,这些路由器称为BGP对等体也叫BGP邻居EBGP、IBGP对等体之间交换整个BGP路由表BGP路由器只发送增量更新BGP三张表BGP邻居表:邻居列表BGP表:包含了邻居到达目的网段的最佳路径,路由表:列出了到达目的地的网段的最佳路径BGP两种路由(EBGP路由AD为20,IBGP路由ad为200)基本介绍:每台运行BGP的路由器都有一个独立的表,并只能加入一个AS路由器将BGP表中优化了的路由(最佳路由)放进了IP路由表BGP需要手工配置每个邻居,邻居之间必须建立tcp关系BGP必须单播建立邻居运行BGP的路由器成为BGPspeeker,邻居称为BGPpeerBGP数据包OPEN作用:协商BGP邻居的各项参数,建立邻居关系发包:TCP建立后,发送open报文,用来标识自己UPDATE作用:进行路由信息交换发包:建立连接后,有路由需要发送或者路由变化时,发送UPDATE通告对端路由信息NOTIFICATION作用:报告错误,终止邻居关系发包:当BGP在运行中发现错误时,要发送NOTIFICATION报文通告BGP对端KEEPALIVE作用:维持邻居关系发包:定时发送KEEPALIVE保温以保持BGP关系的有效性Router-refresh作用:为保证网络稳定,触发更新路由的机制发包:当路由策略发生变化时,触发请求邻居重新通告路由器邻居关系:IBGPpeerIBGP邻居关系:位于同一个AS的BGP路由器之间,成为IBGPIBGPTTL=255建议使用Loopback建立IBGP邻居(router)#neighbor10.1.1.1remove-as100(router)#neighbor10.1.1.1update-sourceloopback0EBGPpeerBGP的路由优化问题showipbgp:检查bgp的数据库,数据库中会列出所有目的网段的所有路径best,代表这条路由允许被加载到路由表*可用路由rRIB-failure,加载路由表失败的路由#showipbgprib-failure*可用、可加载到路由表的路径***BGP的路由优化的条件:1、下一跳可达2、满足同步的要求(默认关闭)(-router)#synchronzation3、属性胜出4、没被过滤下一跳的问题BGPpeer之间传递路由,,默认会以自己的更新源作为对方的下一跳ipBGP是一个ASBYAS的协议,如果收到了EBGP路由,那么下一日奥会是路由发起AS的BGP设备更新源下一跳的问题的三种解决方案1、每台路由器添加去往下一跳的静态路由2、在as边界路由器上,将去往对端AS的路由重分布到IGP中3、在AS边界路由器上,对所有IBGP邻居都加上next-hop-self(内部路由不需要)BGP参数调整PeerGroup(config-router)#neighborPEER-GROUP-NAMEpeer-group(config-router)#neighborIP-ADDRESSpeer-groupPEER-GROUP-NAME将策略相同的邻居划分到一个对等体组中,可简化配置对等体组成员集成对等体组的所有配置选项减少命令行,减少用buffer维护BGP硬重置clearipbgp{10.1.1.1|*}直接断开tcp链接软重置出站软重置clearipbgp*softout不会重置bgp会话产生新update发送给邻居检查软重置对路由条目的增加,减少的刷新效果不明显,但是对路由属性的调整效果明显BGP建完邻居后,有没有bgp路由传递,取决于邻居是否将路由导入了BGP用loopback接口建立EBGP邻居的问题(1)EBGPpeer之间的loopback口是否能互通解决:可以用明细静态路由(不能用默认路由),添加去往对端的loopback口BGP路径选择BGP聚合过滤