欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

CCNP14-BGP基础

程序员文章站 2024-02-15 17:59:34
...

一、概念

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的工作过程

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

七、基本配置

CCNP14-BGP基础
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 3.3.3.3 remote-as 234	 //邻居的IP地址和AS号
R2(config-router)#neighbor 3.3.3.3 update-source lo0 //使用环回建立邻居时,修改更新源为环回接口

R3(config)#router bgp 234
R3(config-router)#bgp router-id 3.3.3.3
R3(config-router)#neighbor 2.2.2.2 remote-as 234
R3(config-router)#neighbor 2.2.2.2 update-source lo0
R3(config-router)#neighbor 4.4.4.4 remote-as 234
R3(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 3.3.3.3 remote-as 234
R4(config-router)#neighbor 3.3.3.3 update-source lo0

R3#sho ip bgp summary 	//显示bgp的综合信息
BGP router identifier 3.3.3.3, 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
2.2.2.2         4        234       3       3        1    0    0 00:01:04        0
4.4.4.4         4        234       3       3        1    0    0 00:00:11        0

二,建立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
相关标签: CCNP

上一篇: MySQL&Perl,便利之合_MySQL

下一篇: OSPF