BGP分解实验·11——路由聚合与条件性通告(3)
续接上(2)的实验。其拓扑如下:
路由聚合的负向也就是拆分,在有双出口的情况下,在多出口做流量分担是优选方法之一。
BGP可以根据指定来源而聚合路由,在产生该聚合路由的范围内的条目注入到本地BGP表后再向外分发出去。
实施BGP路由拆分实验,需要注意的是其本质上仍然属于条件性通告,这是Cisco IOS对条件性通告做了大量支持。之所以这种方式被称为路由拆分,是因为其特性上仅仅是对条件性通告的一个非常形象的称呼而已。
实现拆分路由的配置清单如下:
- 首先在iBGP与eBGP的边界上,配置前缀列表,定义需要拆分出来的明细条目;
- 再配置可以匹配汇总的路由前缀;
- 定义前缀列表边界路由器的邻居来源;
- 对准备要拆分出来的条目设置周知团体属性no-export以用于防环(防止传递出本AS);
- 定义聚合前缀及来源;
- 在边界路由器的进程下对其配置iBGP邻居可传递的BGP团体属性;
- 最后设置注入列表的条进行通告及复制属性。(copy-attributes——将从聚合路由中复制路径属性到注入的路由条目中)
PS://这里先把上个实验(2)的完整配置附上,如做完上个实验保存了配置可忽略以下R1~R5这个为添加拆分实验的配置。添加完成R1~R5的基本配后对上述清单做添加配置附在其后。
R1的基本配置如下:
hostname R1
!
interface Loopback0ip address 172.22.0.1 255.255.255.0
!
interface Loopback1ip address 172.22.1.1 255.255.255.0
!
interface Ethernet0/0ip address 10.0.12.1 255.255.255.0no sh
!
interface Ethernet0/1ip address 10.1.13.1 255.255.255.0no sh
!
ip prefix-list IFN3 seq 5 permit 172.22.3.0/24
!
ip prefix-list IFN3ADV seq 5 permit 172.22.0.0/22
ipv6 ioam timestamp
!
route-map IFN3ADV permit 10match ip address prefix-list IFN3ADV
!
route-map IFN3 permit 10match ip address prefix-list IFN3
!
router bgp 111bgp router-id 1.1.1.1bgp aggregate-timer 0network 172.22.0.0 mask 255.255.255.0network 172.22.1.0 mask 255.255.255.0aggregate-address 172.22.0.0 255.255.252.0 summary-onlyneighbor 10.0.12.2 remote-as 222neighbor 10.1.13.3 remote-as 345neighbor 10.1.13.3 advertise-map IFN3ADV exist-map IFN3
!
end
R2的基本配置如下:
hostname R2
!
interface Loopback0ip address 172.22.2.2 255.255.255.0
!
interface Loopback1ip address 172.22.3.2 255.255.255.0
!
interface Ethernet0/0ip address 10.0.12.2 255.255.255.0no sh
!
interface Ethernet0/1ip address 10.2.24.2 255.255.255.0no sh
!
ip prefix-list IFN3E seq 5 permit 172.22.3.0/24
!
route-map LEAK3 permit 10match ip address prefix-list IFN3E
!
router bgp 222bgp router-id 2.2.2.2bgp aggregate-timer 0network 172.22.2.0 mask 255.255.255.0network 172.22.3.0 mask 255.255.255.0aggregate-address 172.22.0.0 255.255.252.0 summary-onlyneighbor 10.0.12.1 remote-as 111neighbor 10.0.12.1 unsuppress-map LEAK3neighbor 10.2.24.4 remote-as 345
!
end
R3的基本配置如下:
hostname R3
!
interface Loopback3ip address 192.168.3.3 255.255.255.255
!
interface Ethernet0/0ip address 10.1.13.3 255.255.255.0no sh
!
interface Ethernet0/1ip address 10.3.35.3 255.255.255.0no sh
!
router eigrp 5network 0.0.0.0passive-interface Ethernet0/0
!
router bgp 345bgp router-id 3.3.3.3neighbor IBGP peer-groupneighbor IBGP remote-as 345neighbor IBGP update-source Loopback3neighbor IBGP next-hop-selfneighbor 10.1.13.1 remote-as 111neighbor 192.168.4.4 peer-group IBGPneighbor 192.168.5.5 peer-group IBGP
!
end
R4的基本配置如下:
hostname R4
!
interface Loopback4ip address 192.168.4.4 255.255.255.255
!
interface Ethernet0/0ip address 10.2.24.4 255.255.255.0no sh
!
interface Ethernet0/1ip address 10.3.45.4 255.255.255.0no sh
!
router eigrp 5network 0.0.0.0passive-interface Ethernet0/0
!
router bgp 345bgp router-id 4.4.4.4neighbor IBGP peer-groupneighbor IBGP remote-as 345neighbor IBGP update-source Loopback4neighbor IBGP next-hop-selfneighbor 10.2.24.2 remote-as 222neighbor 192.168.3.3 peer-group IBGPneighbor 192.168.5.5 peer-group IBGP
!
end
R5的基本配置如下:
hostname R5
!
interface Loopback3ip address 172.23.3.5 255.255.255.0
!
interface Loopback5ip address 192.168.5.5 255.255.255.255
!
interface Ethernet0/0ip address 10.3.35.5 255.255.255.0no sh
!
interface Ethernet0/1ip address 10.3.45.5 255.255.255.0no sh
!
router eigrp 5network 0.0.0.0passive-interface defaultno passive-interface Ethernet0/0no passive-interface Ethernet0/1
!
route-map REDCONN permit 10match interface Loopback3
!
router bgp 345bgp router-id 5.5.5.5bgp listen range 192.168.0.0/21 peer-group IBGPredistribute connected route-map REDCONNneighbor IBGP peer-groupneighbor IBGP remote-as 345neighbor IBGP update-source Loopback5
!
end
以上添加完成R1~R5的基本配后对上述清单做添加配置如下:
注释:定义前缀列表的名称——LONG是相对掩码较长的定义;SHORT是聚合后变短的定义;LS是Left Source,即此拓扑图左侧邻居的路由来源;RS则是Right Source,右侧邻居的来源。
R3添加的配置如下:
ip prefix-list LONG seq 5 permit 172.22.1.0/24
!
ip prefix-list SHORT seq 5 permit 172.22.0.0/22
!
ip prefix-list LS seq 5 permit 10.1.13.1/32
!
route-map LONG permit 10set ip address prefix-list LONGset community no-export
!
route-map SHORT permit 10match ip address prefix-list SHORTmatch ip route-source prefix-list LS
!
router bgp 345bgp inject-map LONG exist-map SHORT copy-attributesneighbor IBGP send-community
!
end
R4添加的配置如下:
ip prefix-list LONG seq 5 permit 172.22.3.0/24
!
ip prefix-list SHORT seq 5 permit 172.22.0.0/22
!
ip prefix-list RS seq 5 permit 10.2.24.2/32
!
route-map LONG permit 10set ip address prefix-list LONGset community no-export
!
route-map SHORT permit 10match ip address prefix-list SHORTmatch ip route-source prefix-list RS
!
router bgp 345bgp inject-map LONG exist-map SHORT copy-attributesneighbor IBGP send-community
!
end
添加完成以上配置查看注入的BGP表和邻居来源的表项如下:
应用路由拆分部署后在对等AS可操控的情况下,在本地注入确定的明细路由条目可实现最长匹配原则的选路控制。
PS://在通常情况下,eBGP的防环规则就是不允许as-path属性中有包含本地ASN的路由进入本AS内。
相关文章:
BGP分解实验·11——路由聚合与条件性通告(3)
续接上(2)的实验。其拓扑如下: 路由聚合的负向也就是拆分,在有双出口的情况下,在多出口做流量分担是优选方法之一。 BGP可以根据指定来源而聚合路由,在产生该聚合路由的范围内的条目注入到本地BGP表后再向…...
SQL Server 使用SELECT INTO实现表备份
在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误。在 SQL Server 中,可以使用 SELECT INTO 语句将数据从一个表备份到另一个表。 备份表的 SQL 语法: SELECT * INTO 【备份表名】 FROM 【要备份的表】 SEL…...
RPC是什么?和HTTP区别?
RPC 是什么?HTTP 是什么? 作为一个程序员,假设我们需要从A电脑的进程发送一段数据到B电脑的进程,我们一般会在代码中使用 Socket 进行编程。 此时,可选性一般就是 TCP 和 UDP 二选一,由于 TCP 可靠、UDP 不…...
西藏酥油茶:高原上的醇香温暖
西藏酥油茶:高原上的醇香温暖 在西藏高原,有一种饮品,它不仅滋养了一代又一代的藏民,还承载着丰富的文化与历史,它就是西藏酥油茶。酥油茶,藏语称为“恰苏玛”,意为搅动的茶,是藏族人民日常生活中不可或缺的一部分,更是待客、祭祀等活动中的重要礼仪物品。 历史与文化渊源 酥…...
十、VUE中的CSS
一、vue中解决样式不冲突的两种方式 scoped方式 在App.vue中引入Helloworld子组件 在Helloworld子组件中再次引入我们编写Demo子组件 解释: 这种方式是在style上加了个scoped,限制了样式的使用范围。 动态类名方式 二、vue构建打包 npm run build...
论文阅读 AlphaFold 2
用AlphaFold进行非常精确的蛋白质结构的预测(AlphaFold2) 发表于2021年07月15日 NatureDOI: 10.1038/s41586-021-03819-2自然和科学杂志评选为2021年最重要的科学突破之一2021年AI在科学界最大的突破 前言 2020年11月30号, deepmind博客说AlphaFold解决了50年以来生物学的大挑…...
PVE 虚拟机安装 Debian 无图形化界面服务器
Debian 安装 Debian 镜像下载 找一个Debian镜像服务器,根据需要的版本和自己硬件选择。 iso-cd/:较小,仅包含安装所需的基础组件,可能需要网络访问来完成安装。有镜像 debian-12.9.0-amd64-netinst.isoiso-dvd/:较…...
讯飞星火大模型将超越chatgpt?
讯飞星火大模型真的能超越ChatGPT吗? 在人工智能的世界里,新技术层出不穷,而科大讯飞最近发布的讯飞星火大模型3.0引发了不少讨论。有些人甚至大胆猜测:这个模型是否能够在某些方面超越如今广受欢迎的ChatGPT?今天,我们就来深入探讨一下这个话题,分析讯飞星火大模型3.0…...
Linux解决输入法卡死问题
说明:在Ubuntu系统中,如果您需要重启输入法服务(比如fcitx或ibus),您可以按照以下步骤操作。这些步骤适用于大多数基于Ubuntu的发行版,例如Ubuntu、Linux Mint等。 一、重启Fcitx输入法服务 1、使用Ctrl …...
PPT自动化 python-pptx -7: 占位符(placeholder)
占位符(placeholder)是演示文稿中用于容纳内容的预格式化容器。它们通过让模板设计者定义格式选项,简化了创建视觉一致幻灯片的过程,同时让最终用户专注于添加内容。这加快了演示文稿的开发速度,并确保幻灯片之间的外观…...
“AI视觉贴装系统:智能贴装,精准无忧
嘿,朋友们!今天我要跟你们聊聊一个特别厉害的技术——AI视觉贴装系统。这可不是普通的贴装设备,它可是融合了人工智能、计算机视觉和自动化控制等前沿科技的“智能贴装大师”。有了它,那些繁琐、复杂的贴装工作变得轻松又精准。来…...
【Efficient AIGC】SiTo: Similarity-based Token Pruning (AAAI-2025)
文章目录 SiTo: Training-Free and Hardware-Friendly Acceleration for Diffusion Models via Similarity-based Token Pruning背景介绍方法结果消融 文章目录 SiTo: Training-Free and Hardware-Friendly Acceleration for Diffusion Models via Similarity-based Token Prun…...
音频入门(一):音频基础知识与分类的基本流程
音频信号和图像信号在做分类时的基本流程类似,区别就在于预处理部分存在不同;本文简单介绍了下音频处理的方法,以及利用深度学习模型分类的基本流程。 目录 一、音频信号简介 1. 什么是音频信号 2. 音频信号长什么样 二、音频的深度学习分…...
mac 通过 Homebrew 安装 git 遇到的问题
问题真多啊 !!! 解决方式 见 1. / 2. / 3 . / 4. / 5. remote: Enumerating objects: 290323, done. remote: Counting objects: 100% (473/473), done. remote: Compressing objects: 100% (253/253), done. error: RPC failed; curl 92 H…...
Flutter android debug 编译报错问题。插件编译报错
下面相关内容 都以 Mac 电脑为例子。 一、问题 起因:(更新 Android studio 2024.2.2.13、 Flutter SDK 3.27.2) 最近 2025年 1 月 左右,我更新了 Android studio 和 Flutter SDK 再运行就会出现下面的问题。当然 下面的提示只是其…...
【信息系统项目管理师-选择真题】2018上半年综合知识答案和详解
更多内容请见: 备考信息系统项目管理师-专栏介绍和目录 文章目录 【第1题】【第2题】【第3题】【第4题】【第5题】【第6题】【第7题】【第8题】【第9题】【第10题】【第11题】【第12题】【第13题】【第14题】【第15题】【第16题】【第17题】【第18题】【第19题】【第20题】【第…...
探究 Facebook 隐私安全发展方向,未来走向何方?
随着社交媒体的普及,隐私和数据安全问题成为了全球关注的焦点。Facebook,作为全球最大的社交平台之一,其隐私安全问题尤其引人注目。近年来,随着用户数据泄露事件的不断发生,Facebook 不断调整其隐私政策,探…...
漏洞修复:Apache Tomcat 安全漏洞(CVE-2024-50379) | Apache Tomcat 安全漏洞(CVE-2024-52318)
文章目录 引言I Apache Tomcat 安全漏洞(CVE-2024-50379)漏洞描述修复建议升级Tomcat教程II Apache Tomcat 安全漏洞(CVE-2024-52318)漏洞描述修复建议III 安全警告引言 解决方案:升级到最新版Tomcat https://blog.csdn.net/z929118967/article/details/142934649 service in…...
Leecode刷题C语言之购买水果需要的最小金币数
执行结果:通过 执行用时和内存消耗如下: int dp(int* prices, int pricesSize, int index, int* memo) {if (2 * index 2 > pricesSize) {return prices[index];}if (memo[index] -1) {int minValue INT_MAX;for (int i index 1; i < 2 * index 2; i) …...
【27】Word:徐雅雯-艺术史文章❗
目录 题目 NO1.2 NO3 NO4 NO5 NO6.7 NO8.9 NO10.11 注意:修改样式的字体颜色/字号,若中英文一致,选择所有脚本。格式相似的文本→检查多选/漏选格式刷F4重复上一步操作请❗每一步检查和保存 题目 NO1.2 F12另存为布局→行号布局…...
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log
文章目录 一、前言1.1 MySQL体系结构1.2 MySQL日志分类1.3 其他几种日志1.3.1 查询日志1.3.2 慢查询日志1.3.3 错误日志 二、bin log 二进制日志2.1 bin log简介2.2 binlog日志格式2.3 日志删除2.4 写入/刷盘机制 三、undo log 回滚日志3.1 undo log简介3.2 隐藏字段 —— 事务…...
数字MIC PDM接口
在音频采样中,我们经常会用到PCM,PDM这种方式,它们之间也是有一些区别的。 1:PDM 工作原理: PDM使用远高于PCM采样率的时钟采样调制模拟分量,每次采样结果只有1位输出(0或1&…...
dfs专题五:FloodFill算法
1.图像渲染 link:733. 图像渲染 - 力扣(LeetCode) code class Solution { public:int prev;vector<vector<int>> floodFill(vector<vector<int>>& image, int sr, int sc, int color) {if(image[sr][sc] color) return …...
笔试-二维数组
应用 快递业务有N个站点,1<N<10000;站点0、站点1可达,记作0-1;如果0-1、1-2,则站点0、站点2可达,记作0-2;s[i][j]1表示i-j可达,反之s[i][j]0表示i-j不可达;s[i][j…...
大模型GUI系列论文阅读 DAY2续:《一个具备规划、长上下文理解和程序合成能力的真实世界Web代理》
摘要 预训练的大语言模型(LLMs)近年来在自主网页自动化方面实现了更好的泛化能力和样本效率。然而,在真实世界的网站上,其性能仍然受到以下问题的影响:(1) 开放领域的复杂性,(2) 有限的上下文长度ÿ…...
如何提升IP地址查询数据服务的安全?
随着网络科技深入人们的生活之中,数据相关服务顺时代浪潮应运而生。而在数据查询相关服务之中,数据安全乃是重中之重。而如何部署数据查询服务安全,今天让我们来大致了解一下: 数据加密 数据加密是数据查询服务安全的核心技术之…...
【Leetcode】--- 接雨水
题目传送门 方法一: 前缀和后缀和 算法原理 需要两个数组。 第一个数组存储最左边到第 i 个位置的最大高度(前缀最大值) 第二个数组存储最右边到第 i 个位置的最大高度(后缀最大值) 最终第 i 个位置的 接水量 min&am…...
深入探索Math.NET:开启高效数值计算之旅
一、引言 在当今数字化时代,数值计算已然成为科学研究、工程设计、金融分析等众多领域的核心驱动力。从探索宇宙奥秘的物理学计算,到优化建筑结构的土木工程设计,再到预测市场趋势的金融建模,数值计算的身影无处不在,…...
案例研究丨浪潮云洲通过DataEase推进多维度数据可视化建设
浪潮云洲工业互联网有限公司(以下简称为“浪潮云洲”)成立于2018年,定位于工业数字基础设施建设商、具有国际影响力的工业互联网平台运营商、生产性互联网头部服务商。截至目前,浪潮云洲工业互联网平台连续五年入选跨行业跨领域工…...
Logback日志文件详细配置
完整版Logback.xml文件 放在Resources目录下即可 Mac用户更改一下日志文件存放地点即可 <FileNamePattern>/Users/***/***/tlias-%d{yyyy-MM-dd}-%i.log</FileNamePattern> <?xml version"1.0" encoding"UTF-8"?> <configurati…...
TDengine 与上海电气工业互联网平台完成兼容性认证
在工业数字化转型和智能化升级的浪潮中,企业对高效、可靠的数据管理解决方案的需求日益增长。特别是在风电智能运维、火电远程运维、机床售后服务等复杂多样的工业场景下,如何实现海量设备和时序数据的高效管理,已经成为推动行业升级的关键。…...
VMware虚拟机安装macOS11
1.安装虚拟机 如果尚未安装虚拟机,请先进行安装。地址:VMware17下载地址 2、下载苹果镜像文件 macOS Big Sur 11.0.1 (20B29) 3、下载unlock文件(目的是开启VMware的macOS选项功能) https://download.csdn.net/d…...
PostgreSQL中级专家是什么意思?
数据库技术领域,PostgreSQL 作为一种广泛使用的开源关系型数据库管理系统,吸引了众多技术人员深入学习和研究。“PostgreSQL 中级专家” 是对掌握该数据库特定技能层次的一种描述。 知识储备 中级专家深入理解 PostgreSQL 的体系结构,包括进程…...
ubuntu20使用apt安装mysql8
目录 ubuntu20使用apt安装mysql8报错列表参考链接首先删除旧mysql 一、下载配置mysql8库索引下载apt包解压包配置更新apt库索引 二、下载安装mysql8三、启动mysql服务配置开机自启动,忽略 本地登录远程登录查看mysql的所有用户使用客户端远程登陆如果报错完成 参考链…...
FastDFS的安装及使用
分布式存储发展历程 前段时间 618 活动火热进行,正是购物的好时机。当我们访问这些电 商网站的时候,每一个商品都会有各式各样的图片展示介绍,这些图 片一张两张可以随便丢在服务器的某个文件夹中,可是电商网站如此 大体量的…...
二叉树(了解)c++
二叉树是一种特殊的树型结构,它的特点是: 每个结点至多只有2棵子树(即二叉树中不存在度大于2的结点) 并且二叉树的子树有左右之分,其次序不能任意颠倒,因此是一颗有序树 以A结点为例,左边的B是它的左孩子,右边的C是…...
头像生成小程序搭建(免费分享)
如下图为小程序页面的基本效果,下面将介绍该小程序的功能 页面template代码如下: <template><view class"avatar-containner"><block v-if"!showCropper"><image class"pageback" src"../../s…...
Alluxio 联手 Solidigm 推出针对 AI 工作负载的高级缓存解决方案
作者:Wayne Gao, Yi Wang, Jie Chen, Sarika Mehta Alluxio 作为全球领先的 AI 缓存解决方案供应商, 提供针对 GPU 驱动 AI 负载的高速缓存。其可扩展架构支持数万个节点,能显著降低存储带宽的消耗。Alluxio 在解决 AI 存储挑战方面的前沿技…...
【ComfyUI专栏】ComfyUI 部署Kolors
什么是Kolors?我相信一定会有朋友可能第一次听说这个生图的模型,开始我也很难想象,这竟然是快手推出的可灵AI的项目,我们可以直接利用模型来生成图片和视频。 大家可以通过直接访问可灵AI的网址获取到可灵的项目,但是对于我们来说我们需要基于ComfyUI来生成必要的图片和视…...
HBase的原理
一、什么是HBase HBase是一个分布式,版本化,面向列的数据库,依赖Hadoop和Zookeeper (1)HBase的优点 提供高可靠性、高性能、列存储、可伸缩、实时读写的数据库系统 (2) HBase 表的特性 Region包含多行 列族包含多…...
Spring Boot中如何实现异步处理
在 Spring Boot 中实现异步处理可以通过使用 Async 注解和 EnableAsync 注解来实现。以下是如何配置和使用异步处理的步骤和示例代码。 步骤: 启用异步支持: 在 Spring Boot 配置类上使用 EnableAsync 注解启用异步处理。使用 Async 注解异步方法&…...
SSM电子商城系统
🍅点赞收藏关注 → 添加文档最下方联系方式咨询本源代码、数据库🍅 本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目希望你能有所收获,少走一些弯路。🍅关注我不迷路🍅 项目视频 电…...
新版IDEA创建数据库表
这是老版本的IDEA创建数据库表,下面可以自己勾选Not null(非空),Auto inc(自增长),Unique(唯一标识)和Primary key(主键) 这是新版的IDEA创建数据库表,Not null和Auto inc可以看得到,但Unique和Primary key…...
二叉树的存储(下)c++
链式存储 我们可以创建两个数组L[N]、r[N],分别存储i 号结点的左右孩子的编号,这样就可以通过数组下标实现链式访问。 本质上还是孩子表示法,存储的是左右孩子的信息 #include <iostream>using namespace std;const int N 1e6 10; …...
Flutter中PlatformView在鸿蒙中的使用
Flutter中PlatformView在鸿蒙中的使用 概述在Flutter中的处理鸿蒙端创建内嵌的鸿蒙视图创建PlatformView创建PlatformViewFactory创建plugin,注册platformview注册插件 概述 集成平台视图(后称为平台视图)允许将原生视图嵌入到 Flutter 应用…...
Docker—搭建Harbor和阿里云私有仓库
Harbor概述 Harbor是一个开源的企业级Docker Registry管理项目,由VMware公司开发。它的主要用途是帮助用户迅速搭建一个企业级的Docker Registry服务,提供比Docker官方公共镜像仓库更为丰富和安全的功能,特别适合企业环境使用。12 Harb…...
一篇博文了解JVM的各个内存区域
JVM的内存区域可以细分为程序计数器、虚拟机栈、本地方法栈、堆和方法区 其中,方法区和堆是线程共享的,虚拟机栈、本地方法栈和程序计数器是私有的; 先来说说程序计数器,它也被称为PC寄存器,占据着很小的内存空间…...
无监督学习:聚类、异常检测
聚类 工作原因我对聚类特别熟悉,因此视频课程基本快进看完,不做记录 异常检测 高斯(正态)分布 多特征异常检测 将每个特征作为独立特征(实践证明即使不完全独立也影响不大)计算高斯分布的参数,然后将待预估样本代入…...
pdf与ofd的区别详细对比
PDF(Portable Document Format)和OFD(Open Fixed-layout Document)是两种常见的电子文档格式,它们在设计理念、技术实现、应用场景等方面存在显著差异。以下是对这两种格式的详细对比分析,涵盖其历史背景、…...
DDD架构实战第六讲总结:领域驱动设计中的聚合
云架构师系列课程之DDD架构实战第六讲总结:领域驱动设计中的聚合 聚合提升了对象系统的粒度,保证了业务逻辑的完整性,减少了错误产生的概率 一、引言 本讲将探讨领域驱动设计(DDD)中的重要概念——聚合。聚合是业务完整性的单元,是一个更大力度的封装。在领域驱动设计中…...