核心实验21_BGP高级(了解)(配置略)_ENSP
项目场景:
核心实验21_BGP基础_ENSP
通过bgp实现省市互通。
实搭拓扑图:
具体操作:
其他基础配置略(接口地址,ospf)
1.BGP邻居建立:
R1:
[R1]bgp 200
[R1-bgp]peer 10.2.2.2 as-number 200 /指定邻居R2
[R1-bgp]peer 10.2.2.2 connect-interface LoopBack 0 /更新源为loo0口
[R1-bgp]peer 10.2.2.2 next-hop-local /将R2的下一跳改为R1自己,使得与EBGP通信时,R2不会丢包
[R1-bgp]peer 200.1.13.3 as-number 100 /建立EBGP邻居
R2:
[R2]bgp 200
[R2-bgp]peer 10.2.1.1 as 200
[R2-bgp]peer 10.2.1.1 connect-interface LoopBack 0
[R2-bgp]peer 10.2.1.1 next-hop-local /将R1的下一跳改为R2自己,使得与EBGP通信时,R1不会丢包
[R2-bgp]peer 200.1.25.5 as-number 100 /建立EBGP邻居
R3:
[R3]bgp 100
[R3-bgp]peer 10.1.4.4 as 100
[R3-bgp]peer 10.1.5.5 as 100
[R3-bgp]peer 10.1.4.4 connect-interface loo 0
[R3-bgp]peer 10.1.5.5 connect-interface loo 0
[R3-bgp]peer 10.1.4.4 next-hop-local /将R4的下一跳改为R3自己,使得与EBGP通信时,R4不会丢包
[R3-bgp]peer 10.1.5.5 next-hop-local /将R5的下一跳改为R3自己,使得与EBGP通信时,R5不会丢包
[R3-bgp]peer 200.1.13.1 as 200
R4:
[R4]bgp 100
[R4-bgp]peer 10.1.3.3 as 100
[R4-bgp]peer 10.1.3.3 con lo 0
[R4-bgp]peer 10.1.5.5 as 100
[R4-bgp]peer 10.1.5.5 con lo 0
R5:
[R5]bgp 100
[R5-bgp]peer 10.1.3.3 as 100
[R5-bgp]peer 10.1.3.3 connect-interface LoopBack 0
[R5-bgp]peer 10.1.4.4 as 100
[R5-bgp]peer 10.1.4.4 connect-interface LoopBack 0
[R5-bgp]peer 10.1.4.4 next-hop-local
[R5-bgp]peer 10.1.3.3 next-hop-local
[R5-bgp]peer 200.1.25.2 as 200
2.路由引入:
R3:
[R3]bgp 100
[R3-bgp]network 10.1.4.0 24
[R3-bgp]network 10.1.7.0 24t
[R3-bgp]network 10.1.0.0 16
[R3]ip route-static 10.1.0.0 16 NULL 0
R5:
[R5]ip route-static 10.1.0.0 16 NULL 0
[R5]bgp 100
[R5-bgp]network 10.1.4.0 24
[R5-bgp]network 10.1.7.0 24
[R5-bgp]network 10.1.0.0 24
[R5-bgp]network 10.1.0.0 16
补充:
BGP路由器将路由通告给邻居后,每个BGP邻居都会进行路由优选,路由选择有三种情况:
- 该路由是到达目的地的唯一路由,直接优选。
- 对到达同一目的地的多条路由,优选优先级最高的。
- 对到达同一目的地且具有相同优先级的多条路由,必须用更细的原则去选择一条最优的
一般来说,BGP计算路由优先级的规则如下:
- 丢弃下一跳不可达的路由。
- 优选Preference_Value值最高的路由(私有属性,仅本地有效)。
- 优选本地优先级(Local_Preference)最高的路由。
- 优选手动聚合>自动聚谰鞍昂匙癌 笔靶宝啊豹鞍皑傲谤班宾版笆岸舱etwork>import>从对等体 学到的0优选ASPath短的路由。
- 起源类型IGP>EGP>Incomplete。
- 对于来自同一AS的路由,优选MED值小的。0优选从EBGP学来的路由(EBGP>IBGP)。0
- 优选AS内部IGP的Metric最小的路由。
- 优选Cluster List最短的路由。
- 优选Orginator_ID最小的路由。
- 优选Router_ID最小的路由器发布的路由
- 优选具有较小IP地址的邻居学来的路由。
BGP 通告原则:
① 仅将自己最优的路由发布给邻居 (> 优化)
② 通过EBGP邻居获得的最优路由可以发布给所有的BGP邻居
③ 通过IBGP邻居获得的路由不会发布给IBGP邻居(防止IBGP路由环路)
④ BGP和IGP同步(华为默认关闭该特性)
⑤ 默认从EBGP邻居学到的BGP路由的下一跳是EBGP对等体的IP地址,当该路由向AS内部传递至时,路由传递给IBGP邻居时下一跳地址(next-hop)不变(还是上一个AS的接口地),此时有可能会引发下一跳不可达
解决下一跳不可达:
a 将EBGP互联地址(next-hop地址)宣告进IGP(注意配置静默接口,防止IGP路由传至其他AS)
b 使用next-hop-local
防止环路:
a 防止IBGP环路(AS内部环路):IBGP水平分割
b 防止EBGP环路(不同AS之间的环路):AS-Path 属性
解决IBGP水平分割带来的路由不传递问题:
a 在AS内部IBGP邻居建立全互联结构(full-mesh)
b 配置路由反射器RR
c BGP联邦 (联盟)
公认必遵:origin(起源) 、AS-path、next-hop
公认任意:Local_Pref (本地优先级)、Atomic Aggregate 原子聚合
可选过渡:Aggregater 、community
可选非过渡:MED CLUSTER_LIST Originator_ID
公认:必须识别
必遵:必须携带
任意:可以不携带
可选:可以不识别
过渡:需要传递给邻居
Preference_Value值(首选值):本地有效(不传给邻居),默认值0,越
大越优先
MED:Multi-Exit-Discriminator 默认值是0 越小越优先 类似IGP度量值 该属性仅在相邻两个AS直间传递 用于判断流量进入AS时的最佳路由
注意:将igp引入bgp时 igp路由的开销会自动移植到MED。
local_pre为空原因:(公认任意属性),由于Local_Pre属性仅在IBGP邻居之间有效,因此从EBGP邻居收到的update报文不携带local_pre 值。因此从ebgp邻居收到的路由的local_pre 值是空。
MED值为空原因:(可选 非过渡属性),在向EBGP邻居发送update更新时默认不携带MED属性,除非手动配置路由策略(route-policy)才会携带
注意:当属性为空时可以看成该属性所对应的默认值。
原子聚合属性:atomic-aggregate ,在聚合路由时 携带details-suppress 参数(没有携带suppress-policy),聚合后的路由会携带该属性,用于警告下游路由器出现信息丢失(防
环)。
Aggregator 属性:在聚合路由时,聚合后的路由会携带aggregator属性表明聚合发生的位置(防环),该属性包含发起聚合路由器的AS号和router id。
聚合路由时携带AS-path(as-set)的优缺点:
优点:避免环路风险
缺点:明细路由震荡,有可能会导致聚合路由的频繁刷新(例如as-path频繁刷新),影响网络的稳定性
团体属性:community (辅助选路、过滤路由)
作用:标识具有相同特征的bgp路由 类似tag功能(和前缀列表功能相似)
① 自定义团体属性 (私有)例如:100:1
② 公共团体属性 (公有)
NO_advertise 不传递给任何邻居
NO_export 不传递给EBGP邻居
相关文章:

