BGP协议:简介、属性、选路原则

article/2025/8/24 17:52:47

BGP协议:简介、属性、选路原则

目录

BGP协议:简介、属性、选路原则

一、学习网络BGP必备基础知识

二、BGP 工作原理

三、BGP报文

四、BGP邻居关系的配置

五、BGP需要注意的事项

六、BGP的属性分类 及列举讲解


一、学习网络BGP必备基础知识

边界网关协议(BGP)是运行于 TCP上的一种自治系统的路由协议。 BGP 是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接的协议。 BGP 构建在 EGP 的经验之上。 BGP 系统的主要功能是和其他的 BGP 系统交换网络可达信息。网络可达信息包括列出的自治系统(AS)的信息。这些信息有效地构造了 AS 互联的拓扑图并由此清除了路由环路,同时在 AS 级别上可实施策略决策。

(一)AS  自治系统号      09年之前     2字节     
公有AS:  1-64511
私有AS:  64512-65534

09年之后      4字节    65536---4294967295

(二)AS 内部的路由的计算由  IGP 协议完成 ,如  OSPF  /ISIS/RIP等

(三)AS之间的路由传递和控制由 EGP协议 , 如 BGP  。

(四)BGP 依据目标端口 TCP 179 建立连接,BGP 可以跨越多跳路由器建立邻居关系 。 

二、BGP 工作原理

1)建立邻居关系

2)同步数据库

3)计算路由表 (BGP 不自我计算路由,传输路由)

为何要先建立TCP连接?因为BGP建立连接是在广域网上进行的,不够稳定,存在风险,而在TCP连接比较稳定,所以先建立TCP连接能够使连接更稳定。

BGP 邻居类型 (看是否同一AS)

运行在不同的AS之间的BGP路由器的邻居关系为EBGP

运行在相同的AS内部的BGP路由器的邻居关系为IBGP

三、BGP报文

①、Open消息:Open消息是TCP连接建⽴后发送的第⼀个消息,⽤于建⽴BGP对等体之间的链接关系并进⾏参数协商。内容包括使⽤的BGP版本号、⾃⼰所属的AS号、路由ID、HoldTime值、认证信息等信息。

②、Keepalive消息:BGP会周期性的向对等体发出Keepalive消息,主要作⽤就是让BGP邻居知道⾃⼰的存在,保持邻居关系的稳定;另外⼀个作⽤就是对收到的Open消息的回应。消息格式中只包含消息头,没有附件任何字段。长度为19字节,消息只有标记、长度、类型,不包括数据域。

③、UPdate消息:主要⽤于在对等体之间交换路由信息。它既可以发布可达路由信息,也可以发布不可达路由消息;⼀条Update消息可以通过⼀类具有相同路径属性的可达路由,同时还可以携带多条不可达路由。

④、Notification消息:Notification的作⽤就是错误通知。BGP发⾔者如果检测到对⽅发过来的消息有错误或者主动断开BGP链接,都会发出Notification消息来通知BGP邻居,并关闭链接回到idle状态;如果收到邻居发来的 Notification消息,也会将链接状态变为idle。Notification消息的内容包括错误代码和错误⼦代码及错误数据等信息。

⑤、Route-refresh消息:Route-refresh⽤来要求对等体重新发送指定地址族的路由信息。

四、BGP邻居关系的配置

BGP是在广域网上进行的,为了稳定要先建立TCP连接,    建立邻居关系时属于单播建立

BGP通告原则:

目的:防环机制,又称为水平分割原则

华为设备 默认 igp bgp 同步功能关闭

方法:1.路由导入(一般不用,bgp流量太大,bgp导入至ospf会丢失属性)

2.路由器都运行bgp,建立全互联关系 邻居关系太多(不可行)

优化方案:

#BGP工作原理 之 数据库

IP路由表

BGP路由表

邻居表(对等体列表)

Adj-RIB-In(对等体宣告给本AS的未经过处理的路由信息库)

Adj-RIB-Out(本地speaker 宣告给指定对等体的路由信息库)

五、BGP需要注意的事项

1:由于BGP的水平分割,会导致BGP出现路由黑洞,解决办法有三个(IBGP全互联,RR,联盟)

2:EBGP邻居,默认其TTL为1

3:在IBGP路由加入路由表并发布给EBGP对等体之前,会先检查IGP路由表,只有在IGP也知道这个IBGP路由时,它才会被加入到路由表,并发布给EBGP对等体

同步:指IGP表和BGP表同步,才会发给EBGP对等体

4:私有AS号(64512-65535)

5:使用import-route static命令引入静态路由时,只能引入活跃路由。

六、BGP的属性分类 及列举讲解

