一,BGP概述:BGP是自治系统之间进行路由学习及选路的协议 1.自治系统 自治系统是由同一个技术管理机构管理,使用统一选路策略(运行同一动态路由协议)的一组路由器组的集合 2.动态路由的分类 (1)按自治系统分类 IGP:即自治系统内部的路由协议,主要包含RIPv1/v2,OSPF,ISIS,EIGRP(思科私有协议) EGP:即自治系统之间的路由协议,通常指BGP,EGP是运行在AS与AS之间的路由协议 (2)按协议类型分类 距离矢量路由协议:RIPv1/v2,BGP(路由矢量协议),EIGP(高级的距离矢量协议) 链路状态路由协议:OSPF,ISIS 3.BGP的概念 BGP是一种运行在AS与AS之间的动态路由协议,主要作用是在AS之间自动交换无环路由信息 4.BGP的特征 传输协议:TCP,端口号179 是一种增强的路径矢量路由协议 拥有可靠的路由更新机制 具备丰富的Metric度量方法 无环路协议设计 为路由条目附带多种属性信息 支持CIDR(无类别域间选路) 丰富的路由过滤和路由策略 无须周期性更新 路由更新时只发送增量路由 周期性发送KeepAlive报文,以保持TCP连通性 二,BGP的工作原理 BGP时跨公网,跨自治系统的协议,可以在自治系统之间学习路由 BGP报文:Open包报文,Update报文,Notification报文,Route-Refresh,KeepAlive BGP状态机:IdIe状态,Connect状态,Active状态,Opensent状态,Established状态 BGP的邻居关系 IGBGP:同一个AS内部的BGP邻居关系,(内部) EBGP:AS之间的BGP邻居关系,(外部) 根据邻居间是否属于同一个自治系统可以判断,R1和R2时EBGP邻居关系,R2和R4时IBGP邻居关系,R4和R5时EBGP邻居关系, 三,通告BGP路由的方法 (Network方式)宣告网段 (inport方式)相当与路由重分发 通过 display bgp routing-table 可以查看BGP的路由表 四,BGP对等体的配置 四,BGP的属性 公有必遵:所有BGP路由器都可以识别,且必须在于Update报文 公认任意:所有BGP路由器都可以识别,但不要求必须在于Update报文中,可以根据具体情况来决定是否添加到Update消息中 可选过度:BGP路由器可以选择是否在Update消息中携带这种属性,接收的路由器如果不识别这种属性,可以转发给邻居路由器(这就是过度的含义) 可选非过度:BGP路由器可以选择是否在Update消息中携带这种属性,在整个路由发布的路径上,如果部分路由器不能识别这种属性,可能会导致该属性无法发挥作用,因为接收的路由器如果不能识别这种属性,将丢弃这种属性,而不再转发给邻居路由器 BGP的常用属性有Origin,AS-PATH,NEXT-Hop,Local-pref和MED等 Origin属于公有必遵,用来定义路径信息的来源,其作用是标记一条路由是怎么成为BGP路由的,它有一下三种属性: IGP(i):优先级最高 EGP(e): 优先级次之 lncomplete(?):优先级最低 五,BGP的选路原则 六,实验案例 1.先配置各个接口的ip和loopback,分别为1.1.1.1 2.2.2.2 3.3.3.3 4.4.4.4 2.给右边三个路由器配置OSPF(在R2.R3.R4上配置OSPF) R2如下(内部网段) R3如下: R4如下: BGP配置 R1如下 输入对端的端口ip,宣告自己 R2如下 next那个命令是告诉R4要访问R1的下一跳端口在R2上 R3如下 R4如下 接下来j就可以用R1pingR4了 指明谁来ping谁 最后还有选路配置(共3中方法) 1.(根据本地优先级控制选路) 在R3上配置:route-policy lop permit node 10 //创建名为lop的路由策略 [R3-route-policy]apply local-prefernce 222 //设置本地优先级为222 quit [R3]bgp 200 [R3-bgp]peer 10.0.34.4 route-policy lop export <R3>reset bgp all //重启BGP 2.(使用AS-PATH属性控制选路)在R2上 [R2]route-policy as permit node 10 [R2-route-policy]apply as-path 123 123 123 additive [R2-route-policy]quit [R2]bgp 200 [R2-bgp]peer 10.0.24.4 route-policy as export <R2>reset bgp all 3.(通过MED属性控制选路)小的优先 在R2上配置 【R2】route-policy med permit node 10 [R2-route-policy]apply cost + 500 [R2-route-policy]quit [R2]bgp 200 [R2-bgp]peer 10.0.12.1 route-policy med export 都用display bgp routing-table来查BGP的路由表 六,还有一个实验案例,多加一个路由器 多加一个路由器就相当于多了一个区域,之间步骤一样,稍微修改一下,R4得告诉R2和R3,你要访问R5得从我这口过,所以在R4上加俩条下一跳,再配置一下R5,就可以了 R5配置如下: loopback 为5.5.5.5 bgp为300 R4配置在加这几条 按照之前的实验在R4上加俩条,R5配置 实验完成!!!!!!!!!!