BGP简介,以及使用BGP的原因

article/2025/8/21 3:34:52

通过本篇可以理解 BGP 的基础知识以及使用它的原因

BGP(边界网关协议)是将互联网联合在一起的路由协议,我将解释在哪些情况下我们需要 BGP 以及它是如何工作的。

在您继续阅读之前,我应该告诉您“忘记”迄今为止您对RIP、OSPF和EIGRP等路由协议的了解……这三种路由协议有一个共同点:它们都是 IGP(内部网关协议)。我们只在我们的自治系统中使用它们,但它们不可扩展以用于像 Internet 这样大的网络。

RIP、OSPF 和 EIGRP 都不同,但它们有一个共同点……它们都想找到到达目的地的最短路径。当我们查看 Internet 时,我们并不关心找到最短路径,而是能够操纵流量路径更为重要,我们目前在 Internet 上使用的路由协议只有一种,即 BGP。

  1. 为什么需要BGP?

让我们先看一些场景,以便了解为什么以及何时需要 BGP:

现在几乎所有东西都连接到互联网,在上图中,我们有一个连接到 ISP(Internet 服务提供商)的客户网络,我们的 ISP 正在确保我们可以访问 Internet,我们的 ISP 为我们提供了一个可用于访问 Internet 的公共 IP 地址。为了确保客户方 LAN 上的每个人都可以访问 Internet,我们使用NAT/PAT(网络/端口地址转换)将我们的内部私有 IP 地址转换为这个单一的公共 IP 地址。当您只有需要访问 Internet 的客户端时,此方案非常适合。在我们的客户 LAN 上,我们只需要一个指向 ISP 路由器的默认路由,我们就完成了。对于这种情况,我们不需要 BGP...

也许客户有几个需要从 Internet 访问的服务器……也许是邮件服务器或网络服务器,我们可以使用端口映射并将正确的端口转发到这些服务器,因此我们仍然只需要一个 IP 地址,另一种选择是从我们的 ISP 获取更多公共 IP 地址,并使用这些地址来配置不同的服务器。对于这种情况,我们仍然不需要 BGP……

如果我想要更多的冗余怎么办?出现单点故障并不是一个好主意,我们可以在客户端添加另一个路由器并将其连接到 ISP,可以将主链接用于所有流量,并使用另一个链接作为备份,这种情况我们还是不需要BGP,可以用默认路由解决:

  1. 在客户主路由器上面配置低优先级的默认路由;
  2. 在客户的备路由器上面配置高优先级的默认路由;

这将确保您的 IGP 使用主链路发送所有流量,一旦链路出现故障,您的 IGP 将确保所有流量都沿备用链路发送,你可以考虑一下......我们可以在这两个链接之间做任何负载平衡吗?会很难么?

除非出现故障,否则您的 IGP 将沿主链路发送所有流量,而不会沿备用链路发送任何流量。您可以使用相同的度量发布默认路由,拥有 50/50% 的负载分担。如果我想在主链路上发送 80% 的出向流量,在备用链路上发送 20% 怎么办?上面的方法不会实现此需求,但使用 BGP 是可能的。

我们现在拥有两个不同的 ISP,而不是连接到单个 ISP,出于冗余原因,拥有两个不同的 ISP 很重要,万一其中一个出现故障,将始终有一个备用 ISP 可以使用,客户的网络同样还有两台需要从 Internet 访问的服务器。

在之前的示例中,我们从 ISP 获得了公共 IP 地址,现在我连接到两个不同的 ISP,那么我应该使用哪些公共 IP 地址?来自 ISP1 还是 ISP2?如果我们使用来自 ISP1(或 ISP2)的公共 IP 地址,那么一旦 ISP 出现连接问题,这些服务器将无法访问。

