🧑‍💻15 BGP路由协议基础

type
status
date
slug
summary
tags
category
icon
password
notion image

1.BGP协议的报文分别是什么,各自的作用是什么?

notion image

2.BGP状态机有哪些,邻居关系建立的过程是什么?

  • Idle:
    • 开始准备TCP的连接并监视远程对等体,启用BGP时,要准备足够的资源。
  • Connect
    • 正在进行TCP连接,等待完成中,认证都是在TCP建立期间完成的。如果TCP连接建立失败,则进入Active状态,反复尝试连接。
  • Active
    • TCP连接没有成功建立,反复尝试TCP连接。
  • OpenSent
    • TCP连接已经成功建立,开始发送Open报文,Open报文携带参数协商对等体的建立。
  • OpenConfirm
    • 参数和能力特性协商成功,自己发送Keepalive报文,等待对方的Keepalive报文。
  • Established
    • 已经收到对方的Keepalive报文,双方能力特性经协商一致,开始使用Update报文通告路由信息。
notion image
💡

BGP邻居关系建立的过程

  1. Idle状态BGP初始状态。在Idle状态下,BGP路由器拒绝邻居发送的连接请求。只有在收到本设备的Start事件后,BGP路由器才开始尝试与其邻居进行TCP连接,并转至Connect状态。
  1. Connect状态BGP路由器启动连接重传定时器(Connect Retry),等待TCP完成连接。如果TCP连接成功,BGP路由器向邻居发送Open报文,并转至OpenSent状态。如果TCP连接失败,BGP路由器转至Active状态。
  1. Active状态BGP路由器继续尝试建立TCP连接。如果连接成功,发送Open报文并进入OpenSent状态;如果连接失败,停留在Active状态。
  1. OpenSent状态BGP路由器等待邻居的Open报文,并对收到的Open报文中的AS号、版本号、认证码等进行检查。如果收到的Open报文正确,BGP路由器发送Keepalive报文,并转至OpenConfirm状态;如果报文有错误,发送Notification报文并转至Idle状态。
  1. OpenConfirm状态等待Keepalive或Notification报文。如果收到Keepalive报文,则转至Established状态;如果收到Notification报文,则转至Idle状态。
  1. Established状态BGP邻居关系成功建立,BGP路由器可以与邻居交换Update、Keepalive、Route-refresh和Notification报文。
notion image

3.BGP常见的属性有哪些,各自的作用是什么?

notion image

BGP常见的属性

  1. Origin
      • 作用:定义路径信息的来源,标记一条路由是如何成为BGP路由的。它有三种类型:
        • IGP:路由通过内部网关协议(IGP)引入,表示为 i
        • EGP:路由通过外部网关协议(EGP)引入,表示为 e
        • Incomplete:路由通过其他方式引入(如静态路由),表示为 ?
  1. AS_Path
      • 作用:记录一条路由经过的自治系统(AS)路径,用于环路检测和路径选择。AS_Path越短的路由通常优先级越高。
  1. Next_Hop
      • 作用:指定到达目的网络的下一跳IP地址。当BGP路由器发布路由信息时,Next_Hop指示下一步的路由器地址。
  1. Local_Preference
      • 作用:在同一个自治系统(AS)内用于选择离开AS的最佳路由。优先选择Local_Preference值较高的路由。该属性仅在IBGP邻居之间有效,不会通告给其他AS。
  1. Community
      • 作用:用于标记路由信息,控制路由的传播范围以及对符合相同条件的路由进行统一处理。Community属性可以帮助网络管理员在不同路由间应用相同的策略。
  1. MED (Multi-Exit Discriminator)
      • 作用:用于在相邻的两个AS之间选择进入AS的最佳路由。MED值较小的路由优先级较高。此属性只在相邻的AS之间传递,不会通告给其他AS。

4.BGP路由生成的方式有哪几种,如何进行区分?

Network命令
  • 作用:通过Network命令,将IP路由表中已经存在的路由逐条引入到BGP路由表中。这种方式适用于手动将已存在的路由发布到BGP中。
Import命令
  • 作用:通过Import命令,根据运行的路由协议(例如RIP、OSPF、ISIS等),将路由引入到BGP路由表中,此外还可以引入直连和静态路由。
 
