BGP路由优选(五)

news2024/11/22 17:59:47

当到达同一个目的网段存在多条路由时,BGP通过如下的次序进行路由优选:

      丢弃下一跳不可达的路由。

  1. 优选Preferred-Value属性值最大的路由。
  2. 优选Local_Preference属性值最大的路由。
  3. 本地始发的BGP路由优于从其他对等体学习到的路由,本地始发的路由优先级:优选手动聚合>自动聚合>network>import>从对等体学到的。
  4. 优选AS_Path属性值最短的路由。
  5. 优选Origin属性最优的路由。Origin属性值按优先级从高到低的排列是:IGPEGPIncomplete
  6. 优选MED属性值最小的路由。
  7. 优选从EBGP对等体学来的路由(EBGP路由优先级高于IBGP路由)。
  8. 优选到Next_HopIGP度量值最小的路由。
  9. 优选Cluster_List最短的路由。
  10. 优选Router IDOrginator_ID)最小的设备通告的路由。
  11. 优选具有最小IP地址的对等体通告的路由。

当前8条属性全部相同时可以形成路由负载分担

BGP路由选路实验

IP规划、BGP对等体关系、AS号等信息如上图所示,按图中数据进行基本配置


需求1:R1去往4.4.4.4时,走R2并且保证任何情况下走R2,使用协议首选值实现

1. 配置命令

[AR1-bgp]peer 12.0.0.2 preferred-value 100

#将对等体12.0.0.2发送的所有路由的preferred-value值修改为10

2.验证


 需求2:将R3发给R1的9.9.9.9的协议首选值修改为50,使用route-policy实现

1.配置命令

[AR1]ip ip-prefix R3Pre permit 9.9.9.0 24

[AR1]route-policy R3Pre permit node 10
Info: New Sequence of this List.
[AR1-route-policy]if-match ip-prefix R3Pre 
[AR1-route-policy]apply preferred-value 50

[AR1-route-policy]route-policy R3Pre permit node 999
Info: New Sequence of this List.

[AR1-bgp]peer 13.0.0.3 route-policy R3Pre import

 2.验证


需求3:R4去1.1.1.1通过R3走,通过修改到达IBGP邻居地址的IGP度量值实现,并要求R4到达R1的Loopback 0接口的路由保持不变

1.配置命令

[AR4-GigabitEthernet0/0/2]ospf cost 2

[AR2-GigabitEthernet0/0/0]ospf cost 2

2.验证


需求4:在R1上通告192.168.1.0路由,将R4从R2学到此路由local pre修改为160,从R3学到到此路由的local pre修改为360,在R4上配置

1.配置命令

[AR4]ip ip-prefix R1Pre permit 192.168.1.0 24

[AR4]route-policy Pre160 permit node 10
Info: New Sequence of this List.
[AR4-route-policy]if-match ip-prefix R1Pre
[AR4-route-policy]apply local-preference 160
[AR4]route-policy Pre160 permit node 20
Info: New Sequence of this List.

[AR4]route-policy Pre360 permit node 10
Info: New Sequence of this List.
[AR4-route-policy]if-match ip-prefix R1Pre
[AR4-route-policy]apply local-preference 360
[AR4]route-policy Pre360 permit node 20

[AR4-bgp]peer 2.2.2.2 route-policy Pre160 import
[AR4-bgp]peer 3.3.3.3 route-policy Pre360 import

2.验证

3.注意事项

        当R4将192.168.1.0的本地优先级修改为360反射给R2后EBGP对等体R1获取到的192.168.1.0的本地优先级为100,没有R4反射过来的360优先级高,成为不活跃的路由,不进行传递。所以只出现下一跳3.3.3.3的路由,没有2.2.2.2的


需求5:在R3上将R1发来的1.1.1.0和192.168.1.0 的路由的起源属性修改为?,使R3去往这些网段走R2

1.配置命令

[AR3]ip ip-prefix changeOrg index 10 permit 1.1.1.0 24
[AR3]ip ip-prefix changeOrg index 20 permit 192.168.1.0 24

[AR3]route-policy changeOrg permit node 10
Info: New Sequence of this List.
[AR3-route-policy]if-match ip-prefix changeOrg
[AR3-route-policy]apply origin incomplete 
[AR3-route-policy]route-policy changeOrg permit node 20
Info: New Sequence of this List.

[AR3-bgp]peer 13.0.0.1 route-policy changeOrg import

2.验证

3.注意事项

        因为在需求4中将192.168.1.0的本地优先级在R4上修改为360,R2不反射192.168.1.0的路由,所以不受Origin属性的影响


需求6:在R5上通告5.5.5.0,在R6上通告6.6.6.0,要求R4访问6.6.6.0使用R5,访问5.5.5.0使用R6,在R6上配置,通过MED属性实现

1.代码配置