核心实验21_BGP高级(了解)(配置略)_ENSP
项目场景: 核心实验21_BGP基础_ENSP 通过bgp实现省市互通。 实搭拓扑图: 具体操作: 其他基础配置略(接口地址,ospf) 1.BGP邻居建立: R1: [R1]bgp 200 [R1-bgp]peer 10.2.2.2 as-number 200 …...
宝塔安装python和openssl
宝塔安装python和openssl OpenSSL Centos7 openssl 升级 1.1.1k.tar.gz centos7系统安装Vicuna(小羊驼)聊天机器人 CentOS中输入yum报错:sudo: unable to execute /bin/yum: No such file or directory opensslrpm安装指南-让你的网站更加…...
TDengine 3.1.1.0 来啦!更新如下
自 3.0 版本发布以来,在研发人员和社区用户的不断努力下,TDengine 做了大量更新,产品稳定性和易用性也在不断提升。近日,TDengine 3.1.1.0 成功发布,本文将向大家简单介绍一下该版本涉及的重大更新。 写在前面 伴随 …...

YSA Toon (Anime/Toon Shader)
这是一个Toon着色器/Cel阴影着色器,用于Unity URP 此着色器的目的是使角色或物体阴影实时看起来尽可能接近真实的动画或卡通效果 可以用于游戏,渲染,插图等 着色器特性,如:面的法线平滑、轮廓修复、先进的边缘照明、镜面照明、完全平滑控制 这个文档包括所有的功能https:/…...

