当前位置: 首页 > article >正文

BGP综合实验(2)

一、实验需求

1、实验拓扑图

2、实验需求

  1. 使用 PreVal 策略,让 R4 经 R2 到达 192.168.10.0/24 。

  2. 使用 AS_Path 策略,让 R4 经 R3 到达 192.168.11.0/24 。

  3. 配置 MED 策略,让 R4 经 R3 到达 192.168.12.0/24 。

  4. 使用 Local Preference 策略,让 R1 经 R2 到达 192.168.1.0/24 。

  5. 使用 Local Preference 策略,让 R1 经 R3 到达 192.168.2.0/24 。

  6. 配置负载均衡,使 R1 经 R2 和 R3 到达 192.168.3.0/24 。

  7. 使用 AS 策略,使 AS 500 不接受任何始于 AS 123 的路由 。

  8. 使用自定义 Community 策略,使 192.168.3.0/24 路由不发布到 AS 500 。

  9. IBGP 用环回接口建邻,EBGP 用物理接口建邻 。

  10. 修改 AS 123 中的用户网段为 Broadcast,以便后续在 BGP 中宣告 。

  11. BGP 宣告路由时,仅宣告 / 24 网段的用户路由 。

 

二、需求分析 

  • 路由策略配置:涉及多种 BGP 路由策略,如 PreVal、AS_Path、MED、Local Preference 等,目的是精确控制不同路由器间的路由走向,需熟悉各策略原理及配置方法。

  • 建邻方式:区分 IBGP 和 EBGP 建邻接口类型,要掌握不同建邻方式的配置要点和适用场景。

  • 路由宣告控制:对特定网段路由进行发布控制,包括用户网段设置和按网段掩码宣告,需明确 BGP 路由宣告规则及过滤方法。

三、实验步骤 

1、基础配置

R1

[r1]display ip interface brief 
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              12.0.0.1/24          up         up        
GigabitEthernet0/0/1              13.0.0.1/24          up         up        
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         192.168.1.1/24       up         up(s)     
LoopBack1                         192.168.2.1/24       up         up(s)     
LoopBack2                         192.168.3.1/24       up         up(s)     
NULL0                             unassigned           up         up(s)     
[r1]

R2

[r2]display ip interface b 
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              12.0.0.2/24          up         up        
GigabitEthernet0/0/1              24.0.0.2/24          up         up        
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         2.2.2.2/32           up         up(s)     
LoopBack1                         192.168.20.1/24      up         up(s)     
NULL0                             unassigned           up         up(s)     
[r2]

R3

[r3]display  ip interface brief 
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              13.0.0.3/24          up         up        
GigabitEthernet0/0/1              34.0.0.3/24          up         up        
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         3.3.3.3/32           up         up(s)     
LoopBack1                         192.168.30.1/24      up         up(s)     
NULL0                             unassigned           up         up(s)     
[r3]

R4

[r4]display  ip interface brief 
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              34.0.0.4/24          up         up        
GigabitEthernet0/0/1              24.0.0.4/24          up         up        
GigabitEthernet0/0/2              45.0.0.4/24          up         up        
LoopBack0                         1.1.1.1/32           up         up(s)     
LoopBack1                         192.168.100.1/24     up         up(s)     
NULL0                             unassigned           up         up(s)     
[r4]

R5

[r5]display  ip interface brief 
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              45.0.0.5/24          up         up        
GigabitEthernet0/0/1              unassigned           down       down      
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         192.168.10.1/24      up         up(s)     
LoopBack1                         192.168.11.1/24      up         up(s)     
LoopBack2                         192.168.12.1/24      up         up(s)     
NULL0                             unassigned           up         up(s)     
[r5]

2、ospf的配置

R2