[AR4]ip ip-prefix R5 permit 5.5.5.0 24 
[AR4]ip ip-prefix R6 permit 6.6.6.0 24

[AR4]route-policy R5Med permit node 10
Info: New Sequence of this List.
[AR4-route-policy]if-match ip-prefix R5
[AR4-route-policy]apply cost 100
[AR4-route-policy]route-policy R5Med permit node 20
Info: New Sequence of this List.
[AR4-route-policy]if-match ip-prefix R6
[AR4-route-policy]apply cost 50
[AR4-route-policy]route-policy R5Med permit node 999
Info: New Sequence of this List.

[AR4-route-policy]route-policy R6Med permit node 10
Info: New Sequence of this List.
[AR4-route-policy]if-match ip-prefix R6
[AR4-route-policy]apply cost 100
[AR4-route-policy]route-policy R6Med permit node 20
Info: New Sequence of this List.
[AR4-route-policy]if-match ip-prefix R5
[AR4-route-policy]apply cost 50
[AR4-route-policy]route-policy R6Med permit node 999
Info: New Sequence of this List.

[AR4]bgp 100
[AR4-bgp]peer 45.0.0.5 route-policy R5Med import 
[AR4-bgp]peer 46.0.0.6 route-policy R6Med import

2.验证


需求7:R1访问5.5.5.5通过R2,访问6.6.6.6通过R3,使用AS-Pah属性实现,分别在R2和R3上实现

1.代码配置

[AR1]ip ip-prefix R5 permit 5.5.5.0 24 
[AR1]ip ip-prefix R6 permit 6.6.6.0 24

[AR1]route-policy AS-R2 permit node 10
Info: New Sequence of this List.
[AR1-route-policy]if-match ip-prefix R6
[AR1-route-policy]apply as-path 985 211 additive 
[AR1-route-policy]route-policy AS-R2 permit node 999
Info: New Sequence of this List.

[AR1-route-policy]route-policy AS-R3 permit node 999
Info: New Sequence of this List.
[AR1-route-policy]route-policy AS-R3 permit node  10
Info: New Sequence of this List.
[AR1-route-policy]if-match ip-prefix R5 
[AR1-route-policy]apply as-path 985 211 additive 

[AR1-route-policy]bgp 1
[AR1-bgp]peer 12.0.0.2 route-policy AS-R2 impor
[AR1-bgp]peer 13.0.0.3 route-policy AS-R3 import 

2.验证


9.踩坑点

 在配置R5和R6的IBGP邻居关系时,采用环回口建立邻居

1.坑点1:环回口配置的是32位掩码:如:5.5.5.5/32,在BGP中宣告5.5.5.0/24不成功

        原因:network的路由信息要与IP路由表中保持一致,没有或者不一致无法宣告

2.坑点2:环回口换成5.5.5.5/24后,宣告5.5.5.0/24成功,但是R4接收只接受到了R5宣告过来的路由,并未接收到R6宣告过来的路由

 1.现象

2.原因

         建立BGP邻居的路由跟bgp路由一样的话,传过去被认为不是最优路由,所以不会传递给其他对等体

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2036658.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用腾讯云存储桶COS来实现上传和下载图片功能

有个需求,需要上传和下载图片,我决定使用腾讯云存储桶来做服务器存储目录,供程序上传和下载使用。 1、首先打开对应网站:云产品免费体验馆_云产品免费试用_个人云产品试用-腾讯云,点击左边的"存储"项&#x…

proxy负载均衡

endpoint : 终点、终端 看service服务器的ip kubectl get ep backend -> real server :真正提供web服务的服务器 负载均衡器 load balancer --》LB USER -->LB --->BACKEND(real server) nginx SERVICE --->很多的endpoint--》po…

报名表EXCEL图片批量下载源码-CyberWinApp-SAAS 本地化及未来之窗行业应用跨平台架构