LabVIEW通过IEC61508标准验证ITER联锁系统
LabVIEW通过IEC61508标准验证ITER联锁系统 保护环境要求系统能够保护机器免受工厂系统故障或机器危险操作造成的严重损坏。负责此功能的ITER系统是联锁控制系统(ICS)。该系统通过中央联锁系统(CIS)监督和控制不同的工厂联锁系统&…...
如何处理日期和时间?
处理日期和时间是计算机编程中的常见任务,无论是在C语言还是其他编程语言中。C语言提供了一些库函数来处理日期和时间,主要是通过<time.h>头文件中的函数来完成的。在本文中,我将详细解释如何在C语言中处理日期和时间,包括日…...

【开发】视频集中存储/直播点播平台EasyDSS点播文件分类功能优化
视频推拉流EasyDSS视频直播点播平台,集视频直播、点播、转码、管理、录像、检索、时移回看等功能于一体,可提供音视频采集、视频推拉流、播放H.265编码视频、存储、分发等视频能力服务。 TSINGSEE青犀视频的EasyDSS平台具有点播文件分类展示方法…...

论文多级编号-word2010
多级列表-定义新的多级列表 注意1.1中的两个1必须是灰色(如果不是灰色,解决方法放在文本文末了) 如果定义过程中发现1.1中的1不是灰色,如下图,那么需要操作下述步骤 点击文件-选项 取消勾选自动编号列表。确定后关闭文…...

