当前位置: 首页 > news >正文

【路由交换方向IE认证】BGP常用属性(除公认必遵外的属性)

目录

文章目录

  • 目录
  • BGP属性类型
  • Local Preference属性
    • LP的选路原则
    • 查看Local Preference属性
  • MED属性
    • MED属性的选路原则
    • MED属性的使用
      • 可传递的MED属性的情况
      • MED值仅比较同一AS
    • 查看MED属性
  • Community团体属性
    • Community属性的种类
    • 公认Community
    • Community属性的使用
    • Community属性的格式
  • Atomic_Aggregate以及Aggregator属性
  • Weight属性

BGP属性类型

在NP阶段,我们学习了BGP是如何建立起来的,比如说BGP路由的传递是通过BGP对等体之间互相发送UPdate报文来进行传递路由信息的

在BGP的UPdate报文中就存在着BGP的各种属性,在IE阶段,我们就是通过学习这些BGP的各种属性,来对BGP的路由进行选路的

BGP的属性分为4类,如下图

image-20250401223353367

我们先对local Preference进行讲解

Local Preference属性

Local Preference属性,也被称为本地优先级属性;我们通常叫做LP值。与选路的关系是管出的

由于是本地优先级,所以LP只会在本地AS内生效,一旦出了本AS,在但是会将LP值填充为100

换句化说,LP只会在IBGP Peer之间传递,并不会在EBGP Peer之间传递,在EBGP的传递路由条目的过程中,会自动为路由条目的LP值填充上100

LP的选路原则

在其它条件的同时,运行BGP的路由器会优选LP值较高的路径

如下图,我们在R1和R2上分别设置192.168.10.0/24LP值为100和200,

当传递到R3的时候,R3会识别这两条的LP值,在其它情况不变的情况下,R3会优先选择LP值打的路径,则R3—>R2

随后,R3会将192.168.10.0/24这条从其它AS学习到的路由传递给AS300的R4上,由于LP值只在本地AS内有效,所以传到AS 300的LP值则被自动填充为LP = 100

image-20250407220359521

查看Local Preference属性

如下图,通过show ip bgp可以看到LocPrf值,就是LP值的体现

image-20250409092846474

MED属性

MED属性作为可选不可传递属性,是在路由的选路当中最经常使用的一个属性,我们可以将其理解为IGP协议中的度量值,例如说OSPF中的cost值。相比于LP值,MED值则是管进的

MED值主要是用于本AS向外部AS指出进入本AS的路径,针对同一条路由,MED值可以影响其它AS进入本AS的路径

并且当路由再传递给下一个EBGP Peer的时候,MED值是不会进行传递的,这也是MED作为可选不可传递的体现,简单来说就是MED值不能跨AS传递

MED属性的选路原则

MED值的选路原则是越小越优先

如下图,再R1和R2上分别为设置192.168.10.0/24的MED为10和20,根据MED值越小越优先的原则,R3去往的192.168.10.02/24的路径将会优选R3-R1这条路径

由于MED属性是可选不可传递,简单来说就只能传递一个AS,所以当192.168.10.0/24从AS 200再传递到AS 300的时候,是不会携带的,在锐捷的设备中将被填充为 MED = 0

image-20250409100835828

MED属性的使用

MED属性的使用主要分为两种情况:①可传递的;②不可传递的

可传递的MED属性的情况

对于本地引入的BGP的路由,换句话说就是全局路由表中(show ip router)中引入BGP的路由(network、redistribute)则会将MED值传递给EBGP Peer;此外,不同的起源路由也具有不同MED属性传递的规则

在IBGP Peer之间传递路由的时候,除非部署了路由策略,否则MED值不会改变

①如果本地引入的路由(network、redistribute)是通过IGP(如OSPF)学习到的,那么MED值将会继承IGP的度量值(cost值)

如下图,MED会继承OSPF中的cost值

image-20250409160626802

②如果本地引入的路由(network、redistribute)是直连/静态路由,则MED值为0

image-20250409160749167

MED值仅比较同一AS

在默认情况下,BGP路由器仅会比较同一相邻AS的BGP路由的MED值,如果有两条路由但是却是去往两个不同的目的地来自不同的AS,则不会进行AS的比较

但是上述的情况是默认情况,我们还可以通过命令 bgp always-compare-med 进行配置,上述的情况进行比较

如下图,对于AS 300的路由器来说,192.168.10.0/24来自两个不同的AS,AS 100和AS 200

image-20250409160917279

查看MED属性

如下图,显示的 Metric 值就是MED属性,从两种图可看到(图一对应着TOPO图的R3,图二对应着TOPO图的R4),MED值是无法传递到下一个AS的

image-20250409185058450

image-20250409185120472

image-20250409100835828

Community团体属性

