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

配置BGP与IGP交互和路由自动聚合示例

组网需求

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

配置思路

采用如下的思路配置BGP与IGP交互:

  1. 在AR2、AR3和AR4上配置OSPF协议,使AR2、AR3和AR4之间可以互访。
  2. 在AR1和AR2上配置EBGP连接,使AR1和AR2之间可以通过BGP相互传递路由。
  3. 在AR2上配置BGP与OSPF互相引入,实现两个AS之间的互相通信。
  4. 在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交互和路由自动聚合示例

组网需求 如图所示&#xff0c;用户将网络划分为AS65008和AS65009&#xff0c;在AS65009内&#xff0c;使用IGP协议来计算路由&#xff08;该例使用OSPF做为IGP协议&#xff09;。要求实现两个AS之间的互相通信。 配置思路 采用如下的思路配置BGP与IGP交互&#xff1a; 在AR…...

代码随想录算法训练营第三十三天 | 62.不同路径 63.不同路径

LeetCode 62.不同路径&#xff1a; 文章链接 题目链接&#xff1a;62.不同路径 思路&#xff1a; 动态规划 使用二维数组保存递推结果 ① dp数组及下标含义 dp[i][j]&#xff1a;表明从(0, 0)到下标为(i, j)的点有多少条不同的路径 ② 递推式&#xff1a; 机器人只能向下或向…...

使用Flask构建RESTful API

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 使用Flask构建RESTful API Flask简介 环境搭建 安装Flask 项目结构 创建应用 路由定义 请求处理 获取查询参数 获取请求体 响应…...

基于springboot的Java学习论坛平台

基于springboot的Java学习论坛平台 摘 要 在Internet高速发展的今天&#xff0c;我们生活的各个领域都涉及到计算机的应用&#xff0c;其中包括学习平台的网络应用&#xff0c;在外国学习平台已经是很普遍的方式&#xff0c;不过国内的管理平台可能还处于起步阶段。学习平台具…...

Python离线环境搭建

引言 在软件开发过程中&#xff0c;我们常常会遇到内网环境无法直接访问外网的情况&#xff0c;这就需要我们通过一些特殊手段来搭建Python开发环境。本文将详细介绍如何利用U盘在内网机与外网机之间迁移Python环境及其依赖包。 工具准备 1台内网机1台外网机1个U盘 操作步骤…...

windows下kafka使用出现的问题

kafka启动 启动kafka需要先启动zookeeper&#xff0c;在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 方法一&#xff1a;filter伪协议 方法二&#xff1a;input协议 方法三&#xff1a;data协议 web79 方法一:input协议 方法二&#xff1a;data协议 web80 方法一&#xff1a;input协议 方法二&#xff1a;日志包含getshell web81 web78 if(isset($_GET[file]…...

鸿蒙生态认识

好的&#xff0c;让我们更深入地探讨鸿蒙生态的发展机遇、面临的挑战&#xff0c;以及未来的潜力。 对鸿蒙生态的认知与分析 鸿蒙系统作为一种新兴的操作系统&#xff0c;旨在打破设备之间的壁垒&#xff0c;打造一个更加连通的生态环境。以下是对其崛起的进一步分析&#xf…...

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系统需要做一些基础设置&#xff0c;配合插件使用,将之前下载的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

学习目标&#xff1a; 使用代码模拟实现strcpy。 逻辑&#xff1a; strcpy 函数的返回类型是 void 即不返回数据。strcpy 函数的参数类型是 char* &#xff0c;用于接收数组。strcpy 函数要把一个数组复制到另一个数组。 代码&#xff1a; #define _CRT_SECURE_NO_WARNINGS …...

网络编程番外——IO多路复用的应用说明

一、IO多路复用与多线程 IO多路复用&#xff0c;IO Multiplexing&#xff0c;其实就是在IO上进行监听处理导致线程被阻塞&#xff08;如果非阻塞就必须不断的轮询&#xff0c;仍然是占用此线程&#xff09;&#xff0c;如果一个IO对应一个线程是不是太浪费了。而且在诸如网络I…...

【Java爬虫的淘宝寻宝记】—— 淘宝商品类目的“藏宝图”

引言&#xff1a; 在淘宝这个广袤的“商品宇宙”中&#xff0c;每一件商品都是一颗璀璨的星球&#xff0c;而商品类目就是连接这些星球的星际航道。今天&#xff0c;我们将派遣一位勇敢的Java爬虫宇航员&#xff0c;去揭开这些星际航道背后的秘密——商品类目。准备好了吗&…...

探索Python文档自动化的奥秘:揭开docxtpl库的神秘面纱

文章目录 探索Python文档自动化的奥秘&#xff1a;揭开docxtpl库的神秘面纱1. 背景介绍2. 库简介3. 安装指南4. 基础函数介绍5. 实际应用场景6. 常见问题及解决方案7. 总结 探索Python文档自动化的奥秘&#xff1a;揭开docxtpl库的神秘面纱 1. 背景介绍 在日常工作中&#xf…...