Jetpack Compose基础组件之 — Text
Text的源码参数预览 Composable fun Text(text: String,modifier: Modifier Modifier,color: Color Color.Unspecified,fontSize: TextUnit TextUnit.Unspecified,fontStyle: FontStyle? null,fontWeight: FontWeight? null,fontFamily: FontFamily? null,letterSpac…...

动手学深度学习——Windows下的环境安装流程(一步一步安装,图文并配)
目录 环境安装官网步骤图文版安装Miniconda下载包含本书全部代码的压缩包使用conda创建虚拟(运行)环境使用conda创建虚拟环境并安装本书需要的软件激活之前创建的环境打开Jupyter记事本 环境安装 文章参考来源:http://t.csdn.cn/tu8V8 官网…...

打印日志遇到的问题,logback与zookeeper冲突
在做项目时需要打印日志引入了logback打印日志,但是一直无法打印,于是一路查找原因。发现zookeeper中默认带的有个logback和我自己引入的logback版本冲突了,这样直接使用exclusions标签将zookeeper中自带的日志框架全部排除即可 按理说到这一…...
【Node.js操作SQLite指南】
Node.js操作SQLite指南 在本篇博客中,我们将学习如何在Node.js中操作SQLite数据库。我们将使用sqlite3模块来创建数据库、创建表以及进行数据的增删改查操作。 文章目录 Node.js操作SQLite指南安装sqlite3模块创建数据库创建表数据的增删改查插入数据查询数据更新…...

PyTorch之张量的相关操作大全 ->(个人学习记录笔记)
文章目录 Torch1. 张量的创建1.1 直接创建1.1.1 torch.tensor1.1.2 torch.from_numpy(ndarray) 1.2 依据数值创建1.2.1 torch.zeros1.2.2 torch.zeros_like1.2.3 torch.ones1.2.4 torch.ones_like1.2.5 torch.full1.2.6 torch.full_like1.2.7 torch.arange1.2.8 torch.linspace…...

ChatGPT生成内容很难脱离标准化,不建议用来写留学文书
ChatGPT无疑是23年留学届的热门话题,也成为了不少留学生再也离不开的万能工具,从总结文献、润色论文、给教授写email似乎无所不能。 各大高校对于学生使用ChatGPT的态度也有所不同。例如,哈佛大学教育代理院长 Anne Harrington 在内部邮件中…...
sqlserver @@ROWCOUNT的使用
T-SQL是一种用于与关系型数据库(如Microsoft SQL Server)交互的SQL(Structured Query Language)方言。 在T-SQL中,ROWCOUNT是一个系统变量,它返回最后执行的语句影响的行数。你提供的代码检查ROWCOUNT的值…...
Hbase批量删除数据
一、TTL机制 HBase的TTL(Time To Live)是一种用于指定数据存活时间的机制。它允许用户为HBase中的数据设置一个固定的生存时间,在达到指定的时间后,HBase会自动删除这些数据。 具体操作如下: 三步走,先禁用…...

飞行动力学 - 第20节-part2-机翼上反及后掠对横向静稳定性的影响 之 基础点摘要
飞行动力学 - 第20节-part2-机翼上反及后掠对横向静稳定性的影响 之 基础点摘要 1. 上反角贡献2. 后掠角贡献3. 参考资料 1. 上反角贡献 对于无后掠、大展弦比带上反的矩形机翼,飞行状态为 α \alpha α, β \beta β及V。 上反角增加稳定性,…...

力扣 -- 1218. 最长定差子序列
参考代码: class Solution { public:int longestSubsequence(vector<int>& arr, int difference) {int narr.size();unordered_map<int,int> hash;//nums[i]绑定dp[i]hash[arr[0]]1;int ret1;for(int i1;i<n;i){int aarr[i];int ba-difference;…...
【程序员装机】在右键菜单中添加Notepad++选项
文章目录 前言在右键菜单中添加Notepad选项的批处理脚本上述批处理脚本的功能包括 总结 前言 本文将介绍如何通过批处理脚本来在Windows右键菜单中添加Notepad选项,使您能够轻松使用Notepad打开各种文件。 在右键菜单中添加Notepad选项的批处理脚本 以下是一个用于…...

Scrapy的基本介绍、安装及工作流程
一.Scrapy介绍 Scrapy是什么? Scrapy 是用 Python 实现的一个为了爬取网站数据、提取结构性数据而编写的应用框架(异步爬虫框架) 通常我们可以很简单的通过 Scrapy 框架实现一个爬虫,抓取指定网站的内容或图片。 Scrapy使用了Twisted异步网络框架&…...

TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...

前端导出带有合并单元格的列表
// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)
可以使用Sqliteviz这个网站免费编写sql语句,它能够让用户直接在浏览器内练习SQL的语法,不需要安装任何软件。 链接如下: sqliteviz 注意: 在转写SQL语法时,关键字之间有一个特定的顺序,这个顺序会影响到…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求,并检查收到的响应。它以以下模式之一…...

Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈
在日常iOS开发过程中,性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期,开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发,但背后往往隐藏着系统资源调度不当…...