我们将获得自己的公共 IP 地址,而不是使用来自 ISP 的公共 IP 地址。IP 地址空间由 IANA(互联网号码分配机构 - http://www.iana.org/)维护。IANA 正在将 IP 地址空间分配给许多大型区域互联网注册管理机构,例如RIPE或ARIN。其中每一个都为 ISP 或大型组织分配 IP 地址空间。
当我们收到我们的公共 IP 地址空间时,我们会将其通告给我们的 ISP,通告是通过路由协议完成的,这将是 BGP。

  1. 自治系统

除了获得公共 IP 地址空间之外,我们还必须考虑AS(自治系统):

AS 是单个管理域下的网络集合,互联网不过是一堆相互连接的自治系统,在自治系统中,我们使用 IGP,如 OSPF 或 EIGRP。

对于不同自治系统之间的路由,我们使用EGP(外部网关协议),我们现在唯一使用的 EGP 是 BGP。

我们如何获得自治系统编号?就像公共 IP 地址空间一样,你需要注册一个。

自治系统号码是 16 位的,这意味着我们有 65535 个号码可供选择。就像私有和公共 IP 地址一样,有一系列公共和私有 AS 编号。

范围 1 – 64511 是全球唯一的 AS 编号,范围 64512 – 65535 是私有自治系统编号。

BGP 有两种风格:

EBGP:在自治系统之间使用

IBGP:在自治系统内使用。

EBGP 是在不同的自治系统之间交换路由信息。

  1. BGP 通告

现在已经了解为什么我们需要 BGP 以及什么是自治系统。互联网是一个很大的地方,一个完整的互联网路由表中有超过 500.000 个前缀。

当我们运行 BGP 时,这是否意味着我们必须学习超过 500.000 个前缀?这取决于……让我们看一些例子:

上面的图片中,客户网络有一个自治系统号 (AS 1) 和一些 IP 地址空间 (10.0.0.0 /8),假设这些是公共 IP 地址,我们连接到两个不同的 ISP,可以看到它们的 AS 编号(AS2 和 AS3)和 IP 地址空间(20.0.0.0/8 和 30.0.0.0/8),我们可以通过两个 ISP 访问互联网的其余部分,

我们可以使用 BGP 向 ISP 通告我们的地址空间,但是 ISPS 将通过 BGP 向我们的客户通告什么?有多种选择:

  1. 它们只通告默认路由。
  2. 它们通告默认路由和部分路由表。
  3. 他们通告完整的互联网路由表。

让我们来看看这三个选项:

3.1 默认路由

接收默认路由消耗最少的路由器资源,因为您只有一个条目可以访问任何外部网络,客户路由器将向两个 ISP 通告其 10.0.0.0 /8 网络,这将向它们连接的任何其他 AS 通告它,我们将使用默认路由到达 Internet 上。这种配置的缺点是我们的客户网络不知道 ISP1 和 ISP2 后面是什么。由于默认路由,我们具有了连接性,但这可能导致次优路由,如果我们只有默认路由,那么我们可能会将所有流量发送到其中一个 ISP。

如果您只使用默认路由,可能会发生以下情况:

客户网络只收到来自两个 ISP 的默认路由,我们选择使用 ISP1 的默认路由将所有传出流量发送到Internet,这意味着每当我们发送指向 30.0.0.0 /8 (ISP2) 的流量时,它都会被发送到 ISP1,然后再发送到 ISP2,这不是最佳的路径。

3.2 部分路由更新

我们还可以接收部分路由表和默认路由,此部分更新可能包括 ISP 分配给其客户的所有 IP 地址空间。

就像在现实生活中一样......你知道的越多越好,在路由世界中,拥有更多路由信息意味着您可以做出更好的路由决策,与只有默认路由时相比,将遇到较少的次优路由问题。

3.3 完整的互联网路由表

最后一个选择是从两个 ISP 接收完整的 Internet 路由表,这需要更多资源,但我们将能够做出最佳路由决策。

  1. 路径矢量

BGP 被称为路径矢量路由协议。这是什么意思?看看这张图片:

有 4 个自治系统,正在运行 BGP 来交换路由信息。在 AS 1 中,有网络 1.1.1.0 /24,它被通告给 AS 2、AS 3 和 AS 4。

如果我们查看 AS4 中路由器的 BGP 表,我们将看到网络 1.1.1.0 /24,但它还存储了我们必须通过的路径才能到达那里,它将存储前缀以及它必须穿过的路径才能到达 1.1.1.0 /24。下面是一个真正的 BGP 路由器的例子:

route-views.optus.net.au>show ip bgp

BGP table version is 128380331, local router ID is 203.202.125.6

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

              r RIB-failure, S Stale, m multipath, b backup-path, x best-external

Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path

*  1.0.0.0/24       202.160.242.71                         0 7473 15169 i

通过使用show ip bgp命令,可以查看 BGP 表,我们看到该路由器知道网络 1.0.0.0 /24。下一跳 IP 地址为 202.160.242.71,在该行的末尾,您会看到编号为 7473 15169 的路径。这些是我们必须通过的自治系统才能到达该网络。

  1. BGP路由选择

所有 IGP 的共同点是,他们都想找到到达目的地的最短路径,BGP 的工作方式不同,因为自治系统属于不同的 ISP 或组织,我们希望能够有选择地影响我们的路由。看看这个例子:

BGP 允许我们使用自治系统级别的路由策略。在上图中,有 9 个自治系统,而在 AS 9 中,有网络 192.168.9.0 /24,如果我们查看 AS 1,那么我们可以通过许多不同的路径到达 AS 9 中的网络 192.168.9.0 /24。

您可以选择出口路径……AS1 可以将流量发送到 AS 2 或 AS4,而不会选择其他自治系统。

每个自治系统只会通告通往自治系统的最佳路径,AS 1 只会从 AS 2 和 AS 4了解最佳路径,除非它们的最佳路径失败……只有这样您才能了解第二个最佳路径。

BGP 使用一组BGP 属性来选择路径,这些将在其他章节中介绍。

结论

希望本篇有助于理解 BGP 的基础知识以及使用它的原因,在其他课程中,将仔细研究外部和内部 BGP 的配置以及 BGP 路径选择的工作原理。


http://chatgpt.dhexx.cn/article/5PLVLg71.shtml

相关文章

BGP属性

一、属性分类 BGP属性是BGP进行路由决策和控制的重要信息。它可以分为如下两大类四小类: 一、公认属性 公认必遵(Well-known mandatory )公认可选(Well-known di scretionary ) 公认属性是所有运行BGP协议的系统都必须识别和支持的属性。 其中,公认必遵属性是BGP…

BGP的基本配置

目录 1,BGP建邻的基本配置 1,EBGP对等体关系直连建邻 2,IBGP对等体关系之间的环回建邻 3,EBGP对等体关系之间的非直连建邻 2,发布路由 1,network --- 在BGP中只能用来发布路由条目信息 2&#xff0c…

BGP与IGP之间的区别

IGP: interior gateway protocol—链路状态 BGP: border gateway protocol—距离矢量 都是实现路由信息的交换、学习 都能实现路由的功能 BGP一般用于大型网络,可容纳的路由信息更多;而IGP协议,对于路由条目的存储量是有限的&a…

BGP的应用

目录 实验需求:按照规划建立BGP对等关系,R1和R5各发布一条路由,保证两个网段可以互相通信 1.首先配置IP r1 r2 r3 r4 r5 2.AS之间建立EBGP直连邻居关系 r1和r2之间 r4和r5之间 3.AS内部建立IBGP对等体邻居关系 首先建立ospf使内部建…

什么是BGP

文章目录 1.基本概念什么是BGPBGP路由协议的特点IBGP水平分割规则BGP的路由器号(Router-ID)BGP工作原理BGP分类 1.基本概念 自治系统,指的是在同一个组织管理下、使用相同策略的设备的集合; 不同AS通过AS号区分,AS号取值范围1-65535&#xf…

IP第十天笔记 - - - BGP

BGP --- 边界网关协议 AS --- 自治系统 --- 由单一机构或组织管理的一系列IP网络及其设备的集合。 1、网络范围太大,协议跑不过来,需要进行划分; 2、自治管理 为了方便区分和标定不同的AS,我们给每一个自治系统设计了一个编号…

BGP知识点

一、BGP的基本概念 BGPv4 1、BGP(边界网关协议)是几乎是当前唯一被用于在不同AS之间实现路由交互的EGP。BGP适用于大型的网络环境,例如运营商网络,或者大型企业网。BGP支持VLSM、支持CIDR(无类域间路由)&a…

BGP基础讲解

文章目录 一、BGP起源二、BGG基本概念与注意事项三、BGP原理概述四、BGP路由条目的来源 - 宣告、引入、聚合五、通告原则 --重要!!!六、相关配置命令 一、BGP起源 网络不断扩大,为了方便管理网络被分为了很多不同的AS&#xff08…

BGP概述及基础配置

BGP概述及基础配置 一、BPG基本概述1.1、BGP路由协议的特点1.2、BGP分类:1.3、BGP的路由器号(Router-ID): 二、BGP的基本参数内容2.1、BGP的五种报文2.2、BGP的六种状态机2.3、BGP对等体之间的交互原则 三、BGP的参数配置 一、BPG基本概述 IGP与BGP的工作场景 IGP…

软考DFD图

DFD图即为数据流图(Data Flow Diagram),它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。 数…

DFD作业

作业 题目一 为方便储户,某银行拟开发计算机储蓄系统。储户填写的存款单或取款单由业务员输人系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并印出存款单给储户;如果是取款,系统计算利息并印出利息清单给储户。 顶层 0层 1层 题目二 为方便旅…

研究下DFD

数据流图,简称DFD,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。 下图是一个飞机机票预订系统的数据流图,它反映的功能是:旅行社把预订机票的旅客信息 (姓名、…

P11 - 数据流图 之 DFD进行数据流建模

在如下所示的数据流图中,共存在(29)个错误。 (29)A.4 B.6 C.8 D.9 【答案】B 【解析】本题考查数据流图方面的基础知识。 结构化分析将数据和处理作为分析对象,数据的分析结果表示了现实世界中实体的属性及其之间的相互关系,而处理的结果则…

数据流图(DFD)画法

1. 数据流图(data) 数据流图 (date flow diagram , DFD),是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能&am…

数据流图DFD的画法

1.数据流图的定义: 数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。 数据流图英文缩写DFD(Data Flow Diagram)它…

DFD图

最近备战软考,复习到数据流图,学习成果与大家分享。 数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程&…

甘特图、IPO图、DFD图

甘特图、IPO图、DFD图 一、甘特图 甘特图(Gantt chart)又称为横道图、条状图(Bar chart)。其通过条状图来显示项目、进度和其他时间相关的系统进展的内在关系随着时间进展的情况。以提出者亨利劳伦斯甘特(Henry Laurence Gantt)…

数据流图(DFD)概念及画法

转载自:https://blog.csdn.net/xiaoxiang2017/article/details/81456317 数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、以图形的方式描绘数据在系统中流动…

DFD数据流图的基本要素及易错点详细介绍

定义 简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。 基本符号概念 数据流 数据流是由一组固定成分的…