Community作为可选可传递属性,主要起到一个打标记的作用,而标记的对象就是那些具有相同性质,但是网段不同的路由,其目的是简化路由策略

在默认情况下,Community属性并不会进行传递,需要我们使用命令进行配置nei 2.2.2.2 send-community 才能进行Community的传递

Community的使用是没有物理边界的;对于一个路由可以拥有多个团体属性

Community属性的种类

①公认Community属性,事先约定好的属性,可直接使用

②私有Community属性,自定义的属性,如刚刚的将192.168.10.0/24打上 tag 为 100:1

公认Community

公认Community说明
internet收到这条属性的BGP路由,可以向任何BGP Peer发送此路由,在默认情况下所有的路由都属于此团体属性
local-AS顾名思义,收到携带这条属性的路由,将不向外部的AS(EBGP Peer)发送该路由,包括联盟BGP Peer
no-advertise收到携带这条属性的路由,不会向任何BGP Peer发送该路由
no-export收到携带该属性的路由,不会将向任何的外部AS(EBGP Peer)发送该路由,但是联盟BGP Peer依然会发送

local-AS与no-export的区别

local-AS并不会向联盟BGP Peer发送路由,no-export依然会向联盟BGP Peer发送路由

Community属性的使用

Comuunity属性在选路时,由于其传递范围不像ACL或Prefix-list一样只在本地有效,Community属性不限于任何一个网络或自治系统,没有物理边界,所以它的传递范围非常低广,每一个BGP路由器都能够认识Community属性,使用Community就不再需要在每一台设备上去配置ACl或前缀列表

如下图,将生产部中的192.168.10.0/24与192.168.20.0/24打上tag 100:1 的标记

将研发中的192.168.30.0/24与192.168.40.0/24打上tag 100:2 的标记

这两个Community属性传递到AS 200的时候,AS 200所识别的是100:1和100:2,而不是192.168.10.0/24这些路由条目

image-20250409163955097

Community属性的格式

Community属性值的长度为 32 bit ,可以有两种形式呈现

①十进制格式

②AA:NN格式,其中AA表示AS号,NN表示自定义的编号

如上图中的100:1与100:2 都是处于AS 100的环境下

Atomic_Aggregate以及Aggregator属性

Atomic_Aggregate属性属于公认可选属性,作用主要是起到一个预警的作用,不会携带任何信息,当BGP路由器收到该属性的时候,就知道这条路由在传递的过程中出现了缺失,常见的场景是路由汇总

Aggregate属性属于可选不可传递属性,当路由被汇总时,执行汇总的路由器就会为汇总的路由添加该属性,在Aggregrate属性中,记录了本地的AS号以及本地Router-id

image-20250409193314019

Weight属性

本地权重值

Weight属性可选非传递属性,Weight只会在本地生效,不会传递给任何的BGP Peer

Weight的选路原则为越大越优先,取值为0至65535

本地始发的路由默认时最大的为32768,从其它BGP Peer学习到的路由为0

image-20250409202537422

相关文章:

  • uniapp离线打包提示未添加videoplayer模块
  • 分布式水文模型丨WRF-Hydro建模与案例应用、从软件安装,到案例实践
  • 【IDEA】创建 SpringBoot 项目连接 MySQL
  • C# net CMS相关开源软件 技术选型 可行性分析
  • 0411 | 软考高项笔记:项目立项
  • 大模型本地部署系列(4) Ollama部署Gemma 3大模型
  • C++ 大数相加(简要版)
  • 整体 Vue 系统框架下的优化方案,旨在减少内存用量并提升整体性能
  • 【时时三省】(C语言基础)用switch语句实现多分支选择结构 例题
  • MATLAB编写的机械臂控制仿真程序,它主要实现了对一个二连杆机械臂的运动控制仿真,比较了PID控制和非线性模型预测控制两种方法在机械臂轨迹跟踪任务中的性能
  • 【发布】dtns协议的js-sdk(实现a2a协议:agent2agent)
  • 本地搭建直播录屏应用并实现使用浏览器远程控制直播间录屏详细教程
  • 量子测试时代,会来得比我们想象中更快?
  • 02-MySQL 面试题-mk
  • KDD 2025 顶会最新力作,多变量时间序列预测登顶!
  • truncate,drop,delete分析
  • 制造企业如何通过实现数据统一?
  • MCU如何查看系统有没有卡死
  • 解决vcpkg使用VS2022报错问题
  • 【Kafka基础】监控与维护:动态配置管理,灵活调整集群行为
  • 跟我一起做网站/百度云网盘网页版
  • 嘉兴网站制作公司/网站建设公司网站
  • 南京网站制作步骤/怎么推广
  • 做网站时空间的选择/湖南seo技术培训
  • 卓智网络科技有限公司/南宁seo服务优化
  • 什么网站可以做ppt/营销一体化平台