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

就像BGP中的AS_PATH一样,无论路途多远,我愿意陪你一起走——基于华为ENSP的BGP的路由负载均衡及过滤深入浅出

本篇技术博文摘要 🌟

  • 本文内容涵盖了BGP负载均衡的基本概念、配置技巧和在实际网络中的应用,包括如何在华为ENSP上实现负载均衡和路由过滤。
  • 通过配置BGP的前缀列表、ACL以及路由过滤策略,可以实现网络流量的精确控制和优化,提高网络的可扩展性与灵活性。

引言 📘

  • 在这个快速发展的技术时代,与时俱进是每个IT人的必修课。
  • 我是肾透侧视攻城狮,一名什么都会一丢丢的网络安全工程师,也是众多技术社区的活跃成员以及多家大厂官方认可人员,希望能够与各位在此共同成长。

📈个人成就和🌐社区贡献与影响力

👑《荣誉头衔》

  • 华为云云享专家
  • 华为云技术开发者HCCDA认证
  • 华为HCDG成员
  • 2024年度华为云核心贡献者
  • 阿里云专家博主
  • 数据安全高级工程师认证
  • 新华三高级网络工程师认证
  • 腾讯云开发者创作之星
  • 2024年度腾讯云创作之星
  • 腾讯云文档内容共建官
  • 腾讯云TDP成员
  • AWS——人工智能领域从业者认证
  • 支付宝开发者社区优秀季度创作博主
  • CSDN网络安全领域新星创作者

💻技术认证:

  • 华为病毒查杀漏洞管理技术认证
  • 华为Web暴力破解漏洞挖掘技术认证
  • 华为HTTPS加密电商网站技术认证
  • 华为博客网站SQL注入攻击以及防御技术认证
  • 华为MySQL数据库迁移上云技术认证
  • 华为企业上云网络规划设计技术认证
  • 阿里云Apsara Clouder基于存储产品快速搭建网盘技术认证
  • 阿里云Apsara Clouder容器应用与集群管理技术认证
  • 阿里云Apsara ClouderECS基础运维管理技术认证
  • 阿里云Apsara ClouderECS快速入门技术认证
  • 阿里云Apsara Clouder存储应用与数据管理技术认证
  • 阿里云Apsara ClouderSOL基础开发与应用技术认证
  • 阿里云Apsara Clouder基于容器搭建企业级应用技术认证
  • 阿里云Apsara Clouder云原生数据库PolarDB 快速入门技术认证
  • 阿里云Apsara Clouder云数据库RDS快速入门技术认证
  • 阿里云Apsara Clouder大模型- 基于百炼平台构建智能体应用技术认证
  • 阿里云Apsara Clouder企业级ECS集群构建技术认证
  • 腾讯微服务平台TSF技术认证
  • 腾讯EdgeOne网站加速与防护技术认证

🙆曾参与赛事以及荣誉奖项:

  • 曾荣获江苏省新华三网络赛事江苏省一等奖、江苏省华为ICT大赛团队赛江苏省二等奖、江苏省网络安全精英赛事优秀奖、江苏省C4网络技术挑战赛赛事、江苏省红帽挑战赛、腾讯全国安全游戏竞赛、全国网络安全运维管理等CTF赛事
  • 曾荣获南京市CSDN作者周榜第2名、原力月榜第1名;全国原力榜第11名、全国领军人物榜单第22名

欢迎各位彦祖与热巴畅游本人专栏与技术博客

你的三连是我最大的动力

以下图片仅代表专栏特色 [点击➡️指向的专栏名即可闪现]

➡️Cyberspace Security

➡️ 24 Network Security -LJS 

➡️HCIP;H3C-SE;CCIP—LJS[华为、华三、思科高级网络]

 ➡️ Ungranted access vulnerability

➡️ MYSQL REDIS Advance operation

➡️RHCE-LJS[Linux高端骚操作实战篇]​

➡️数据结构与算法[考研+实际工作应用+C程序设计]

➡️RHCSA-LJS[Linux初级及进阶骚技能]

上节回顾

目录

本篇技术博文摘要 🌟

引言 📘

📈个人成就和🌐社区贡献与影响力

👑《荣誉头衔》

💻技术认证:

🙆曾参与赛事以及荣誉奖项:

欢迎各位彦祖与热巴畅游本人专栏与技术博客

你的三连是我最大的动力

以下图片仅代表专栏特色 [点击➡️指向的专栏名即可闪现]

上节回顾

1.BGP负载均衡——路由等价负载分担

啥是BGP负载均衡?

形成负载分担的条件

注意:

基于华为ENSP的BGP负载均衡配置示例一

补充:

基于华为ENSP的BGP负载均衡配置示例2

R1示例配置:

配置后:

 

2.BGP的路由过滤——配置实战

需求一:

1、抓流量

2、做策略

3、调用

需求二:

1、配置前缀列表

2、调用

需求三:

 1、配置ACL列表

2、调用

注意:


1.BGP负载均衡——路由等价负载分担

啥是BGP负载均衡?

  • 在大型网络中,到达同一目的地通常会存在多条有效BGP路由,设备只会优选一条最优的BGP路由,将该路由加载到路由表中使用,这一特点往往会造成很多流量负载不均衡的情况。
  • 通过配置BGP负载分担,可以使得设备同时将多条等代价的BGP路由加载到路由表,实现流量负载均衡,减少网络拥塞。
  • 尽管配置了BGP负载分担,设备依然只会在多条到达同一目的地的BGP路由中优选一条路由,并只将这条路由通告给其他对等体。
  • 在设备上使能BGP负载分担功能后,只有满足条件的多条BGP路由才会成为等价路由,进行负载分担。

形成负载分担的条件

  • Preferred-Value属性值相同
  • Local_Preference属性值相同
  • 都是聚合路由或者非聚合路由
  • AS_Path属性长度相同
  • Origin类型(IGP、EGP、Incomplete)相同
  • 起源码相同、 MED属性值相同
  • 都是EBGP路由或都是IBGP路由
  • AS内部IGP的Metric相同
  • AS_Path属性完全相同即:内容相同,顺序相同,长度相同
    [r4-bgp]load-balancing as-path-ignore  ---忽略在进行负载均衡配置时的AS_Path属性对比。

注意:
  • 在实现负载均衡后,无论是否配置了next-hop-local命令,本地设备都会向自己的IBGP对等体发布路由时,将下一跳修改为本地地址

基于华为ENSP的BGP负载均衡配置示例一

image-20240518143158838

[r4-bgp]maximum load-balancing ?INTEGER<1-8>  Specify maximum equal cost routesebgp          EBGP routes as equal cost routeibgp          IBGP routes as equal cost route
[r4-bgp]maximum load-balancing e	
[r4-bgp]maximum load-balancing ebgp 2   ---修改BGP最大负载分担路由条目为2,默认情况为1。

补充:

  • 如果携带了ebgp或者ibgp参数,则代表对某种方式学习到的路由进行负载分担,不携带参数则代表全局执行。

基于华为ENSP的BGP负载均衡配置示例2

R1示例配置:
[R1]bap 200[R1]maximum load-balancing ibgp 2
  • 以上述拓扑为例, R1上两条BGP路由在不做任何路由策略、配置的情况下,前8条优选规则无法比较出优选路由。
  • 因此可以配置IBGP路由的负载分担。 
配置后:

 

2.BGP的路由过滤——配置实战

需求一:

  • 通过路由策略来完成,不让R2将172.16.1.0/24传递给R3

image-20240518145234704

1、抓流量

[r2]ip ip-prefix aa permit 172.16.1.0 24

2、做策略

[r2]route-policy aa deny node 10[r2-route-policy]if-match ip-prefix aa[r2]route-policy aa permit node 20

3、调用

[r2-bgp]peer 10.1.23.3 route-policy aa export 

需求二:

  • 不让R3学习到172.16.2.0/24
  • 所以IKN们有没有想到可以用前缀列表

image-20240518145234704

1、配置前缀列表

[r3]ip ip-prefix aa deny 172.16.2.0 24[r3]ip ip-prefix aa permit 0.0.0.0 0 less-equal 32​

2、调用

[r3-bgp]peer 10.1.23.2 ip-prefix aa import 

需求三:

  • 通过filter-policy来完成,不让R2和R3学习172.16.3.0/24路由

image-20240518145234704

 1、配置ACL列表

[r2-acl-basic-2000]rule deny source 172.16.3.0 0
[r2-acl-basic-2000]rule permit source any 

2、调用

[r2-bgp]peer 10.1.12.1 filter-policy 2000 import   
注意:
  • 在BGP中使用过滤策略时,只能调用ACL列表,所以必须使用ACL列表来抓取流量

相关文章:

就像BGP中的AS_PATH一样,无论路途多远,我愿意陪你一起走——基于华为ENSP的BGP的路由负载均衡及过滤深入浅出

本篇技术博文摘要 &#x1f31f; 本文内容涵盖了BGP负载均衡的基本概念、配置技巧和在实际网络中的应用&#xff0c;包括如何在华为ENSP上实现负载均衡和路由过滤。通过配置BGP的前缀列表、ACL以及路由过滤策略&#xff0c;可以实现网络流量的精确控制和优化&#xff0c;提高网…...