[r2]ospf 1 router-id 2.2.2.2
[r2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[r2-ospf-1-area-0.0.0.0]network 24.0.0.2 0.0.0.0

R3


[r3]ospf 1 router-id 3.3.3.3 
[r3-ospf-1-area-0.0.0.0]network 3.3.3.3 0.0.0.0
[r3-ospf-1-area-0.0.0.0]network 34.0.0.3 0.0.0.0

R4

[r4]ospf 1 router-id 4.4.4.4 	
[r4-ospf-1-area-0.0.0.0]network 4.4.4.4 0.0.0.0
[r4-ospf-1-area-0.0.0.0]network 24.0.0.4 0.0.0.0

3、配置bgp

R1

[r1]bgp 400
[r1-bgp]router-id 4.4.4.4	
[r1-bgp]peer 12.0.0.2 as-number 123	
[r1-bgp]peer 13.0.0.3 as-number 123

R2

[r2]bgp 123
[r2-bgp]router-id 2.2.2.2 
[r2-bgp]peer 12.0.0.1 as-number 400[r2-bgp]peer 4.4.4.4 as-number 123	
[r2-bgp]peer 4.4.4.4 connect-interface LoopBack 0
[r2-bgp]peer  4.4.4.4 next-hop-local

R3

[r3]bgp 123
[r3-bgp]peer 13.0.0.1 as-number 400[r3-bgp]peer 4.4.4.4 as-number 123	
[r3-bgp]peer 4.4.4.4 connect-interface LoopBack 0
[r3-bgp]peer 4.4.4.4 next-hop-local 

R4

[r4]bgp 123
[r4-bgp]peer 2.2.2.2 as-number 123
[r4-bgp]peer 2.2.2.2 connect-interface LoopBack 0
[r4-bgp]peer 2.2.2.2 next-hop-local
[r4-bgp]peer 3.3.3.3 as-number 123
[r4-bgp]peer 3.3.3.3 connect-interface LoopBack 0
[r4-bgp]peer 3.3.3.3 next-hop-local
[r4-bgp]peer 45.0.0.5 as-number 500

R5

[r5]bgp 500
[r5-bgp]peer 45.0.0.4 as-number 123

4、用户网段修改与路由宣告

  • 将 AS 123 中的用户网段修改为 Broadcast 类型。
  • 在各 BGP 路由器上配置宣告规则,仅宣告 / 24 网段的用户路由。
[r1-bgp]network 192.168.1.0 24
[r1-bgp]network 192.168.2.0 24
[r1-bgp]network 192.168.3.0 24[r2-bgp]network 192.168.20.0 24[r3-bgp]network 192.168.30.0 24[r4-bgp]network  192.168.100.0 24[r5-bgp]network 192.168.10.0 24
[r5-bgp]network 192.168.11.0 24
[r5-bgp]network 192.168.12.0 24

 5、用户网段修改与宣告

  • 将 AS 123 中的用户网段修改为 Broadcast 类型。
  • 在各 BGP 路由器上配置宣告规则,仅宣告 / 24 网段的用户路由。
    [r1]ip ip-prefix PV permit 192.168.10.0 24
    [r1]route-policy PV permit node 10	
    [r1-route-policy]if-match ip-prefix PV	
    [r1-route-policy]apply preferred-value 100
    [r1]route-policy PV permit node 20
    [r1-bgp]peer 12.0.0.2 route-policy PV import 
    [r2]ip ip-prefix AS index 10 permit 192.168.11.0 24
    [r2]route-policy AS permit node 10
    [r2-route-policy]if-match ip-prefix AS	
    [r2-route-policy]apply as-path 60 additive
    [r2]route-policy AS permit node 20
    [r2-bgp]PEER 12.0.0.1 route-policy AS export 

    后面全报错

相关文章:

BGP综合实验(2)

一、实验需求 1、实验拓扑图 2、实验需求 使用 PreVal 策略,让 R4 经 R2 到达 192.168.10.0/24 。 使用 AS_Path 策略,让 R4 经 R3 到达 192.168.11.0/24 。 配置 MED 策略,让 R4 经 R3 到达 192.168.12.0/24 。 使用 Local Preference 策…...

java实现poi-ooxml导出Excel的功能

文章目录 1. 添加poi-ooxml依赖2. Excel导出工具类3.核心逻辑说明4.扩展建议5.HSSF、XSSF、SXSSF 的核心原则和场景建议,帮助你在不同需求下快速决策: 以下是一个基于 Apache POI 实现的简单、通用的Java导出Excel工具类,代码逻辑清晰且注释详…...

代码随想录算法训练营 Day51 图论Ⅱ岛屿问题Ⅰ

图论 题目 99. 岛屿数量 使用 DFS 实现方法 判断岛屿方法 1. 遍历图,若遍历到了陆地 grid[i][j] 1 并且陆地没有被访问,在这个陆地的基础上进行 DFS 方法,或者是 BFS 方法 2. 对陆地进行 DFS 的时候时刻注意以访问的元素添加访问标记 //…...

【占融数科-注册/登录安全分析报告】

前言 由于网站注册入口容易被黑客攻击,存在如下安全问题: 暴力破解密码,造成用户信息泄露短信盗刷的安全问题,影响业务及导致用户投诉带来经济损失,尤其是后付费客户,风险巨大,造成亏损无底洞…...

【CF】Day62——Codeforces Round 948 (Div. 2) CD (思维 + LCM + 枚举因数 | 思维 + 哈希)

C. Nikita and LCM 题目: 思路: 非常好的思维题,顺便复习了一下快速枚举因数和lcm的性质 我们先来看答案的上界,即全选,此时说明 lcm(a1,a2,a3,...) > a_max 其中 a_max 为 a 中最大的数,那么如果答案不…...

基于requests_html的python爬虫

前言:今天介绍一个相对性能更高的爬虫库requests_html,会不会感觉和requests有点联系?是的。为什么开始不直接介绍呢?因为我觉得requests是最基本入门的东西,并且在学习过程中也能学到很多东西。我的python老师在介绍这…...

循环神经网络:捕捉序列数据中的时间信息

目录 循环神经网络:捕捉序列数据中的时间信息 一、循环神经网络的基本概念 (一)RNN 的基本结构 (二)RNN 的工作原理 (三)RNN 的优势 (四)RNN 的局限性 二、循环神…...

第35周Zookkeeper+Dubbo 面试题精讲

面试题精讲 一、算法面试答题思路 理解思路的重要性:算法面试比基础面试更复杂,需先想清楚思路,与面试官沟通确认题目条件(如数据范围、是否包含负数/零等),这有助于理清解题思路并展示技术实力。变量命名清晰:算法中变量命名要明确含义和范围,避免使用模糊的变量名,…...

聊聊更新中断和更新事件那些事儿

最近在研究一些系统和设备的更新机制,发现更新中断和更新事件这两个概念很有意思,也容易让人混淆,今天就来和大家好好探讨一下。 一、更新事件 (一)定义与原理 更新事件,简单来说,是当出现某…...

STM32:按键模块 传感器模块 以及 相关C语言知识(详细讲解)

目录 按键 传感器模块 C语言知识 C语言数据类型 C语言宏定义 C语言typedef C语言结构体 C语言枚举 按键 常见的输入设备,按下导通,松手断开 按键抖动:由于按键内部使用的是机械式弹簧片来进行通断的,所以在按下和松手的瞬…...

C++23 std::mdspan:多维数组处理新利器

文章目录 引言C23简介std::mdspan的定义与特点定义特点 std::mdspan的优势零成本抽象的多维数据访问减少内存开销提高代码灵活性 std::mdspan的应用场景科学计算图形学 相关提案示例代码使用动态扩展使用静态和动态扩展 总结 引言 在C的发展历程中,每一个新版本都带…...

基于高德MCP2.0的智能旅游攻略系统设计与实现

前言:旅游规划的技术革命 在数字化旅游时代,MCP2.0(Map-based Collaborative Planning)系统代表着旅游攻略技术的最新演进。作为对1.0版本的全面升级,MCP2.0通过深度整合高德地图API和智能算法,实现了从静…...

【时时三省】(C语言基础)用函数实现模块化程序设计

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 为什么要用函数? 已经能够编写一些简单的C程序,但是如果程序的功能比较多,规模比较大,把所有的程序代码都写在一个主函数(main函数)中&#x…...

Flink流处理:实时计算URL访问量TopN(基于时间窗口)

目录 代码分析 背景知识拓展 代码调优 1. 性能优化 1.1 使用 KeyedStream 和 ProcessWindowFunction 替代 windowAll 1.2 使用 ReduceFunction 优化聚合 2. 功能扩展 2.1 支持动态窗口大小 2.2 支持多维度统计 2.3 支持持久化存储 3. 代码可读性 3.1 提取公共逻辑 …...

初识函数------了解函数的定义、函数的参数、函数的返回值、说明文档的书写、函数的嵌套使用、变量的作用域(全局变量与局部变量)

文章目录 一、什么是函数?二、函数定义与调用2.1 基本语法2.2 示例演示 三、函数参数详解3.1 位置参数3.2 默认参数3.3 可变参数3.4 关键字参数 四、返回值与文档说明4.1 返回多个值4.2 编写文档字符串 五、函数嵌套与作用域5.1 嵌套函数示例5.2 变量作用域5.3 glob…...

java collection集合特点知识点详解

在 Java 中,Collection 是所有集合类的根接口,它定义了一组对象的基本操作。Java 集合框架提供了丰富的实现类(如List、Set、Queue),具有以下核心特点: 一、统一的接口设计 1. 核心接口层次 Collection …...

ngx_http_realip_module 模块概述

一、使用场景 日志记录 记录真实客户端 IP 而非反向代理的 IP,有助于流量分析和安全审计。访问控制 基于真实 IP 实现防火墙规则(allow/deny)或限流,而非误将上游 IP 视为客户端。GeoIP、WAF、限速等功能 模块化的上游真实 IP 支…...

自定义CString类与MFC CString类接口对比

接口对比表格 功能分类 你的 CString 接口 MFC CString 接口(ANSI) 一致性 差异说明 构造函数 CString() CString(const char*) CString(char) CString(const CString&) CString() CString(LPCSTR) CString(TCHAR) CString(const CString&…...

华为OD机试真题——考勤信息(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现

2025 A卷 100分 题型 本专栏内全部题目均提供Java、python、JavaScript、C、C++、GO六种语言的最佳实现方式; 并且每种语言均涵盖详细的问题分析、解题思路、代码实现、代码详解、3个测试用例以及综合分析; 本文收录于专栏:《2025华为OD真题目录+全流程解析+备考攻略+经验分…...

Go语言测试用例的执行与分析

在软件开发过程中,测试用例是确保代码质量的关键环节。Go语言作为一种现代的编程语言,它内置了强大的测试框架,可以帮助开发者轻松编写和执行测试用例。本文将介绍如何在 Go 语言中编写、执行测试用例,并对测试结果进行分析。 ## …...

vue3 vite 路由

如路由是这种格式 http://localhost:7058/admin/product/brand路由配置如下 import { createRouter, createWebHistory } from vue-router import HomeView from ../views/HomeView.vue import NProgress from nprogress; import nprogress/nprogress.css; import {errorRour…...

MyBatis:动态SQL

文章目录 动态SQLif标签trim标签where标签set标签foreach标签include标签和sql标签 Mybatis动态SQL的官方文档: https://mybatis.net.cn/dynamic-sql.html 动态SQL 动态SQL是 MyBatis的强大特性之一,如果是使用JDBC根据不同条件拼接sql很麻烦,例如拼接…...

游戏引擎学习第280天:精简化的流式实体sim

回顾并为今天的内容做铺垫 今天的任务是让之前关于实体存储方式的改动真正运行起来。我们现在希望让实体系统变得更加真实和实用,能够支撑我们游戏实际所需的功能。这就要求我们对它进行更合理的实现和调试。 昨天我们基本让代码编译通过了,但实际上还…...

femap许可与多用户共享

随着电磁仿真技术的发展,Femap作为一款领先的工具,在多个领域中发挥着不可替代的作用。然而,对于许多团队和企业来说,如何高效、经济地管理和使用Femap许可证成为了一个亟待解决的问题。本文将探讨Femap许可与多用户共享的概念、优…...

王树森推荐系统公开课 排序03:预估分数融合

融合预估分数 p c l i c k ⋅ p l i k e p_{click} \cdot p_{like} pclick​⋅plike​ 有实际意义,等于在曝光中点赞的概率。 p c l i c k ⋅ p c o l l e c t p_{click} \cdot p_{collect} pclick​⋅pcollect​ 同理。 按多种排名做 ensemble sort。 某电商的融…...

网络I/O学习-poll(三)

一、为什么要用Poll 由于select参数太多,较于复杂,调用起来较为麻烦;poll对其进行了优化 二、poll机制 poll也是一个系统调用,每次调用都会将所有客户端的fd拷贝到内核空间,然后进行轮询,判断IO是否就绪…...

k8s(12) — 版本控制和滚动更新(金丝雀部署理念)

金丝雀部署简介: 1、基本概念 金丝雀部署是一种软件开发中的渐进式发布策略,其核心思想是通过将新版本应用逐步发布给一小部分用户(即 “金丝雀” 用户),在真实环境中验证功能稳定性和性能表现,再逐步扩大发…...

【git config --global alias | Git分支操作效率提升实践指南】

git config --global alias | Git分支操作效率提升实践指南 背景与痛点分析 在现代软件开发团队中,Git分支管理是日常工作的重要组成部分。特别是在规范的开发流程中,我们经常会遇到类似 feature/user-management、bugfix/login-issue 或 per/cny/dev …...

chrome源码中WeakPtr 跨线程使用详解:原理、风险与最佳实践

base::WeakPtr 在 Chromium 中 不能安全地跨线程使用。这是一个很关键的点,下面详细解释原因及正确用法。 🔍原理与使用 ✅ 先说答案: base::WeakPtr 本质上是**线程绑定(thread-affine)**的。不能在多个线程之间创建…...

【Go】从0开始学习Go

文章目录 从0开始学习Go0 与C对比1 代码框架1.1 helloworld式代码示例1.2 主体代码元素(核心三部分)1.3 其他 2 与C/C区别3 有用的小工具4 注意事项 从0开始学习Go 0 与C对比 特性CGo编译型语言需要编译为机器码直接编译为二进制可执行文件静态类型类型…...