💡

区分方式:

  • Network命令是通过手动指定具体的网络段,将其引入到BGP路由表。
  • Import命令是自动将运行中的其它路由协议(例如OSPF、RIP等)的路由引入BGP,并可以对引入的路由设置策略。

5.BGP的通告原则有哪些?

  • 仅将自己最优的路由发布给邻居BGP只会将其本地选定的最优路由通告给其邻居。这意味着BGP路由器只会发送它认为是最优的路由条目,而不会通告次优的路由。
  • 通过EBGP获得的最优路由发布给所有BGP邻居通过EBGP(外部BGP)获得的最优路由将会通告给所有的BGP邻居,这些邻居包括EBGP邻居和IBGP邻居。
  • 通过IBGP获得的最优路由不会发布给其他的IBGP邻居通过IBGP(内部BGP)获得的最优路由,不会再向其他IBGP邻居通告,这是为了防止路由环路的发生。
  • BGP与IGP同步BGP在发布路由之前需要确保IGP(内部网关协议)也能到达同一个目的网络,以避免BGP发布的路由信息无法在本地路由器上找到到达目的地的路径。
notion image
notion image
notion image
notion image

6.BGP路由选路的原则有哪些?

💡
BGP路由器将路由通告给邻居后,每个BGP邻居都会进行路由优选,路由选择有三种情况:
  • 该路由是到达目的地的唯一路由,直接优选。
  • 对到达同一目的地的多条路由,优选优先级最高的。
  • 对到达同一目的地且具有相同优先级的多条路由,必须用更细的原则去选择一条最优的。
💡
BGP路由选路的原则如下:
  1. 丢弃下一跳不可达的路由。
  1. 优选Preference_Value值最高的路由(私有属性,仅本地有效)。
  1. 优选本地优先级(Local_Preference)最高的路由。
  1. 优选手动聚合 > 自动聚合 > network > import > 从对等体学到的路由。
  1. 优选AS_Path短的路由。
  1. 起源类型优先级:IGP > EGP > Incomplete
  1. 对于来自同一AS的路由,优选MED值最小的。
  1. 优选从EBGP学来的路由(EBGP > IBGP)。
  1. 优选AS内部IGP的Metric最小的路由。
  1. 优选Cluster_List最短的路由。
  1. 优选Orginator_ID最小的路由。
  1. 优选Router_ID最小的路由器发布的路由。
  1. 优选具有较小IP地址的邻居学来的路由。

7.请根据自己的理解简单描述一下BGP协议

BGP(边界网关协议)是用于不同自治系统(AS)之间交换路由信息的协议。它通过建立邻居关系,在多个AS之间传递和控制路由,帮助选择最优路径。BGP能够处理复杂的多跳路由,并通过属性如AS路径和优先级来优化路由选择,是互联网骨干网络的核心协议
 

BGP是什么,适用于什么场景

BGP(边界网关协议,Border Gateway Protocol)是一种用于不同**自治系统(AS)**之间交换路由信息的协议。AS是指由一个组织或网络运营商控制的一组网络,BGP则负责在这些系统之间传递路由信息并选择最优路径。
💡

BGP适用的场景:

  1. 跨运营商网络连接BGP常用于不同网络运营商之间的路由通信,例如互联网服务提供商(ISP)之间的路由信息交换。
  1. 大规模企业网络互联大公司或组织通常通过BGP与多个ISP进行连接,以确保网络的冗余和可靠性。
  1. 多路径路由优化BGP能够选择最佳路由,适用于需要从多个路径中选择最优路径的复杂网络。
  1. 全球互联网路由BGP是互联网的核心协议,负责管理全球范围内的路由信息。
上一篇
14 ISIS路由协议基础
下一篇
1 数据通信网络基础
Loading...
文章列表
👉文档
面试总结
★终端安全防护
★VPN技术
★上网行为管理
★下一代防火墙
★操作系统基础
★数通技术高级
★数通技术基础
下一代防火墙配置
操作系统基础实验
数通高级实验
数通高级命令操作
数通基础实验
数通基础命令操作