#第一:公认必遵(as-path,next_hop,origin)

#第二:公认任意(Local_Pref本地优先影响出战流量,原子聚合)

#第三:可选传递(聚合者,community团体属性类似于tag)

#第四:可选非传递(MED多出口鉴别器影响本地AS的入站流量,Cluster List集群列表,起始者ID)

#A:origin 起源属性(用来定义路径信息的来源)

IGP(i):通过network引入的路由,会在bgp routing-table中显示为i

EGP(e):通过EGP得到的路由,会显示为e(已不常见)

Incomplete(?):通过其他方式学习到的路由信息,表示为?

选路原则:i>e>?

#三种加入BGP的方式

import 以及路由聚合

network:直连的路由可以用这样的方式加入(即当我们需要加入BGP的路由存在于IGP路由表中可以使用这个方式,直连)

#B:as-path 路径属性(用于选路,用来定义经过了哪些路径,可用于ebgp防环)

#aspath抓包显示的as记录类型有4种,

as-seq 以序列的方式进行记录as号(普通的)

as-set 用于BGP聚合时防止环路

另外两种是用于联盟

#C:next_hop 下一跳属性:(有图)

1:从IBGP学到的路由信息,默认不会传递给其他IBGP对等体(正常,可以建立全互联模型)

2:从IBGP对等体学到的路由,在传递给EBGP对等体时,下一跳不改变(正常)

3:从EBGP学到的路由,在传递给IBGP对等体时,默认下一跳不改变(不正常,会导致IBGP对等体的路由下一跳不可达),解决办法是

#D:Local_Pref 属性表明BGP路由信息的优先级,用于判断流量离开AS时的最佳路由(华为设备上该值越大越优先,默认是100)

1:只能在IBGP之间传递,影响本AS的出战流量

#E:community 团体属性(写法 100:1)(用于标识具有相同特征的BGP路由)

1:自定义团体(一般在内部传递)

2:公共团体属性

Internet 互联网属性,只要是公共路由都带有

No Advertise 不通告路由(若是收到带有该值的路由信息,不会将该路由传递给其他任何BGP邻居)

No Export 不外发(若是收到带有该值的路由信息,不会传递给任何EBGP邻居)

No Export Subconfed 用于联盟,不会将该路由传递给联盟EBGP(即不传递给普通EBGP邻居)

#F:MED多出口鉴别器,相当于链路cost

1:(华为默认是0)影响入站流量(注意我说的是流量不是路由),用于EBGP邻居(华为设备该值越小越优先),能在对端的AS内部传递,对端AS不能传递给其他AS

2:(提醒:影响入流量就是影响对方,也就是说对方AS内可以进行比较)

#注意影响选路的有起源属性,AS path ,local_pref,MED这些.其他的如commity只是控制不直接影响选路


http://chatgpt.dhexx.cn/article/POEnMNM4.shtml

相关文章

BGP路由协议的那些事?(上)

BGP是怎么来的?为什么要使用BGP? 路由协议的分类 分类包含协议说明IGP:用于域(AS)内路由选择。RIP距离矢量协议,多用于小型网络。ISIS链路状态协议,多用于运营商网络。OSPF链路状态协议&#…

BGP协议解析(白话版)

之前一直没搞明白BGP有啥用,加了跟没加没啥区别,专门查资料写了这篇《BGP协议解析》。 下面使用eNSP模拟器演示! IBGP与EBGP的区别 BGP分为两种:IBGP与EBGP。 两个路由器的BGP号相同,建立邻居关系叫IBGP&#xff0…

华为 BGP协议基础配置与总结

良药苦口利于病,忠言逆耳利于行。 文章目录 一、BGP概述二、拓扑三、基础配置四、BGP与IGP比较五、BGP的数据包六、BGP的邻居状态机七、BGP计时器八、BGP的更新源九、BGP的路由生成十、BGP的路由通告 BGP的邻居建立很关键,涉及环回口地址建立bgp邻居就需…

计算机网络——BGP协议

BGP协议 和谁交换:与其他AS的邻站BGP发言人交换信息。 交换什么:交换网络可达性信息 多久交换一次:发生变化时更新有变化的部分 一般来说两个网络都是由一个BGP发言人连接的。 BGP协议交换信息的过程 BGP协议所交换的网络可达性的信息就…

BGP 协议

BGP BGP 邻居类型BGP 5种包BGP 6种邻居状态BGP 邻居建立BGP 路由的生成方式BGP 通告原则与路由处理BGP 认证BGP 对等体之间的交互原则BGP 邻居学习next-hop-local补充BGP 常用属性BGP 防环BGP 选路规则BGP 路由聚合 BGP知识点: BGP基础配置,BGP 5种报文&…

