当前位置: 首页 > 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;负责与…...

React 第五十五节 Router 中 useAsyncError的使用详解

前言 useAsyncError 是 React Router v6.4 引入的一个钩子&#xff0c;用于处理异步操作&#xff08;如数据加载&#xff09;中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误&#xff1a;捕获在 loader 或 action 中发生的异步错误替…...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外&#xff0c;K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案&#xff0c;全安装在K8S群集中。 具体可参…...

Spark 之 入门讲解详细版(1)

1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室&#xff08;Algorithms, Machines, and People Lab&#xff09;开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目&#xff0c;8个月后成为Apache顶级项目&#xff0c;速度之快足见过人之处&…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销&#xff0c;平衡网络负载&#xff0c;延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)

宇树机器人多姿态起立控制强化学习框架论文解析 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架&#xff08;一&#xff09; 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状&#xff1a;装配工作依赖人工经验&#xff0c;装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书&#xff0c;但在实际执行中&#xff0c;工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...

算法:模拟

1.替换所有的问号 1576. 替换所有的问号 - 力扣&#xff08;LeetCode&#xff09; ​遍历字符串​&#xff1a;通过外层循环逐一检查每个字符。​遇到 ? 时处理​&#xff1a; 内层循环遍历小写字母&#xff08;a 到 z&#xff09;。对每个字母检查是否满足&#xff1a; ​与…...

Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档&#xff09;&#xff0c;如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下&#xff0c;风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...