配置BGP与IGP交互和路由自动聚合示例
组网需求
如图所示,用户将网络划分为AS65008和AS65009,在AS65009内,使用IGP协议来计算路由(该例使用OSPF做为IGP协议)。要求实现两个AS之间的互相通信。

配置思路
采用如下的思路配置BGP与IGP交互:
- 在AR2、AR3和AR4上配置OSPF协议,使AR2、AR3和AR4之间可以互访。
- 在AR1和AR2上配置EBGP连接,使AR1和AR2之间可以通过BGP相互传递路由。
- 在AR2上配置BGP与OSPF互相引入,实现两个AS之间的互相通信。
- 在AR2上配置BGP路由聚合,可以简化BGP路由表规模。
操作步骤
配置IP
AR1
<Huawei>sys
[Huawei]sys AR1[AR1]int g0/0/0
[AR1-GigabitEthernet0/0/0]ip add 12.12.12.1 24
[AR1-GigabitEthernet0/0/0]q[AR1]int lo1
[AR1-LoopBack1]ip add 1.1.1.1 24
[AR1-LoopBack1]q
AR2
<Huawei>sys
[Huawei]sys AR2[AR2]int g0/0/0
[AR2-GigabitEthernet0/0/0]ip add 12.12.12.2 24
[AR2-GigabitEthernet0/0/0]q[AR2]int g0/0/1
[AR2-GigabitEthernet0/0/1]ip add 10.10.23.2 24
[AR2-GigabitEthernet0/0/1]q
AR3
<Huawei>sys
[Huawei]sys AR3[AR3]int g0/0/0
[AR3-GigabitEthernet0/0/0]ip add 10.10.23.3 24
[AR3-GigabitEthernet0/0/0]q[AR3]int g0/0/1
[AR3-GigabitEthernet0/0/1]ip add 10.10.34.3 24
[AR3-GigabitEthernet0/0/1]q
[AR3]
AR4
<Huawei>sys
[Huawei]sys AR4[AR4]int g0/0/0
[AR4-GigabitEthernet0/0/0]ip add 10.10.34.4 24
[AR4-GigabitEthernet0/0/0]q
配置OSPF
AR2
[AR2]ospf
[AR2-ospf-1]area 0
[AR2-ospf-1-area-0.0.0.0]network 10.10.23.0 0.0.0.255
[AR2-ospf-1-area-0.0.0.0]q
AR3
[AR3]ospf
[AR3-ospf-1]area 0
[AR3-ospf-1-area-0.0.0.0]network 10.10.23.0 0.0.0.255
[AR3-ospf-1-area-0.0.0.0]network 10.10.34.0 0.0.0.255
[AR3-ospf-1-area-0.0.0.0]q
AR4
[AR4]ospf
[AR4-ospf-1]area 0
[AR4-ospf-1-area-0.0.0.0]network 10.10.34.0 0.0.0.255
[AR4-ospf-1-area-0.0.0.0]q
在AR4上查看OSPF路由表
[AR4-ospf-1]display ospf routingOSPF Process 1 with Router ID 10.10.34.4Routing Tables Routing for Network Destination Cost Type NextHop AdvRouter Area10.10.34.0/24 1 Transit 10.10.34.4 10.10.34.4 0.0.0.010.10.23.0/24 2 Transit 10.10.34.3 12.12.12.2 0.0.0.0Total Nets: 2 Intra Area: 2 Inter Area: 0 ASE: 0 NSSA: 0
配置BGP
AR1
[AR1]bgp 65008
[AR1-bgp]router-id 1.1.1.1
[AR1-bgp] peer 12.12.12.2 as-number 65009# 单播发布路由
[AR1-bgp] ipv4-family unicast
[AR1-bgp-af-ipv4]network 1.1.1.0 255.255.255.0
AR2
[AR2]bgp 65008
[AR2-bgp]router-id 2.2.2.2
[AR2-bgp] peer 12.12.12.1 as-number 65009
在AR2上查看BGP路由表
[AR2-bgp]display 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 - StaleOrigin : i - IGP, e - EGP, ? - incompleteTotal Number of Routes: 1Network NextHop MED LocPrf PrefVal Path/Ogn*> 1.1.1.0/24 12.12.12.1 0 0 65008i
[AR2-bgp]
配置路由引入
BGP路由引入到OSPF
AR2
[AR2]ospf
[AR2-ospf-1]import-route bgp
[AR2-ospf-1]q
再次在AR4上查看OSPF路由表
<AR4>display ospf routing OSPF Process 1 with Router ID 10.10.34.4Routing Tables Routing for Network Destination Cost Type NextHop AdvRouter Area10.10.34.0/24 1 Transit 10.10.34.4 10.10.34.4 0.0.0.010.10.23.0/24 2 Transit 10.10.34.3 12.12.12.2 0.0.0.0Routing for ASEsDestination Cost Type Tag NextHop AdvRouter1.1.1.0/24 1 Type2 1 10.10.34.3 12.12.12.2Total Nets: 3 Intra Area: 2 Inter Area: 0 ASE: 1 NSSA: 0 <AR4>
OSPF路由引入到BGP
AR2
[AR2]bgp 65009
[AR2-bgp]ipv4-family unicast
[AR2-bgp-af-ipv4]import-route ospf 1
[AR2-bgp-af-ipv4]q
再次在AR1上查看BGP路由表
<AR1>display bgp routing-table BGP Local router ID is 12.12.12.1 Status codes: * - valid, > - best, d - damped,h - history, i - internal, s - suppressed, S - StaleOrigin : i - IGP, e - EGP, ? - incompleteTotal Number of Routes: 3Network NextHop MED LocPrf PrefVal Path/Ogn*> 1.1.1.0/24 0.0.0.0 0 0 i*> 10.10.23.0/24 12.12.12.2 0 0 65009?*> 10.10.34.0/24 12.12.12.2 2 0 65009?
验证AS之间互通
AR4 ping AR1的LoopBack1
<AR4>ping 1.1.1.1PING 1.1.1.1: 56 data bytes, press CTRL_C to breakReply from 1.1.1.1: bytes=56 Sequence=1 ttl=253 time=60 msReply from 1.1.1.1: bytes=56 Sequence=2 ttl=253 time=30 msReply from 1.1.1.1: bytes=56 Sequence=3 ttl=253 time=40 msReply from 1.1.1.1: bytes=56 Sequence=4 ttl=253 time=40 msReply from 1.1.1.1: bytes=56 Sequence=5 ttl=253 time=40 ms--- 1.1.1.1 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 30/42/60 ms
#能ping即AS之间已互通
配置自动路由聚合
AR2
[AR2]bgp 65009
[AR2-bgp]ipv4-family unicast
[AR2-bgp-af-ipv4]summary automatic
AR1上查看路由表
<AR1>display bgp routing-table BGP Local router ID is 12.12.12.1 Status codes: * - valid, > - best, d - damped,h - history, i - internal, s - suppressed, S - StaleOrigin : i - IGP, e - EGP, ? - incompleteTotal Number of Routes: 2Network NextHop MED LocPrf PrefVal Path/Ogn*> 1.1.1.0/24 0.0.0.0 0 0 i*> 10.0.0.0 12.12.12.2 0 65009?
<AR1>
聚合后再次验证互通
在AR1使用LoopBack1 ping AR4
<AR1>ping -a 1.1.1.1 10.10.34.4PING 10.10.34.4: 56 data bytes, press CTRL_C to breakReply from 10.10.34.4: bytes=56 Sequence=1 ttl=253 time=30 msReply from 10.10.34.4: bytes=56 Sequence=2 ttl=253 time=50 msReply from 10.10.34.4: bytes=56 Sequence=3 ttl=253 time=40 msReply from 10.10.34.4: bytes=56 Sequence=4 ttl=253 time=10 msReply from 10.10.34.4: bytes=56 Sequence=5 ttl=253 time=40 ms--- 10.10.34.4 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 10/34/50 ms<AR1>
相关文章:
配置BGP与IGP交互和路由自动聚合示例
组网需求 如图所示,用户将网络划分为AS65008和AS65009,在AS65009内,使用IGP协议来计算路由(该例使用OSPF做为IGP协议)。要求实现两个AS之间的互相通信。 配置思路 采用如下的思路配置BGP与IGP交互: 在AR…...
代码随想录算法训练营第三十三天 | 62.不同路径 63.不同路径
LeetCode 62.不同路径: 文章链接 题目链接:62.不同路径 思路: 动态规划 使用二维数组保存递推结果 ① dp数组及下标含义 dp[i][j]:表明从(0, 0)到下标为(i, j)的点有多少条不同的路径 ② 递推式: 机器人只能向下或向…...
使用Flask构建RESTful API
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 使用Flask构建RESTful API Flask简介 环境搭建 安装Flask 项目结构 创建应用 路由定义 请求处理 获取查询参数 获取请求体 响应…...
基于springboot的Java学习论坛平台
基于springboot的Java学习论坛平台 摘 要 在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括学习平台的网络应用,在外国学习平台已经是很普遍的方式,不过国内的管理平台可能还处于起步阶段。学习平台具…...
Python离线环境搭建
引言 在软件开发过程中,我们常常会遇到内网环境无法直接访问外网的情况,这就需要我们通过一些特殊手段来搭建Python开发环境。本文将详细介绍如何利用U盘在内网机与外网机之间迁移Python环境及其依赖包。 工具准备 1台内网机1台外网机1个U盘 操作步骤…...
windows下kafka使用出现的问题
kafka启动 启动kafka需要先启动zookeeper,在kafka根目录下先启动zookeeper .\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties启动kafka 另开一个cmd命令行 .\bin\windows\kafka-server-start.bat .\config\server.propertieskafka与jdk版…...
ctfshow文件包含web78~81
目录 web78 方法一:filter伪协议 方法二:input协议 方法三:data协议 web79 方法一:input协议 方法二:data协议 web80 方法一:input协议 方法二:日志包含getshell web81 web78 if(isset($_GET[file]…...
鸿蒙生态认识
好的,让我们更深入地探讨鸿蒙生态的发展机遇、面临的挑战,以及未来的潜力。 对鸿蒙生态的认知与分析 鸿蒙系统作为一种新兴的操作系统,旨在打破设备之间的壁垒,打造一个更加连通的生态环境。以下是对其崛起的进一步分析…...
Hadoop-004-Big Data Tools插件的使用
一、Big Data Tools插件配置流程 1、安装Big Data Tools插件 以IntelliJ IDEA 2024.2.3为例打开setting, 搜索安装Big Data Tools插件后重启IDEA 2、Windows系统基础配置 Windows系统需要做一些基础设置,配合插件使用,将之前下载的hadoop-3.2.4.tar.gz 解压到D…...
linux8在线扩容/home目录
虚机新增1T磁盘 [rootrsb ~]# cat /etc/redhat-release Red Hat Enterprise Linux release 8.8 (Ootpa) [rootrsb ~]# vgs VG #PV #LV #SN Attr VSize VFree ol 2 3 0 wz--n- <2.00t 0 [rootrsb ~]# lvs LV VG Attr LSize Pool Origin Dat…...
【C/C++】模拟实现strcpy
学习目标: 使用代码模拟实现strcpy。 逻辑: strcpy 函数的返回类型是 void 即不返回数据。strcpy 函数的参数类型是 char* ,用于接收数组。strcpy 函数要把一个数组复制到另一个数组。 代码: #define _CRT_SECURE_NO_WARNINGS …...
网络编程番外——IO多路复用的应用说明
一、IO多路复用与多线程 IO多路复用,IO Multiplexing,其实就是在IO上进行监听处理导致线程被阻塞(如果非阻塞就必须不断的轮询,仍然是占用此线程),如果一个IO对应一个线程是不是太浪费了。而且在诸如网络I…...
【Java爬虫的淘宝寻宝记】—— 淘宝商品类目的“藏宝图”
引言: 在淘宝这个广袤的“商品宇宙”中,每一件商品都是一颗璀璨的星球,而商品类目就是连接这些星球的星际航道。今天,我们将派遣一位勇敢的Java爬虫宇航员,去揭开这些星际航道背后的秘密——商品类目。准备好了吗&…...
探索Python文档自动化的奥秘:揭开docxtpl库的神秘面纱
文章目录 探索Python文档自动化的奥秘:揭开docxtpl库的神秘面纱1. 背景介绍2. 库简介3. 安装指南4. 基础函数介绍5. 实际应用场景6. 常见问题及解决方案7. 总结 探索Python文档自动化的奥秘:揭开docxtpl库的神秘面纱 1. 背景介绍 在日常工作中…...
RabbitMQ的解耦、异步、削峰是什么?
RabbitMQ在分布式系统和微服务架构中起到了重要的作用,其特性可以实现解耦、异步以及削峰,下面是对这三个概念的详细解释: 1. 解耦 解耦是指使系统的不同组件间的依赖关系减少或消失。在使用RabbitMQ时,生产者(发送消…...
4:arm汇编语言4:bits/byte的介绍(ASCII码)与二进制补位
4.2 bits/byte的介绍与ASCII码的引入 这个是详细介绍计算机内部原理的基础,bits与byte其实这两个是计算机中非常重要的单位。首先看一下bits,它是一个基础的计算机单位。计算机单位?像长度单位是米,体重的单位是kg,你…...
C++实现仿安卓线程Handler、Message、Looper的功能
在java开发中,习惯使用Handler、Message来处理同步,比如对相机的操作(open、setParamters、start、stop、clost)全部抛到同一个线程处理,防止并发操作导致异常,这样保留给外部的统一接口就是安全的,无论外部哪些线程来…...
构建安全的用户登录API:从请求验证到JWT令牌生成
构建安全的用户登录API:从请求验证到JWT令牌生成 为了实现这个后端POST /api/users/login端点,我们可以使用Node.js和Express框架,并结合一些常用的库如jsonwebtoken、bcrypt和express-validator来处理验证和密码校验。下面是一个完整的示例…...
状态模式:封装对象状态并改变行为的设计模式
1. 引言 在软件开发中,某些对象的行为会随着其内部状态的变化而变化。传统的实现方式可能需要使用大量的条件语句,导致代码复杂且难以维护。状态模式(State Pattern)提供了一种有效的方法,通过将状态行为封装在状态类…...
备战“双11”丨AI+物流:你的快递会有什么变化?
背景 在中国,每天有数以亿计的包裹在运输,尤其在电商促销季如“双十一”、“618”期间,快递量更是激增。快递物流行业面临人员短缺、配送效率低下和物流承载能力有限等问题。快瞳科技提供的AI识别解决方案通过智能化手段提高工作效率和配送准…...
【Python】 -- 趣味代码 - 小恐龙游戏
文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
前端导出带有合并单元格的列表
// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
ios苹果系统,js 滑动屏幕、锚定无效
现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...
排序算法总结(C++)
目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...
MySQL 索引底层结构揭秘:B-Tree 与 B+Tree 的区别与应用
文章目录 一、背景知识:什么是 B-Tree 和 BTree? B-Tree(平衡多路查找树) BTree(B-Tree 的变种) 二、结构对比:一张图看懂 三、为什么 MySQL InnoDB 选择 BTree? 1. 范围查询更快 2…...
WebRTC从入门到实践 - 零基础教程
WebRTC从入门到实践 - 零基础教程 目录 WebRTC简介 基础概念 工作原理 开发环境搭建 基础实践 三个实战案例 常见问题解答 1. WebRTC简介 1.1 什么是WebRTC? WebRTC(Web Real-Time Communication)是一个支持网页浏览器进行实时语音…...
【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error
在前端开发中,JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作(如 Promise、async/await 等),开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝(r…...
在 Visual Studio Code 中使用驭码 CodeRider 提升开发效率:以冒泡排序为例
目录 前言1 插件安装与配置1.1 安装驭码 CodeRider1.2 初始配置建议 2 示例代码:冒泡排序3 驭码 CodeRider 功能详解3.1 功能概览3.2 代码解释功能3.3 自动注释生成3.4 逻辑修改功能3.5 单元测试自动生成3.6 代码优化建议 4 驭码的实际应用建议5 常见问题与解决建议…...