RabbitMQ的解耦、异步、削峰是什么?

RabbitMQ在分布式系统和微服务架构中起到了重要的作用&#xff0c;其特性可以实现解耦、异步以及削峰&#xff0c;下面是对这三个概念的详细解释&#xff1a; 1. 解耦 解耦是指使系统的不同组件间的依赖关系减少或消失。在使用RabbitMQ时&#xff0c;生产者&#xff08;发送消…...

4:arm汇编语言4:bits/byte的介绍(ASCII码)与二进制补位

4.2 bits/byte的介绍与ASCII码的引入 这个是详细介绍计算机内部原理的基础&#xff0c;bits与byte其实这两个是计算机中非常重要的单位。首先看一下bits&#xff0c;它是一个基础的计算机单位。计算机单位&#xff1f;像长度单位是米&#xff0c;体重的单位是kg&#xff0c;你…...

C++实现仿安卓线程Handler、Message、Looper的功能

在java开发中&#xff0c;习惯使用Handler、Message来处理同步&#xff0c;比如对相机的操作(open、setParamters、start、stop、clost)全部抛到同一个线程处理&#xff0c;防止并发操作导致异常&#xff0c;这样保留给外部的统一接口就是安全的&#xff0c;无论外部哪些线程来…...

构建安全的用户登录API:从请求验证到JWT令牌生成

构建安全的用户登录API&#xff1a;从请求验证到JWT令牌生成 为了实现这个后端POST /api/users/login端点&#xff0c;我们可以使用Node.js和Express框架&#xff0c;并结合一些常用的库如jsonwebtoken、bcrypt和express-validator来处理验证和密码校验。下面是一个完整的示例…...

状态模式:封装对象状态并改变行为的设计模式

1. 引言 在软件开发中&#xff0c;某些对象的行为会随着其内部状态的变化而变化。传统的实现方式可能需要使用大量的条件语句&#xff0c;导致代码复杂且难以维护。状态模式&#xff08;State Pattern&#xff09;提供了一种有效的方法&#xff0c;通过将状态行为封装在状态类…...

备战“双11”丨AI+物流:你的快递会有什么变化?

背景 在中国&#xff0c;每天有数以亿计的包裹在运输&#xff0c;尤其在电商促销季如“双十一”、“618”期间&#xff0c;快递量更是激增。快递物流行业面临人员短缺、配送效率低下和物流承载能力有限等问题。快瞳科技提供的AI识别解决方案通过智能化手段提高工作效率和配送准…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件&#xff0c;常用于在两个集合之间进行数据转移&#xff0c;如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model&#xff1a;绑定右侧列表的值&…...

前端导出带有合并单元格的列表

// 导出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协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

ios苹果系统,js 滑动屏幕、锚定无效

现象&#xff1a;window.addEventListener监听touch无效&#xff0c;划不动屏幕&#xff0c;但是代码逻辑都有执行到。 scrollIntoView也无效。 原因&#xff1a;这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作&#xff0c;从而会影响…...

排序算法总结(C++)

目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指&#xff1a;同样大小的样本 **&#xff08;同样大小的数据&#xff09;**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...

MySQL 索引底层结构揭秘:B-Tree 与 B+Tree 的区别与应用

文章目录 一、背景知识&#xff1a;什么是 B-Tree 和 BTree&#xff1f; B-Tree&#xff08;平衡多路查找树&#xff09; BTree&#xff08;B-Tree 的变种&#xff09; 二、结构对比&#xff1a;一张图看懂 三、为什么 MySQL InnoDB 选择 BTree&#xff1f; 1. 范围查询更快 2…...

WebRTC从入门到实践 - 零基础教程

WebRTC从入门到实践 - 零基础教程 目录 WebRTC简介 基础概念 工作原理 开发环境搭建 基础实践 三个实战案例 常见问题解答 1. WebRTC简介 1.1 什么是WebRTC&#xff1f; WebRTC&#xff08;Web Real-Time Communication&#xff09;是一个支持网页浏览器进行实时语音…...

【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error

在前端开发中&#xff0c;JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作&#xff08;如 Promise、async/await 等&#xff09;&#xff0c;开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝&#xff08;r…...

在 Visual Studio Code 中使用驭码 CodeRider 提升开发效率:以冒泡排序为例

目录 前言1 插件安装与配置1.1 安装驭码 CodeRider1.2 初始配置建议 2 示例代码&#xff1a;冒泡排序3 驭码 CodeRider 功能详解3.1 功能概览3.2 代码解释功能3.3 自动注释生成3.4 逻辑修改功能3.5 单元测试自动生成3.6 代码优化建议 4 驭码的实际应用建议5 常见问题与解决建议…...