valgrind 检测多线程 bug,检测 并发 bug concurrent bug parallel bug

valgrind --toolhelgrind ./your_program 如果检测的对象是大型程序&#xff0c;可以设定仅在某些函数中开启 valgrind 的检测&#xff1a; Valgrind 提供了一些客户请求&#xff08;client requests&#xff09;&#xff0c;可以在代码中插入特定的宏来控制 Valgrind 的行为。…...

游戏引擎学习第135天

仓库:https://gitee.com/mrxiao_com/2d_game_3 回顾 game_asset.cpp 的创建 在开发过程中&#xff0c;不使用任何现成的游戏引擎或第三方库&#xff0c;而是直接基于 Windows 进行开发&#xff0c;因为 Windows 目前仍然是游戏的标准平台&#xff0c;因此首先在这个环境中进行…...

异步操作返回原始上下文

是什么&#xff1f; 在讨论同步上下文执行回调的概念时&#xff0c;我们首先需要了解一些基本概念&#xff1a;同步与异步操作、上下文以及回调函数。 同步与异步操作&#xff1a; 同步操作是指代码按照顺序依次执行&#xff0c;每个操作必须等待前一个操作完成才能开始。这便…...

区块链中的数字签名:安全性与可信度的核心

数字签名是区块链技术的信任基石&#xff0c;它像区块链世界的身份证和防伪标签&#xff0c;确保每一笔交易的真实性、完整性和不可抵赖性。本文会用通俗的语言&#xff0c;带你彻底搞懂区块链中的数字签名&#xff01; 文章目录 1. 数字签名是什么&#xff1f;从现实世界到区块…...

vulnhub渗透日记23:bulldog

声明 文中涉及操作均来自靶机虚拟环境&#xff0c;禁止用于真实环境&#xff0c;任何未经授权的渗透测试都是违法行为&#xff01; 开搞 首先nmap扫描目标机开放端口和服务 访问80端口 扫目录撒 发现登录口 点击web-shell提示登录后才能使用 /dev/下面查看网页源码发现村咋h…...

macOS - 使用 tmux

文章目录 安装 tmux使用更多快捷键说明 安装 tmux brew install tmux使用 在终端输入 tmux 进入 tmux 界面&#xff0c;然后 输入 Control Option B 进入交互模式 输入 % 左右分栏&#xff0c;" 上下分割 上一个窗格&#xff1a;{&#xff0c;下一个&#xff1a;} PS…...

Armbian: 轻量级 ARM 设备专用 Linux 发行版全面解析

引言 在嵌入式开发和物联网&#xff08;IoT&#xff09;领域&#xff0c;选择合适的操作系统至关重要。对于 Raspberry Pi、Orange Pi、Banana Pi 以及 Rockchip、Amlogic、Allwinner 等 ARM 平台上的单板计算机&#xff08;SBC&#xff09;&#xff0c;一个高效、轻量级并且易…...

微服务通信:用gRPC + Protobuf 构建高效API

引言 在微服务架构中&#xff0c;服务之间的通信是系统设计的核心问题之一。传统的RESTful API虽然简单易用&#xff0c;但在性能、类型安全和代码生成等方面存在一定的局限性。gRPC作为一种高性能、跨语言的RPC框架&#xff0c;结合Protobuf&#xff08;Protocol Buffers&…...

Spring Boot 整合 JMS-ActiveMQ,并安装 ActiveMQ

1. 安装 ActiveMQ 1.1 下载 ActiveMQ 访问 ActiveMQ 官方下载页面&#xff0c;根据你的操作系统选择合适的版本进行下载。这里以 Linux 系统&#xff0c;Java环境1.8版本为例&#xff0c;下载 apache-activemq-5.16.7-bin.tar.gz。 1.2 解压文件 将下载的压缩包解压到指定目…...

容器 /dev/shm 泄漏学习

容器 /dev/shm 泄漏的介绍 在容器环境中&#xff0c;/dev/shm 是一个基于 tmpfs 的共享内存文件系统&#xff0c;通常用于进程间通信&#xff08;IPC&#xff09;和临时数据存储。由于其内存特性&#xff0c;/dev/shm 的大小是有限的&#xff0c;默认情况下 Docker 容器的 /de…...

Spring Boot 3.x 基于 Redis 实现邮箱验证码认证

文章目录 依赖配置开启 QQ 邮箱 SMTP 服务配置文件代码实现验证码服务邮件服务接口实现执行流程 依赖配置 <dependencies> <!-- Spring Boot Starter Web --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spr…...