计算机网络:BGP路由协议

BGP路由协议的概述 首先,再当前的互联网中,BGP是目前唯一支持的外部网关协议EGP的协议,用于自治系统AS之间传递路由信息,目前的版本为4。 从图中可以看出,BGP协议是连接自治系统AS的“桥梁”。 为什么需要BGP协议 …

BGP协议基础配置—学习

BGP重要概念 IGP是运行在AS内部的路由协议,主要有RIP、OSPF及IS-IS,着重于发现和计算路由。 EGP是运行在AS之间的路由协议,通常是BGP,它是实现路由控制和选择最好的路由协议。 这次主要讲的是BGP。 BGP它不生产路由&#xff0…

BGP协议总结

概述 BGP为Border Gateway protocol 边界网关路由协议(路径矢量) 主要作用是在AS之间传递路由信息 • 分类:EGP • 工作机制:路径矢量协议 • 无类路由协议:支持VLSM和CIDR • 应用层协议/7层,TCP封装&…

BGP协议学习笔记——BGP基础

BGP协议学习笔记——BGP基础(BGP概念、BGP报文、BGP状态机、BGP关系建立、BGP路由通告) 说明:本文学习笔记整理自网络、华为公开产品文档、华为公开PPT及部分的自我理解 一、BGP简介 BGP定义 边界网关协议BGP(Border Gateway …

什么是BGP协议?

什么是BGP协议? BGP(Border GatewayProtocol)是一种在自治系统之间动态交换路由信息的路由协议。一个自治系统的经典定义是在一个管理机构控制之下的一组路由器,它使用IGP和普通度量值向其他自治系统转发报文。 在BGP中使用自治系统这个术语是为了强调这…

BGP 边界网关路由协议

文章目录 一、BGP概述1、自治系统(AS,autonomous system)2、动态路由的分类(1)自治系统分类(2)协议类型分类 3、BGP的概念4、BGP的特征 二、BGP工作原理1、BGP邻居关系(1&#xff09…

BGP协议原理与配置

AS(自治系统)是指由同一个技术管理机构管理,使用统一选路策略的一些路由器的集合。 私有自治系统,类似于私网那个IP地址,归属个人,不会连接到公网 国际管理自治系统 AS的内部:使用IGP&#xff0…

浅议BGP(一文看懂BGP)

今天主要介绍一下BGP的相关基础知识,文章浅显易懂,适合对BGP完全没有了解的同学。 一、先导知识 为了更好的介绍BGP,下面先对几个概念进行简单的介绍: 1、AS AS、即Autonomous System,自治系统。AS可以简单的理解为一…

一、BGP协议原理

BGP协议原理 一、BGP概述二、BGP特点二、BGP基本术语2.1.BGP发言者(BGP Speaker)2.2.Router ID(RID)2.3.BGP对等体(BGP Peer)2.3.IBGP对等体(Internal BGP Peer)2.4.EBGP对等体&…

BGP协议基本配置

边界网关协议BGP实现自治系统AS的路由可达 EBGP:运行于不同 AS 之间的 BGP 称为 EBGP。为了防止 AS 间产生环路,当 BGP 设备接收 EBGP对等体发送的路由时,会将带有本地 AS 号的路由丢弃。 IBGP:运行于同一 AS 内部的 BGP 称为 I…

BGP协议介绍

一. BGP协议概述 BGP用于在不同的自治系统(AS)之间交换路由信息。当两个AS需要交换路由信息时,每个AS都必须指定一个运行BGP的节点,来代表AS与其他的AS交换路由信息。通常是路由器来执行BGP。两个AS中利用BGP交换信息的路由器也被…

BGP协议总结(比较详细,好理解)

BGP Border Gateway Protocol(当前使用的版本是 BGP-4) 动态路由协议可以按照工作范围分为IGP以及EGP。IGP工作在同一个AS内,主要用来发现和计算路由,为AS内提供路由信息的交换;而EGP工作在AS与AS之间,在…

sentinel流控设置--流控排队等待

排队等待 顾名思义,请求过多时,让请求匀速的进入后台进行处理。采用漏斗算法,控制流量 设置超时时间,超时的则将请求抛弃,返回错误信息

sentinel流控设置--流控预热

预热 顾名思义,意思就是让流量慢慢的涨,不让流量突然的达到阈值 这里直接修改之前的规则,选择Warm up 使用场景在秒杀场景

串口的流控

1.首先确定DCE和DTE。 DCE是指modern等通信设备, DTE是计算机等终端设备; 2. DCE与DTE; DTE与DTE之间流控信号CTS和RTS的接线不同; DTE与DCE之间: DTE与DTE之间 3. RTS (Require ToSend,发送…