CCNP14-BGP基础

一、概念

BGP:边界网关协议
应用范围:BGP,AS之间的协议
是否携带网络掩码:携带
协议算法:无算法,有大量的规则
协议封装:基于tcp,可靠,端口号179

二、特点

1,路径矢量协议,或者AS-BY-AS
2,触发更新,存在邻居机制
3,单播更新
4,存在大量属性进行选路
5,使用open报文建立邻居,使用keepalive报文维持邻居关系,间隔60s,hold时间为180s
6,支持路由认证
7,支持路由聚合(汇总)
8,消耗路由器资源,一台路由器只能运行一个BGP进程
9,可以在进项和出项对流量实施强大的策略–可控性

三、数据包

Open:存在hold time 和 route-id;用于邻居关系建立;默认仅收发一次即可;
Keeplive:用于保活TCP会话,周期1min,hold time 180s
Update:更新包,用于通告和撤销路由,路由条目: 目标网络号及掩码+ 属性
Notification:报错包,错误信息出现时发送

四、邻居关系,名词解释

公有AS号:1-64511 私有AS号:64512-65535
peers:对等体,就是邻居关系,因为BGP可以非直连建邻
EBGP:不同AS设备建立的BGP邻居关系,通过该关系学习到的路由条目管理距离为20
IBGP:同一个AS设备建立的BGP邻居关系 ,通过该关系学习到的路由条目管理距离为200

五、BGP的防环机制—水平分割

1、EBGP水平分割 –防止EBGP环路;
利用as-pash属性,该属性为路由条目在传递过程中将记录所有经过的AS编号;接收到的路由条目中,若存在本地的AS号,将拒绝;
2、IBGP水平分割—防止IBGP环路;
AS-BY-AS,条目在一个AS内部传递过程中,其属性不变化;
IBGP水平分割—从一个IBGP邻居处学习到的路由条目不得传递给本地的另一个IBGP邻居;
导致IBGP邻居关系的建立数量成指数增长,可以使用联邦和路由反射器来打破;

六、BGP的工作过程

工作过程
1,IP可达 –IGP让两个建立BGP邻居的IP地址可以互相访问
2,单播通过TCP的三次握手,建立TCP的会话;
3,会话建立后,BGP收发一次open报文,建立邻居关系,生成邻居表;
4,邻居关系建立后,使用update携带路由信息传递到邻居处;
5,收集所有的路由信息后,生成BGP表;—本地发出及接收到所有路由信息;
默认将BGP表中,最优路径加载于路由表中;收敛完成,仅keeplive周期保活即可;
结构突变:
1、 新增—出现新增网段时,BGP设备通过IGP协议获知,若新增网段不是被汇总路由中的一条,而是一条明细路由;BGP设备将使用更新包告知邻居;
2、 断开出现断开网段时,BGP设备通过IGP协议获知,若断开网段不是被汇总路由中的一条,而是一条明细路由;BGP设备将使用更新包告知邻居;
3、 无法沟通—hold time超时时,断开TCP会话,删除所有从给邻居学习到的路由条目;
能否重间邻居关系,关注TCP会话是否可以重建,OPEN报文是否能够正常收发;
邻居状态

Down关闭BGP状态
idle开始建立TCP连接状态
Connect (active)TCP会话建立完成
Opensent (openconfirm)发送open
EstablishedBGP邻居建立

七、基本配置

在这里插入图片描述
R1所在AS 1,R2,R3,R4所在AS 234,R5所在AS5
一,建立IBGP邻居
1,同一个AS内保证IGP路由可达
即R2,R3,R4运行IGP协议,这里运行eigrp保证AS 234内全网可达
2,建立IBGP邻居
在AS 234内

R2(config)#router bgp 234	//定义AS号,没有多进程概念,只能运行一个bgp进程
R2(config-router)#bgp router-id 2.2.2.2				 //router-id和ospf选举规则一样
R2(config-router)#neighbor 4.4.4.4 remote-as 234	 //邻居的IP地址和AS号
R2(config-router)#neighbor 4.4.4.4 update-source lo0 //使用环回建立邻居时,修改更新源为环回接口