每次报名表都会包含大量照片,一张一张下载很慢 可以通过未来之窗开源平台架构 开开excel批量下载 实现代码也很简单 function 未来之窗下载(){ let 未来之窗地址 document.getElementById("batchurl").value; let 保存路径 document.getElementById(…

GD32 MCU如何使用双ADC内核提高ADC采样率?

如下图所示,GD32F303系列MCU在不同的ADC位宽情况下均具有对应的最高采样率,那这个最高采样率还可以提高吗? 答案是可以的。GD32F30X系列MCU可以支持双ADC内核,分别为ADC0和ADC1,且双ADC可以支持同步模式,同…

力扣热题100_链表_206_反转链表

文章目录 题目链接解题思路解题代码 题目链接 206. 反转链表 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出:[5,4,3,2,1] 示例 2: 输入&#xf…

Leetcode面试经典150题-146.LRU缓存

解法都在代码里,不懂就留言或者私信,这个题大概率不会让你直接写代码,而是说以下思路,如果写代码这个题写出来基本就过了 class LRUCache {/**首先我们得有缓存,get和put都是O(1)时间复杂度,我们常用的数…

公用事业公司与数据中心的电力协议推动未来增长

随着人工智能技术的迅猛发展,美国公用事业公司正在积极与数据中心运营商签订电力供应协议。这一趋势预计将显著提升这些公司的销售额和利润,并对未来几年的能源市场产生深远影响。 数据中心电力需求激增 根据高盛的报告,到2030年&#xff0c…

WMS助力企业数字化转型(六)

在当今数字化时代,仓库管理系统(WMS)作为推动企业数字化转型的重要工具,通过实时数据监控、自动化操作和智能分析,大幅提升了仓储管理的效率与精准度,为企业在供应链优化、库存控制和客户满意度方面带来了显…

Datawhale X 魔搭 AI夏令营 第四期魔搭-AIGC文生图方向Task2笔记

了解一下 AI生图技术 的能力&局限 对所有人来说,定期关注AI生图的最新能力情况都十分重要: 对于普通人来说,可以避免被常见的AI生图场景欺骗,偶尔也可以通过相关工具绘图 对于创作者来说,通过AI生图的工具可以快速…

GUI Agent with SFT 学习

grounding指的是基础训练,定位之类的意思,sft指的是监督微调,也就是用带有标签的数据集对与训练完毕的模型进行微调(因为是带标签的,所以叫监督) ui理解能力分为两个部分:Static UI understandi…

离线安装部署springboot+vue系统到服务器

注意:首先服务器会有多个网卡,这些服务器的网卡连接所需要的文件可能不是我们默认的ifcfg-eth0/ifcfgens33,可以试着切换一下服务器网线插入的接口,要保证服务器网线插入的接口和网卡对应的文件一致 说明,在一些政府(保…

lvs的相关应用2

lvs 安装lvs 配置规则,查看所有的规则,如果已经配置好规则,重启之后就没了 [rootds01 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forwa…

react的setState中为什么不能用++?

背景: 在使用react的过程中产生了一些困惑,handleClick函数的功能是记录点击次数,handleClick函数被绑定到按钮中,每点击一次将通过this.state.counter将累计的点击次数显示在页面上 困惑: 为什么不能直接写prevStat…

为什么要学习AI大模型?

AI大模型正在以惊人的速度改变着各行各业。正如移动互联网时代造就了无数成功的开发者,今天的大模型技术也为我们带来了前所未有的机遇。学习和掌握这项技术,不仅能让你站在行业前沿,还能为你的职业生涯带来巨大的回报。 01 企业为什么需要…

Linux shell编程学习笔记70: curl 命令行网络数据传输工具 选项数量雷人(下)

0 前言 curl是一款综合性网络传输工具&#xff0c;既可以上传也可以下载&#xff0c;支持HTTP、HTTPS、FTP等30余种常见协‍议。 Linux和Windows都提供了curl命令。 D:\>curl --help Usage: curl [options...] <url>-d, --data <data> HTTP POST da…

sql实战

这里写自定义目录标题 sql实战cmseasy daiqile全局污染 RCE限制16字符传入参数限制传入字符7个限制35字符&#xff0c;并过滤所有英文数字 sql实战 cmseasy 1、/lib/admin/admin.php和/lib/admin/tool/front_class.php源代码中发现&#xff0c;可以伪造IP并且传入ishtml1&…

Leetcode JAVA刷刷站(26)删除有序数组中的重复项

一、题目概述 二、思路方向 为了原地删除重复出现的元素&#xff0c;并保持元素的相对顺序一致&#xff0c;我们可以使用双指针的方法来解决这个问题。这种方法通常被称为“快慢指针”法。在这个问题中&#xff0c;快指针&#xff08;fast&#xff09;用于遍历数组&#xff0…

计算机的错误计算(六十一)

摘要 解释计算机的错误计算&#xff08;六十&#xff09;中的错误计算原因。 计算机的错误计算&#xff08;六十&#xff09;中的计算可以归纳为 因此&#xff0c;我们只需要分析该算式。 例1. 已知 分析如何计算 首先&#xff0c;一个数乘以一个2&#xff0c;一般不会…

[Megagon Labs] Annotating Columns with Pre-trained Language Models

Annotating Columns with Pre-trained Language Models 任务定义 输入&#xff1a;一张数据表&#xff0c;但没有表头&#xff0c;只有表中的数据。 输出&#xff1a;每一列数据的数据类型&#xff0c;以及两列数据之间的关系。 数据类型和数据关系都是由训练数据决定的固定…

docker部署Prometheus、Grafana

docker部署Prometheus 1、 拉取prometheus镜像 docler pull prom/prometheus 遇到问题&#xff1a;注意下科学上网。 2、将prometheus配置文件放在外面管理 prometheus.yml global:scrape_interval: 15sevaluation_interval: 15salerting:alertmanagers:- static_configs:-…