BGP基础理论详解

网友投稿 875 2022-05-29

文章目录

BGP概述

优点:

基本概念

BGP 工作原理

BGP对等体之间的交互原则

BGP 与IGP路由的引入

BGP 属性:

BGP选择路由的策略

路由反射器

BGP联盟

BGP概述

边界网关协议BGP(Border Gateway Protocol)

是一种实现自治系统AS(Autonomous System)之间的路由可达,并选择最佳路由的距离矢量路由协议

BGP使用TCP作为其传输层协议(端口号为179),并支持BGP与BFD联动、BGP Tracking和BGP GR和NSR,提高了网络的可靠性。

优点:

保证了网络的安全性:认证和GTSM的方式

灵活性: 丰富的路由策略,能够灵活选录

稳定性:防止路由振荡–路由聚合和路由衰减

可靠性:使用TCP作为其传输层协议

高效性:采用按组打包技术分发–邻居数目多、路由量大且具有相同出口,

基本概念

自治系统AS(Autonomous System):

AS是指在一个实体管辖下的拥有相同选路策略的IP网络。

AS号:

共有:1-64511

私有:64512-65534

记忆办法:

2^16-1=65535,私有AS有1024个,65535-1024=64511,因此为公1-64511有AS

BGP分类

IBGP:运行于不同AS之间

当BGP设备接收EBGP对等体发送的路由时,会将带有本地AS号的路由丢弃。–防环

EBGP:运行于同一AS内部

BGP设备不将从IBGP对等体学到的路由通告给其他IBGP对等体

注意:

如果在AS内一台BGP设备收到EBGP邻居发送的路由后,需要通过另一台BGP设备将该路由传输给其他AS,此时推荐使用IBGP。

BGP报文交互中的角色:

Speaker:发言者—发送BGP报文的设备

•Peer:对等体或邻居

BGP的路由器号(Router ID)

唯一的

手动配置

设备自动选取

缺省情况下,lookback 接口作为 id

没有配置lookback,最大ipv4 接口地址

一旦配置,不会被抢,除非删除接口地址

BGP 工作原理

BGP的报文:5种报文进行交互

Open报文:用于建立BGP对等体连接。

Update报文:用于在对等体之间交换路由信息

BGP基础理论详解

Notification报文:用于中断BGP连接。

Keepalive报文:用于保持BGP连接

•Route-refresh报文:用于在改变路由策略后请求对等体重新发送路由信息。只有支持路由刷新

ljl

初始化idle,如果开启,首先进入发起Connect连接,如果TCP连接成功,那么BGP向对等体发送Open报文,并转至OpenSent状态。

如果TCP连接失败,那么BGP停留在Active状态。超时,返回,connect转态

在OpenSent状态下,BGP等待对等体的Open报文,并对收到的Open报文中的AS号、版本号、认证码等进行检查。

如果收到的Open报文正确,那么BGP发送Keepalive报文,并转至OpenConfirm状态。

如果发现收到的Open报文有错误,那么BGP发送Notification报文给对等体,并转至Idle状态。

在OpenConfirm状态下,BGP等待Keepalive或Notification报文。如果收到Keepalive报文,则转至Established状态,如果收到Notification报文,则转至Idle状态。

在Established状态下,BGP可以和对等体交换Update、Keepalive、Route-refresh报文和Notification报文。

BGP对等体之间的交互原则

从IBGP学到的,只发给它的EBGP

从EBGP学到的,发给所有EBGP、IEBGP

只发最优的给对等体

只发送部分更新的路由

BGP 与IGP路由的引入

BGP引入路由时支持Import和Network两种方式:

import:将RIP、OSPF、ISIS等协议的路由引入到BGP路由表中,直连,静态也行

network:将IP路由表中已经存在的路由引入到BGP路由表中,比Import方式更精确

BGP 属性:

公认必须遵循:可以识别,必须存在更新报文中

origin

标记路由来源 :

network—igp、egp

import ---->incomplete

as_path

不接受带有本地as号的路由

next_hop

公认任意:可以识别,不要求存在更新报文中

local fref

于判断流量离开AS时的最佳路由。

本地有效,不发给其它AS域

缺省 100

可选过度:不识别此类属性,它任会接受,发送

团体属性

用于标识具有相同特征的BGP路由

定义团体属性

公认团体属性

internet 属性号 0 ,向任何对等体发送该路由

no_advertise 属性号:0xFFFFFF02 不向任何对等体发送该路由

no_port 0xFFFFFF01 将不向AS外发送该路由。

No_Export_Subconfed (0xFFFFFF03 将不向AS外发送该路由,也不向AS内其他子AS发布此路由。

可选非过度:忽略属性,不发送给对等体

med 值

用于判断流量进入AS时的最佳路由

将优先选择MED值较小者作为最佳路由

缺省 0

originator-id

cluster_list

用于解决路由反射器场景中的环路问题

BGP选择路由的策略

优选协议首选值 (PrefVal)最高的路由。

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

优选 汇总、引入(手动、自动、network、inport)

优选AS path (AS_Path)最短的路由

优选 IGP 、EGP 、Incomplete的路由

对于来自同一AS的路由 优选 MED值 MED值最低的路由。

依次优选EBGP路由、IBGP路由、LocalCross路由、RemoteCross路由。

优选到BGP下一跳IGP度量值metric最小的路由

优选Cluster_List最短的路由

优选Router ID最小的设备发布的路由

选从具有最小IP Address的对等体学来的路由\

总结:

首选值 比大

本地优先级 比大

汇总 手动>自动

AS-PATH 最短的

起源 IGP > EGP >引入的

MED 比小

路由 EBGP IBGP 、隧道实例路由

下一跳 IGP 度量值 metric 最小的

Cluster_List最短的路由

Router ID 最小的

最小ip 地址学路由

顺口溜:

首选 本地 汇总 AS 起源

MED 路由 下一跳度量

Cluster_List Router ID 最小ip

需要熟悉的是 起源 AS-PATH next-hop MED local-preference Community

路由反射器

为啥使用BGP反射器?

为保证IBGP对等体之间的连通性,需要在IBGP对等体之间建立全连接关系。–不能同步,防止黑洞

当设备数目很多时,设备配置将十分复杂

网络资源和CPU资源的消耗都很大

路由反射器相关角色

路由反射器RR(Route Reflector)

客户机(Client)

非客户机(Non-Client)

集群(Cluster)–用于表示RR的域

对等体之间的关系

Client 只需要维护与RR之间的IBGP会话

如果有多个RR ,RR之间需要建立IBGP全互联

非客户端和非客户单也需要建立IBGP全互联

RR 域 非客户端需要建立IBGP

全互联

路由反射宣告原则:

从非客户端学到的路由会发给RR的所有客户端

从EBGP 收到的路由会发给所有客户端和非客户端

配置很简单

防环:

同过一个Cluster ID 标识一个Cluster

Originator ID ,RR传来的路由,打上 originator id (默人就是始发者router id)

BGP联盟

联盟(RFC3065)

将大的AS分成若干大小的AS ,而小AS之间建立EBGP对等体关系

联盟术语

联盟AS—原来大的as

成员as—小的as

回顾as -path

AS 分类

AS_SET:由一系列as 号无序组成,包含在updata消息里面

AS_SEQUENCE:有一系列as号顺序组成,包含在U盘data包里面

AS_CONFED_SEQUENCE:顺序组成,本地联盟内传递

AS_CONFEO_SET:无序组成,本地联盟内传递

NAT TCP/IP 网络

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:我用python炒股,代码拿去丨【百变AI秀】
下一篇:十分钟了解什么是数据可视化DLV
相关文章