R4(config)#router bgp 234
R4(config-router)#bgp router-id 4.4.4.4
R4(config-router)#neighbor 2.2.2.2 remote-as 234
R4(config-router)#neighbor 2.2.2.2 update-source lo0

R2#sho ip bgp summary 
BGP router identifier 2.2.2.2, local AS number 234
BGP table version is 1, main routing table version 1	//表更新了几次,version就是几

Neighbor        V          AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
4.4.4.4         4        234       5       6        1    0    0 00:03:54

二,建立EBGP邻居
AS 1和AS 234,AS 234和AS 5
1,EBGP建立邻居时使用环回接口,必须保证两个环回接口互相可达

R1(config)#ip route 2.2.2.0 255.255.255.0 12.1.1.2
R2(config)#ip route 1.1.1.0 255.255.255.0 12.1.1.1
R4(config)#ip route 5.5.5.0 255.255.255.0 45.1.1.2
R5(config)#ip route 4.4.4.0 255.255.255.0 45.1.1.1

2,建立EBGP邻居

R1(config)#router bgp 1
R1(config-router)#bgp router-id 1.1.1.1
R1(config-router)#neighbor 2.2.2.2 remote-as 234
R1(config-router)#neighbor 2.2.2.2 update-source lo0
R1(config-router)#neighbor 2.2.2.2 ebgp-multihop 2 //默认IBGP邻居间数据包的TTL值为255,EBGP邻居间为1,则EBGP邻居间使用环回接口建立邻居,则要修改egbp多跳为2

R2(config)#router bgp 234
R2(config-router)#neighbor 1.1.1.1 remote-as 1
R2(config-router)#neighbor 1.1.1.1 update-source lo0
R2(config-router)#neighbor 1.1.1.1 ebgp-multihop 2

R1#sho ip bgp summary 
BGP router identifier 1.1.1.1, local AS number 1
BGP table version is 1, main routing table version 1

Neighbor        V          AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
2.2.2.2         4        234       3       2        1    0    0 00:00:07        0

R4和R5同理

八、BGP的三张表

1,简化邻居表

R2#sho ip bgp summary 
BGP router identifier 2.2.2.2, local AS number 234
BGP table version is 1, main routing table version 1

Neighbor        V          AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
1.1.1.1         4          1    1270    1271        1    0    0 21:17:29        0
4.4.4.4         4        234       5       6        1    0    0 00:03:54        0
table versionneighborVASMsgRcvdMsgSentTblVerInQOutQUp/DownState/PfxRcd
这个表每更新一次,版本加1邻居使用此接口建邻BGP版本邻居所属AS号接受的消息包数量发送的消息包数量表版本出向队列统计入向队列统计建立邻居的时间建邻状态,建邻之后显示学习对方的路由条目数量

2,BGP的路由表

BGP协议可以逐一宣告本地路由表中任意路由,无论条目的来源,宣告时,所宣告条目的内容必须和路由表中的记录完全一致。
在R1上宣告自己的环回

R1(config)#router bgp 1
R1(config-router)#network 1.1.1.0 mask 255.255.255.0

在R2上查看bgp路由表

R2#sho ip bgp  
BGP table version is 3, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
r> 1.1.1.0/24       1.1.1.1                  0             0 1 i

Status codes:状态码

sdh*>ir
被抑制被惩罚不能学习可用最优IBGP邻居学习到的不能加表

这里R2路由器学习到的1.1.1.0/24路由最优,但是不能加表,是因为R2和R1使用环回接口建立邻居,若使用环回接口建立邻居,则两个环回接口必须可达,所以写了静态路由,静态路由AD值为1,EBGP邻居学的路由AD值为20,故bgp不能加表,但可以传递给下一个bgp邻居
Origin codes:起源码

ie?
通过ibgp邻居,ebgp邻居或自己network引入的路由EBGP协议,现在已不支持重发布引入的

属性

NetworkNext HopMetricLocPrfWeightPath
传递的路由的网络号下一跳属性med属性本地优先级属性权重属性as path属性

3,IP路由表

R2#sho ip route bgp

由于1.1.1.0/24写的静态,故bgp的IP路由表暂时为空

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值