【网络技术】BGP 基础与概述

简介: 【网络技术】BGP 基础与概述

该笔记主要作用与 BGP 路由协议的基础和概述讲解,其萌芽作用

参考视频:红茶三杯

关键词阐述:AS = 独立自治网络系统机构

前置知识


在我们学习 BGP 路由之前所学习的所有动态路由策略,都同属一个路由类中:IGP


BGP 路由协议应用环境:


在一般的小型园区网,或者中小型公司中是用不到 BGP 路由协议的,一般采用 IGP 协议,比如 OSPF,RIP,EIGRP 等,BGP 使用在大规模网络环境部署中,通常部署在运营商中,政府网络中等


如果在大规模网络跑 IGP 协议,可能就把 IGP 协议跑死了,因为路由条目会变的非常多


我们可以把 部署了 BGP 路由协议的设备比作一个 AS,不同 AS 之间 跨省交换路由信息,跨城通信,BGP 协议不着重于内部通信,主要着重于不同域点的 AS 通信,域内主要由 IGP 路由来完成


本章笔记所分知识点如下:


  • BGP 概述

0x01 BGP 概述

我们先来回头看望以下 IGP 协议


IGP 具有以下某些特性或全部特性


  • 执行拓扑发现
  • 尽力完成快速收敛
  • 需要周期性的跟新来确保路由选择信息的精确性
  • 受同一个管理机构的控制
  • 采用了共同的路由选择策略
  • 提供了优先的策略控制能力

以下为 BGP 路由部署环境的艺术图:


我们需要注意,如果在 BGP 路由边界 AS 路由器重发布到 IGB 路由中,一定要做路由策略,减少路由条目,因为 BGP 的路由条目一定是十分庞大惊人的。


50c363a39092b79971c532b76aa9982a.png


关于 BPG


  • AS:autonomous system 自治系统,指的是一在同一个组织管理下使用相同策略的设备的集合
  • 不同 AS 通过 AS 号区分,AS 号取值范围 1 - 65535 ,曲中 64512 - 65535 为私有 AS 号,IANA 负责1 AS 号的分发
  • 中国电信 163 AS号:4134
  • 中国电信CN2 AS号:4809
  • 中国网通 AS 号:9929
  • 所以,BGP 路由之间,也存在一点 IPv4 地址的缩影

BGP 🔺


  • BGP 为 Border Gateway Protocol 边界网关路由协议 ( 路径矢量 )
  • 主要作用是在 AS 之间传递路由信息
  • 目前 BGP 由 4 个版本:V1,V2,V4,V4+(即 MGBP)


使用 BGP 的三大理由


  • 大量路由需要承载,IGP 只能容纳千条,而 BGP 可以容纳上万
  • 支撑 MPLS / VPN 的应用,传递客户 VPN 路由
  • 策略能力强,可以很好的实现路由决策与数据控制


BGP 路由协议中的路径属性拥有许多,在 IGP 中来来去去都是 metric 值,而在 BGP 中则不是,BGP 路由策略与数据控制非常的强大,可以很好的控制流量路径


BGP AS 之间连接关键词 🔺


  1. Single homed 单宿:只连接到一家 ISP 且没有冗余链路
  2. Dual homed 双宿:只连接到一家 ISP,使用两条链路来提供冗余
  3. Multihomed 多宿:连接到多家 ISP
  4. Dual Multihomed 双多宿:连接到多家 ISP,同时使用两条链路实现冗余

0x02 BGP 的路径矢量特征 (AS-PATH) 🔺

7a978907fd85111026174b7abcb5de77_fef1aa75ab127a3c56d30bde09287878.png


其中 AS-PATH,主要用于:传递路径矢量信息,防止环路


1:其实到这里,我们抛开 BGP 其他路径属性不谈,BGP 协议与 RIP 协议十分的相似,只不过 RIP 使用的是跳数来衡量路径,而 BGP 则是使用 AS 号来衡量路径


2:这里为什么能防止环路呢,观察上图,我们发现每个 AS 自治系统边界路由器中,只要有传递 BGP 路由信息,就会带入一个自己的 AS 号,通过 AS 号,AS 们知道该将路由信息传递给谁,同时,只要在传递过程中到自己的时候,发现里面有自己的 AS 号,那么就直接丢弃,从而防止环路


  • 路径矢量信息中包含一个 BGP 自治系统号列表
  • BGP 路由器不接收路径列表中包含其 AS 号的路由跟新,BGP 是天生规避环路的
  • BGP 支持对 BGP 自治系统路径应用路由策略
  • BGP 路由器只能将其使用的路由通告给邻接自治系统中的对等体,简单说就是 Peer 邻居


0x03 BGP 特征 🔺

BGP 允许 AS 之间不直连建立 Peer


