一,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配置
实验完成!!!!!!!!!!
原文地址:https://blog.51cto.com/14400213/2444899