BGP知识点归纳

2018年6月23日23:34:27 发表评论 543 views

.AS

概念

Autonomous System,自治系统。AS是指由同一个技术管理机构管理,使用统一选路策略的一些路由器的集合

范围

AS的内部使用IGP来计算和发现路由,如OSPF,ISIS,RIP

 

AS之间使用BGP传递和控制路由

BGP进程号

公有:1~64511

 

私有:64512~65535

分配

每个AS都有唯一的AS编号,这个编号是由IANA分配的

 

.BGP的邻居关系

邻居的发现

BGP使用TCP封装建立邻居关系,端口号为179TCP采用单播建立连接,单播建立连接也使BGP只能手动指定邻居

 

 

建立条件

确保TCP179端口可达,确保网络层可达

 

 

类型

EBGP

范围

不同AS之间

 

 

建立方式

优先使用物理接口建立

 

IBGP

范围

同个AS之间

 

 

建立方式

优先使用loop back建立

配置Router ID(标识路由器)

如果没有配置Router IDBGP路由器会按一定规则自动选举Router ID

选举规则

路由器在它的所有LoopBack接口上选择数值最高的IP地址

 

 

 

如果没有LoopBack接口,路由器会在它的所有物理接口上选择数值最高的IP地址

区别

BGP邻居关系的类型主要靠配置的AS号区别,AS号相同则为IBGP邻居关系;AS号不同,则为EBGP邻居关系

 

 

 

.报文类型

Open报文

TCP连接建立后发送的第一个报文,用于建立BGP邻居之间的连接关系

 

Update报文

用于在BGP邻居之间交换路由信息,用来公布可用路由和撤销路由

包含

 

 

网络层可达信息(NLRI),用来公布IP前缀和前缀长度

 

 

路径属性,为BGP提供环路检测,控制路由优选。

 

 

撤销路由,用来描述无法到达且从业务中撤销的路由前缀和前缀长度

Notification报文

BGP路由器检测到错误状态时,就向邻居发出Notification报文,之后BGP连接会立即中断

 

Keepalive报文

BGP路由器会周期性的向邻居发出Keepalive报文,用来保持连接的有效性

 

Route-refresh报文

Route-refresh用于在改变路由策略后请求对等体重新发送路由信息

 

 

.邻居关系建立过程

初始状态

Idle状态是BGP初始状态。在Idle状态下,BGP路由器拒绝邻居发送的连接请求。只有在收到本设备的Start事件后,BGP路由器才开始尝试与其邻居进行TCP连接,并转至Connect状态

Connect状态

BGP路由器启动连接重传定时器(Connect Retry),等待TCP完成连接

TCP连接成功的情况

OpenSent---OpenConfirm---Established

TCP连接失败的情况

转至Active状态,如果连接重传定时器超时,BGP路由器仍没有收到邻居的响应,那么BGP路由器转至Connect状态

 

.路由的生成方式

Network

逐条将IP路由表中已经存在的路由引入到BGP路由表中

Import

根据运行的路由协议(RIPOSPFISIS等)将路由引入到BGP路由表中,同时import命令还可以引入直连和静态路由,为了防止其他路由被引入到BGP中,需要配置ip-prefix进行精确匹配,调用route-policyBGP引入路由时进行控制

 

.BGP的通告原则

仅将自己最优的路由发布给邻居

连接一建立,BGP路由器将把自己所有BGP路由通告给新对等体,多条路径时,BGP路由器只选最优的给自己使用,BGP路由器只把自己使用的最优路由通告给对等体

通过EBGP获得的最优路由发布给所有BGP邻居

BGP路由器从EBGP获得的路由会向它所有BGP对等体通告(包括EBGPIBGP

通过IBGP获得的最优路由不会发布给其他的IBGP邻居

BGP Speaker 从IBGP获得的路由不会通告给它的IBGP邻居

BGP与IGP同步

BGP Speaker 从IBGP获得的路由是否通告给它的EBGP对等体要依IGPBGP同步的情况来决定

注意:保证IBGP下一跳可达

 

.防环机制

ibgp对等体收到的路由更新,不会传给ibgp对等体。会导致部分设备的路由不可达:解决的方法是full-match,同时引入新的问题是:设备需要维护很多的bgp的对等体关系;路由反射器或联盟

 

八.BGP路径属性

公认必遵(Well-known Mandatory)

BGPUpdate消息中必须包含的属性

Origin

 

 

AS_Path

 

 

Next_hop

公认任意(Well-known Discretionary)

不必存在于BGP的Update消息中,可以根据需求自由选择的属性

Local_Pref

 

 

Atomic_aggregate

可选过渡(Optional Transitive)

BGP不能识别该属性,但可以接收该属性并将其发布给它的邻居的属性

Aggregato

 

 

Community

可选非过渡(Optional Non-transitive)

BGP可以忽略包含该属性的消息并且不向它的邻居发布

MED

 

.BGP路由选择原则

BGP路由器将路由通告给邻居后,每个BGP邻居都会进行路由优选

路由选择情况

 

该路由是到达目的地的唯一路由,直接优选

 

对到达同一目的地的多条路由,优选优先级最高的

 

对到达同一目的地且具有相同优先级的多条路由,必须用更细的原则去选择一条最优的

 

.BGP计算路由优先级规则

丢弃下一跳不可达的路由

 

优选Preference_Value值最高的路由(私有属性,仅本地有效)

 

优选本地优先级(Local_Preference)最高的路由

 

优选手动聚合>自动聚合>network>import>从对等体学到的

 

优选AS_Path短的路由

 

起源类型(Origin)IGP>EGP>Incomplete

 

对于来自同一AS的路由,优选MED值小的

 

优选从EBGP学来的路由(EBGP>IBGP

 

优选AS内部IGPMetric最小的路由

 

优选Cluster_List最短的路由

 

优选Orginator_ID最小的路由

 

优选Router_ID最小的路由器发布的路由

 

优选具有较小IP地址的邻居学来的路由

 

 

十一.BGP路由聚合

方式

配置命令(路由策略配置)

静态

network 聚合的ip地址以及掩码

ip route-static  聚合的ip地址以及掩码 NULL 0(为了防止路由环路,下一跳须指向NULL 0

自动聚合

summary automatic

手动聚合

aggregate 聚合的ip地址以及掩码

detail-suppressed

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: