BGP边界网关协议(Border Gateway Protocol)路由聚合详解

一、路由聚合

1、意义   

        在大规模的网络中,BGP路由表十分庞大,给设备造成了很大的负担,同时使发生路由振荡的几率也大大增加,影响网络的稳定性。

        路由聚合是将多条路由合并的机制,它通过只向对等体发送聚合后的路由而不发送所有的具体路由的方法,减小路由表的规模。并且被聚合的路由如果发生路由振荡,也不再对网络造成影响,从而提高了网络的稳定性。

        BGP在IPv4网络中支持自动聚合和手动聚合两种方式,而IPv6网络中仅支持手动聚合方式

二、路由聚合的方式

1、Network

        改变引入路由条目的掩码,通过手动配置静态Null0路由来达到防环的目的

        1)基础接口配置

#
interface LoopBack12
 ip address 1.1.12.1 255.255.255.0
#
interface LoopBack13
 ip address 1.1.13.1 255.255.255.0
#
interface LoopBack14
 ip address 1.1.14.1 255.255.255.0
#
interface LoopBack15
 ip address 1.1.15.1 255.255.255.0
#
ip route-static 1.1.12.0 22 NULL 0
#
bgp 1
 #
 ipv4-family unicast
  network 1.1.12.0 255.255.252.0
#

        2)优点

        该方式相对稳定,即使明细路由丢失,也不会引起路由收敛震荡,导致的拓扑变更。

        一般建议配置在始发的AS路由器上。

        3)路由表项

<AR2>dis bgp routing-table

 BGP Local router ID is 2.2.2.2
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 3
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   1.1.12.0/22        10.1.123.1      0                     0      1i
 * i                     10.1.1.1        0          100        0      1i
<AR2>ping 1.1.12.1
  PING 1.1.12.1: 56  data bytes, press CTRL_C to break
    Reply from 1.1.12.1: bytes=56 Sequence=1 ttl=255 time=50 ms
    Reply from 1.1.12.1: bytes=56 Sequence=2 ttl=255 time=60 ms
    Reply from 1.1.12.1: bytes=56 Sequence=3 ttl=255 time=40 ms

  --- 1.1.12.1 ping statistics ---
    3 packet(s) transmitted
    3 packet(s) received
    0.00% packet loss
    round-trip min/avg/max = 40/50/60 ms

<AR2>dis bgp routing-table 1.1.12.0

 BGP local router ID : 2.2.2.2
 Local AS number : 235
 Paths:   2 available, 1 best, 1 select
 BGP routing table entry information of 1.1.12.0/22:
 From: 10.1.123.1 (1.1.1.1)
 Route Duration: 00h02m22s
 Direct Out-interface: GigabitEthernet0/0/0
 Original nexthop: 10.1.123.1
 Qos information : 0x0
 AS-path 1, origin igp, MED 0, pref-val 0, valid, external, best, select, active, pre 255
 Advertised to such 2 peers:
    10.1.5.5
    10.1.3.3
 BGP routing table entry information of 1.1.12.0/22:
 From: 10.1.3.3 (3.3.3.3)
 Route Duration: 00h02m21s
 Relay IP Nexthop: 10.1.123.1
 Relay IP Out-Interface: GigabitEthernet0/0/0
 Original nexthop: 10.1.1.1
 Qos information : 0x0
 AS-path 1, origin igp, MED 0, localpref 100, pref-val 0, valid, internal, pre 255, IGP cost 1, not preferred for peer type
 Not advertised to any peer yet

<AR2>

2、自动聚合

        1)基本配置

接口ip地址复用
#
bgp 1
 #
 ipv4-family unicast
  summary automatic
  import-route direct route-policy sum
#
route-policy sum permit node 10
 if-match interface LoopBack12
 if-match interface LoopBack13
 if-match interface LoopBack14
 if-match interface LoopBack15
#
route-policy sum deny node 20
#

        2)路由表项

        下图可知,当配置自动聚合后会所有聚合路由所覆盖的明细路由均被抑制(s),且自动聚合掩码较大(当前路由表为8位),不够精确,且产生的为主类路由

[AR1]dis bgp routing-table

 BGP Local router ID is 1.1.1.1
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 7
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   1.0.0.0            127.0.0.1                             0      ?
 s>   1.1.12.0/24        0.0.0.0         0                     0      ?
 s>   1.1.13.0/24        0.0.0.0         0                     0      ?
 s>   1.1.14.0/24        0.0.0.0         0                     0      ?
 s>   1.1.15.0/24        0.0.0.0         0                     0      ?
 *>   55.5.5.0/24        10.1.123.2                            0      235?
 *                       10.1.3.3                              0      235?
[AR1]

        自动路由聚合会默认生成一条Null0路由,无需手动配置

[AR1]dis ip routing-table 1.0.0.0
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Table : Public
Summary Count : 1
Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        1.0.0.0/8   IBGP    255  0           D   127.0.0.1       NULL0

[AR1]

        自动聚合路由为本地始发路由,会携带local属性,

        携带local属性的路由有

                (1)network引入的路由

                (2)import-route引入的路由

                (3)自动聚合产生的主类路由

3、手动聚合

        1)基本配置

        在自动聚合的基础上只使用路由策略引入相关路由信息,不配置自动聚合命令

#
bgp 1
 router-id 1.1.1.1
#
 ipv4-family unicast
  import-route direct route-policy ar1-ar2-ex
  peer 10.1.123.2 route-policy ar1-ar2-ex export
#
Basic ACL 2012, 1 rule
Acl's step is 5
 rule 5 permit source 1.1.12.0 0

Basic ACL 2013, 1 rule
Acl's step is 5
 rule 5 permit source 1.1.13.0 0

Basic ACL 2014, 1 rule
Acl's step is 5
 rule 5 permit source 1.1.14.0 0

Basic ACL 2015, 1 rule
Acl's step is 5
 rule 5 permit source 1.1.15.0 0
#
route-policy ar1-ar2-ex permit node 10
 if-match acl 2012
 apply as-path 12 additive
#
route-policy ar1-ar2-ex permit node 20
 if-match acl 2013
 apply as-path 13 additive
#
route-policy ar1-ar2-ex permit node 30
 if-match acl 2014
 apply as-path 14 additive
#
route-policy ar1-ar2-ex permit node 40
 if-match acl 2015
 apply as-path 15 additive
#
route-policy ar1-ar2-ex deny node 50
#

        2)配置手动聚合

        在路由方向的入向设备侧配置该命令

#
bgp 235
 router-id 2.2.2.2
 #
 ipv4-family unicast
  aggregate 1.1.12.0 255.255.252.0
#

         聚合路由为本地始发路由信息,携带local属性,并标注为聚合路由进行发送

         手动配置聚合路由默认生成NULL0防环路由信息

        3)特点

        手动聚合路由相比于自动聚合,更加精确

        会自动产生一条指向null0的防环路由信息

        手动聚合产生的路由信息会携带aggregator(聚合者)信息,并标识路由聚合者所在的AS号及路由器的Route-id

        携带local属性的路由有

                (1)network引入的路由

                (2)import-route引入的路由

                (3)自动聚合产生的主类路由

                (4)手动聚合产生的聚合路由

4、路由集合等级

        手动聚合>自动聚合>network>import

三、手动聚合缺陷及解决措施

        为了避免路由聚合可能引起的路由环路,BGP设计了AS_Set属性。AS_Set属性是一种无序的AS_Path属性,标明聚合路由所经过的AS号。当聚合路由重新进入AS_Set属性中列出的任何一个AS时,BGP将会检测到自己的AS号在聚合路由的AS_Set属性中,于是会丢弃该聚合路由,从而避免了路由环路的形成。

1、手动聚合缺陷

        手动聚合默认不抑制明细路由,因为集合可能产生次优路径,明细路由确保走最优路径,此时聚合路由只做冗余备份使用

        因为聚合路由为始发路由,不在携带明细的as-path号,所以可能产生路由回灌问题

 2、抑制明细发汇总

        可以通过做聚合路由的始发路由器上配置detail-suppressed指定仅通告聚合路由)来实现抑制明细路由的发送,走汇总路由

#
bgp 235
 router-id 2.2.2.2
 #
 ipv4-family unicast
  aggregate 1.1.12.0 255.255.252.0 detail-suppressed
#

3、聚合路由继承明细as-path(AS-SET

        通过在聚合路由器上配置detail-suppressed AS-SET 来使得聚合路由继承明细的as-path号,防止路由回灌

#
bgp 235
 router-id 2.2.2.2
 #
 ipv4-family unicast
  aggregate 1.1.12.0 255.255.252.0 as-set detail-suppressed
#

4、AS-path的表现形式

        (1)AS_SEQ(as的序列号)

        (2)AS_SET(手工聚合路由通过{}括号将明细的as号进行汇总携带到汇总中)

        (3)AS_confed_SEQ(as-path联邦的序列号,通过()括号进行汇总)

        联邦AS本区域的AS内生效,对外仍未一个AS号

        (4)AS_confed_SET(单独的联邦AS号)

5、有选择的泄露明细路由(suppress-policy

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯之c++入门(一)【第一个c++程序】

目录 前言一、第⼀个C程序1.1 基础程序1.2 main函数1.3 字符串1.4 头文件1.5 cin 和 cout 初识1.6 名字空间1.7 注释 二、四道简单习题&#xff08;点击跳转链接&#xff09;练习1&#xff1a;Hello,World!练习2&#xff1a;打印飞机练习3&#xff1a;第⼆个整数练习4&#xff…

【背包问题 】01背包

目录 一&#xff0c;01背包问题详解 问题描述&#xff1a; 问题分析&#xff1a; 代码&#xff1a; 空间优化&#xff1a; 二&#xff0c;典例 1&#xff0c;分割等和子集 题目解析&#xff1a; 算法解析&#xff1a; 代码&#xff1a; 空间优化&#xff1a; 2&am…

81,【5】BUUCTF WEB [b01lers2020]Life on Mars

进入靶场 怎莫颠颠的&#xff0c;一下子就想到展博了 先把左边的挨个点一遍 在最后一个有点收获 不过也没其他收获了 这种进去给个正常网页的题目&#xff0c;基本都靠url获取信息了 抓包看看有没有其他信息 竟然没有任何信息 自闭了 看别人的wp去咯 为什么别人抓到的包里…

80,【4】BUUCTF WEB [SUCTF 2018]MultiSQL

53&#xff0c;【3】BUUCTF WEB october 2019 Twice SQLinjection-CSDN博客 上面这个链接是我第一次接触二次注入 这道题也涉及了 对二次注入不熟悉的可以看看 BUUCTF出了点问题&#xff0c;打不开&#xff0c;以下面这两篇wp作为学习对象 [SUCTF 2018]MultiSQL-CSDN博客 …

Vue 响应式渲染 - 指令

Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue 响应式渲染 - 指令 目录 指令 介绍 缩写 指令示例 总结 指令 介绍 指令&#xff1a;是指带有v-前缀的特殊属性 v-bind 动态绑定属性 v-if 动态创建/删除 v-show 动态显示/隐藏 v-on:click 绑定事件 v-for 遍历…

扣子平台音频功能:让声音也能“智能”起来

在数字化时代&#xff0c;音频内容的重要性不言而喻。无论是在线课程、有声读物&#xff0c;还是各种多媒体应用&#xff0c;音频都是传递信息、增强体验的关键元素。扣子平台的音频功能&#xff0c;为开发者和内容创作者提供了一个强大而灵活的工具&#xff0c;让音频的使用和…

python3+TensorFlow 2.x(三)手写数字识别

目录 代码实现 模型解析&#xff1a; 1、加载 MNIST 数据集&#xff1a; 2、数据预处理&#xff1a; 3、构建神经网络模型&#xff1a; 4、编译模型&#xff1a; 5、训练模型&#xff1a; 6、评估模型&#xff1a; 7、预测和可视化结果&#xff1a; 输出结果&#xff…

LKT4304新一代算法移植加密芯片,守护 物联网设备和云服务安全

凌科芯安作为一家在加密芯片领域深耕18年的企业&#xff0c;主推的LKT4304系列加密芯片集成了身份认证、算法下载、数据保护和完整性校验等多方面安全防护功能&#xff0c;可以为客户的产品提供一站式解决方案&#xff0c;并且在调试和使用过程提供全程技术支持&#xff0c;针对…

js/ts数值计算精度丢失问题及解决方案

文章目录 概念及问题问题分析解决方案方案一方案二方案其它——用成熟的库 概念及问题 js中处理浮点数运算时会出现精度丢失。js中整数和浮点数都属于Number数据类型&#xff0c;所有的数字都是以64位浮点数形式存储&#xff0c;整数也是如此。所以打印x.00这样的浮点数的结果…

SSM框架探秘:Spring 整合 SpringMVC 框架

搭建和测试 SpringMVC 的开发环境&#xff1a; web.xml 元素顺序&#xff1a; 在 web.xml 中配置 DisPatcherServlet 前端控制器&#xff1a; <!-- 配置前端控制器 --> <servlet><servlet-name>dispatcherServlet</servlet-name><servlet-class>…

算法11(力扣496)-下一个更大元素I

1、问题 nums1 中数字 x 的 下一个更大元素 是指 x 在 nums2 中对应位置 右侧 的 第一个 比 x 大的元素。 给你两个 没有重复元素 的数组 nums1 和 nums2 &#xff0c;下标从 0 开始计数&#xff0c;其中nums1 是 nums2 的子集。 对于每个 0 < i < nums1.length &#xf…

2024年博客之星主题创作|2024年蓝桥杯与数学建模年度总结与心得

引言 2024年&#xff0c;我在蓝桥杯编程竞赛和数学建模竞赛中投入了大量时间和精力&#xff0c;这两项活动不仅加深了我对算法、数据结构、数学建模方法的理解&#xff0c;还提升了我的解决实际问题的能力。从蓝桥杯的算法挑战到数学建模的复杂应用&#xff0c;我在这些竞赛中…

Spring FatJar写文件到RCE分析

背景 现在生产环境部署 spring boot 项目一般都是将其打包成一个 FatJar&#xff0c;即把所有依赖的第三方 jar 也打包进自身的 app.jar 中&#xff0c;最后以 java -jar app.jar 形式来运行整个项目。 运行时项目的 classpath 包括 app.jar 中的 BOOT-INF/classes 目录和 BO…

初阶数据结构:链表(二)

目录 一、前言 二、带头双向循环链表 1.带头双向循环链表的结构 &#xff08;1)什么是带头&#xff1f; (2)什么是双向呢&#xff1f; &#xff08;3&#xff09;那什么是循环呢&#xff1f; 2.带头双向循环链表的实现 &#xff08;1&#xff09;节点结构 &#xff08;2…

Java Web-Request与Response

在 Java Web 开发中&#xff0c;Request 和 Response 是两个非常重要的对象&#xff0c;用于在客户端和服务器之间进行请求和响应的处理&#xff0c;以下是详细介绍&#xff1a; Request&#xff08;请求对象&#xff09; Request继承体系 在 Java Web 开发中&#xff0c;通…

mysql 学习2 MYSQL数据模型,mysql内部可以创建多个数据库,一个数据库中有多个表;表是真正放数据的地方,关系型数据库 。

在第一章中安装 &#xff0c;启动mysql80 服务后&#xff0c;连接上了mysql&#xff0c;那么就要 使用 SQL语句来 操作mysql数据库了。那么在学习 SQL语言操作 mysql 数据库 之前&#xff0c;要对于 mysql数据模型有一个了解。 MYSQL数据模型 在下图中 客户端 将 SQL语言&…

微信小程序date picker的一些说明

微信小程序的picker是一个功能强大的组件&#xff0c;它可以是一个普通选择器&#xff0c;也可以是多项选择器&#xff0c;也可以是时间、日期、省市区选择器。 官方文档在这里 这里讲一下date picker的用法。 <view class"section"><view class"se…

【学习笔记】计算机网络(二)

第2章 物理层 文章目录 第2章 物理层2.1物理层的基本概念2.2 数据通信的基础知识2.2.1 数据通信系统的模型2.2.2 有关信道的几个基本概念2.2.3 信道的极限容量 2.3物理层下面的传输媒体2.3.1 导引型传输媒体2.3.2 非导引型传输媒体 2.4 信道复用技术2.4.1 频分复用、时分复用和…

总结8..

#include <stdio.h> // 定义结构体表示二叉树节点&#xff0c;包含左右子节点编号 struct node { int l; int r; } tree[100000]; // 全局变量记录二叉树最大深度&#xff0c;初始为0 int ans 0; // 深度优先搜索函数 // pos: 当前节点在数组中的位置&#xff0c…

多智能体中的理论与传统智能体理论有何异同?

多智能体系统与传统单智能体理论在多个方面存在异同&#xff0c;多智能体系统在理论上扩展了单智能体系统的研究范畴&#xff0c;强调智能体之间的交互和协作。随着人工智能、人机智能、人机环境系统智能的发展&#xff0c;多智能体系统在机器人群体、分布式计算、资源管理等领…