车载测试:智能座舱测试中多屏联动与语音交互的挑战

智能座舱作为汽车智能化发展的核心&#xff0c;集成了多屏联动和语音交互功能&#xff0c;为驾驶员和乘客提供更便捷的体验。然而&#xff0c;这些功能的测试面临诸多挑战&#xff0c;包括多屏同步性、噪声干扰和复杂场景的处理。本文将详细分析这些挑战&#xff0c;探讨测试方…...

C/C++输入输出(1)

1.getchar和putchar 1.1getchar() 函数原型&#xff1a; 1 int getchar(void); getchar()函数返回用户从键盘输入的字符&#xff0c;使用时不带有任何参数。 程序运行到这个命令就会暂停&#xff0c;等待用户从键盘输入&#xff0c;等同于使用cin或scanf()方法读取一个字符…...

前端面试场景题葵花宝典之四

87.场景面试之大数运算&#xff1a;超过js中number最大值的数怎么处理 在 JavaScript 中&#xff0c;Number.MAX_SAFE_INTEGER&#xff08;即 2^53 - 1&#xff0c;即 9007199254740991&#xff09;是能被安全表示的最大整数。超过此值时&#xff0c;普通的 Number 类型会出现…...

探索Elasticsearch:索引的CRUD

在企业环境中&#xff0c;Elasticsearch的索引CRUD&#xff08;创建Create、读取Read、更新Update、删除Delete&#xff09;操作是非常基础且频繁使用的功能。这些操作对于管理和维护数据至关重要&#xff0c;尤其是在处理大规模数据集和需要实时搜索与分析的应用场景中。 目录…...

Java数据结构第十六期:走进二叉树的奇妙世界(五)

专栏&#xff1a;Java数据结构秘籍 个人主页&#xff1a;手握风云 目录 一、非递归实现遍历二叉树 1.1. 二叉树的前序遍历 1.2. 二叉树的中序遍历 1.3. 二叉树的后序遍历 一、非递归实现遍历二叉树 1.1. 二叉树的前序遍历 我们这里要使用栈来进行实现。我们反向思考一下为…...

【开源免费】基于SpringBoot+Vue.JS疫情管理系统(JAVA毕业设计)

本文项目编号 T 227 &#xff0c;文末自助获取源码 \color{red}{T227&#xff0c;文末自助获取源码} T227&#xff0c;文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…...

有关Java中的集合(1):List<T>和Set<T>

学习目标 核心掌握List集合了解Set集合 1.List<T> ● java.util.List。有序列表。 ● List集合元素的特点&#xff1a;有序表示存取有序&#xff08;因为有索引&#xff09;而且可以重复 ● List常用实现类&#xff1a; ArrayList、LinkedList、Vector等 1.1 常用方法…...

使用 Spring Boot 实现前后端分离的海康威视 SDK 视频监控

使用 Spring Boot 实现前后端分离的海康威视 SDK 视频监控系统&#xff0c;可以分为以下几个步骤&#xff1a; 1. 系统架构设计 前端&#xff1a;使用 Vue.js、React 或 Angular 等前端框架实现用户界面。后端&#xff1a;使用 Spring Boot 提供 RESTful API&#xff0c;负责与…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用&#xff1a;实现组件通用属性的渐变过渡效果&#xff0c;提升用户体验。支持属性&#xff1a;width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项&#xff1a; 布局类属性&#xff08;如宽高&#xff09;变化时&#…...

深入理解JavaScript设计模式之单例模式

目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式&#xff08;Singleton Pattern&#…...

TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案

一、TRS收益互换的本质与业务逻辑 &#xff08;一&#xff09;概念解析 TRS&#xff08;Total Return Swap&#xff09;收益互换是一种金融衍生工具&#xff0c;指交易双方约定在未来一定期限内&#xff0c;基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:

根据万维钢精英日课6的内容&#xff0c;使用AI&#xff08;2025&#xff09;可以参考以下方法&#xff1a; 四个洞见 模型已经比人聪明&#xff1a;以ChatGPT o3为代表的AI非常强大&#xff0c;能运用高级理论解释道理、引用最新学术论文&#xff0c;生成对顶尖科学家都有用的…...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

九天毕昇深度学习平台 | 如何安装库?

pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子&#xff1a; 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...

GitFlow 工作模式(详解)

今天再学项目的过程中遇到使用gitflow模式管理代码&#xff0c;因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存&#xff0c;无论是github还是gittee&#xff0c;都是一种基于git去保存代码的形式&#xff0c;这样保存代码…...

Oracle11g安装包

Oracle 11g安装包 适用于windows系统&#xff0c;64位 下载路径 oracle 11g 安装包...