在 IGP 协议中,比如 OSPF,我们只要开启本地 OSPF 进程,network 宣告直连,该 OSPF 路由器就会自己去组播 224.0.0.6 发现 Peer 对等体,而 BGP 则不会,需要我们手工去指定,源和目的,才能建立 Peer 对等体关系


  • BGP 使用 TCP 为传输层协议,TCP 端口号为 179
  • BGP 路由器之间建立 TCP 连接,这些路由器成为 BGP 对等体 Peer,也叫 BGP 邻居:EBGP、IBGP
  • 对等体之间交换整个 BGP 路由表
  • BGP 路由器只发送增量更新或触发更新 (不会周期性更新)
  • 具有丰富的路径属性
  • BGP 通告成千上万的路由,可采用 TCP 滑动窗口的机制 ???什么东东,停止并等待确认前,可以发送 65578 个字节


0x04 BGP packets 🔺🔺🔺

其中一些常识需要去记住,TCP 179 传输,IP 协议号为 6


BGP 报文信息参考图如下


cb4ff01c7b47afdc15226d30fa0a4d58_913d25806c2c32bdb673a9a2faa8e45d.png


BGP 报文作用如下

d8c8400507f321c33050cdff0fa4685d_dd1613d2e7d4b258086873a20944d026.png



0x05 BGP 的有限状态机 🔺

所谓状态机,即为机器的状态,在建立邻居关系之前,要去发现跟自己一样的人,否则一个人不得闷死?


参考图如下:


其主要发现邻居的 Peer 状态改变


19303aaa0fb83e484e896756b513a339_fde7ed110686518dc24092c2c8e513a5.png


发送过程如下:参考即可


8f7f632e1451473bc9481e31ef3ba139_6f4fdc259c272c73858dba21a1e89cb7.png


0x06 BGP Peer BGP 邻居关系讲述

1:EBGP 特点:处于直连中的 BGP 路由邻居关系 TTL 值为 1


2:IBGP 特点:不一定直连,通过 IGP 协议在不同 AS 之间传输 BGP 路由信息


详述如下:


1:EBGP

  • EBGP:BGP 位于不同自治系统的路由器之间,称为 EBGP
  • 建立 EBGP 邻接关系,必须满足如下三个条件
  1. EBGP 之间的自治系统号不同
  2. 定义邻居建立 TCP 会话
  3. neighbor 中指定的 IP 地址要可达

参考如下:


94f5fda6f871cef854dd771c10c5467d_6ef9c71e64b178fb883f9da521e7ba1b.png


我们可以很简单的观察到,EBGP 之间是不同自治 AS 区域的邻居关系


2:IBGP

  • IBGP:位于同一个自治系统的路由器之间运行,用于同一个 AS 中交换 BGP 信息
  • 建立 IBGP 邻接关系,必须满足的条件如下
  1. 自治系统号相同
  2. 定义邻居建立 TCP 会话

参考图如下:


002f00fc4b520cc0de45bbbe7cbed5d7_5b2ca604532eb91f1ecb0c0debf3c7f5.png


而 IBGP 则是同一区域之间的 两个 AS BGP 工作路由器,才能建立 IBGP 邻居关系,其之间通过内部 IGP 协议来传输和 update


相关文章
|
4天前
【计算机网络】第三章 数据链路层(概述 封装成桢 差错检错)
【计算机网络】第三章 数据链路层(概述 封装成桢 差错检错)
23 0
|
4天前
|
网络协议 算法 Java
【Java网络编程】网络编程概述、UDP通信(DatagramPacket 与 DatagramSocket)
【Java网络编程】网络编程概述、UDP通信(DatagramPacket 与 DatagramSocket)
17 3
|
4天前
|
网络协议 物联网 网络架构
计算机网络:计算机网络概述
计算机网络:计算机网络概述
43 3
|
4天前
|
安全 网络协议 网络架构
【网络技术设备安全】BGP 基础与概述-2-中转 AS 中的 IBGP 路由传递
【网络技术设备安全】BGP 基础与概述-2-中转 AS 中的 IBGP 路由传递
【网络技术设备安全】BGP 基础与概述-2-中转 AS 中的 IBGP 路由传递
|
4天前
|
监控 网络协议 安全
计算机网络概述及 参考模型
计算机网络概述及 参考模型
|
4天前
|
网络协议 算法 安全
【专栏】硬核干货:BGP(边界网关协议)是自治系统间交换路由信息的关键协议,用于大型网络的高效路由选择
【4月更文挑战第28天】BGP(边界网关协议)是自治系统间交换路由信息的关键协议,用于大型网络的高效路由选择。它基于路径向量算法,通过TCP连接建立邻居关系,交换并选择最优路径。BGP支持丰富的路由属性和多种消息类型,允许灵活的路由控制。配置与应用包括启用BGP、配置邻居、路由宣告、过滤及社区属性使用。虽然BGP具备强大路由控制和可扩展性,但其配置复杂,存在安全挑战。理解BGP对于网络管理和优化至关重要。
|
4天前
|
负载均衡 网络协议 数据安全/隐私保护
NewH3C—计算机网络概述、模型
NewH3C—计算机网络概述、模型
|
4天前
|
网络协议 网络架构
计算机网络-概述
计算机网络-概述
计算机网络概述(下)——“计算机网络”
计算机网络概述(下)——“计算机网络”

热门文章

最新文章