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

【计算机网络】实验11:边界网关协议BGP

实验11 边界网关协议BGP

一、实验目的

本次实验旨在验证边界网关协议(BGP)的实际作用,并深入学习在路由器上配置和使用BGP协议的方法。通过实验,我将探索BGP在不同自治系统之间的路由选择和信息交换的功能,理解其在互联网中的重要性。此外,我还将掌握BGP的基本配置步骤和命令,以便能够有效地管理和优化网络路由,提升网络的稳定性和可靠性。

二、实验环境

·Cisco Packet Tracer模拟器

三、实验过程

  1. 构建网络拓朴,网络拓扑仅由三个路由器组成,三个路由器分别属于不同的自治系统(AS),AS后面的数字就是AS的编号。如图1所示。

img

图1 配置网络拓扑

  1. 使用命令行配置路由器IP地址,打开命令行界面输入enable进入特权模式,输入config t 进入全局配置模式,回车再输入端口号命令,可以使用interface gigabitethernet0/0,也可以简写为int g0/0,然后设置IP和子网掩码,命令为ip address 10.0.0.2 255.0.0.0,并且使用no shutdown把接口0打开,接口1的配置也是如此,配置完成如图2所示。

img

图2 配置IP信息及子网掩码

  1. 建立路由器之间的关系,对于最上面的AS来说,首先输入exit进入全局配置,然后输入router bgp 200,后面的数字就是AS编号,这样就启动了BGP协议,后面使用命令neighbor 10.0.0.1 remote-as 100,100是邻居路由器的所在的AS编号,指定左下方的路由器是其邻居,同理另外一个邻居路由器设置也是如此,如图3所示。同理另外两台路由器也需要配置邻居,配置完如图4所示。

img

图3 为路由器指定邻居

img

图4 另一台路由器配置邻居

  1. 检验路由器是否连通,让左下方的路由器ping一下右下方的路由器,使用命令ping 20.0.0.1,发送了5个数据载荷为100B的ICMP报文,后面显示的0/5就是发送的五个ICMP的报文全部失败了。这是因为左下方的路由器的路由表没有目的地址为20.0.0.1的路由,所以就ping不通。

img

图5 连接失败

  1. 让路由器给自己的邻居发送一个通告,借助于BGP通道到达邻居路由器,配置如下:进入终端配置之后,输入router bgp 300,打开BGP协议,输入network 20.0.0.0 mask 255.0.0.0,给邻居路由器通告信息,如图6所示,此时路由器就将自己的直连网络给通告出去了。

img

图6 路由器通告自己直连网络

  1. 查看一下左边的路由器的路由表,可以发现多出来一条类型为B的路由,也就是由BGP发现的路由,如图7所示。

img

图7 左边路由器的路由表

  1. 此时再让左边的路由器ping 一下右边的路由器,也就是ping 20.0.0.1,可以发现此时两个路由器是可以互连的,如图8所示。

img

​ 图8 路由器之间可以互连

四、实验小结

  1. 建立路由器之间的BGP关系:通过命令行成功配置了路由器之间的BGP连接。每个路由器都被指定为一个自治系统(AS),并启用了BGP协议。路由器之间的BGP会话通过TCP端口179建立,确保路由信息能够可靠地交换。

  2. 启动BGP协议:在路由器上启用了BGP进程,并与相邻的BGP路由器建立了对等关系。这使得路由器能够开始交换路由信息,并根据AS路径选择最优路由,从而优化网络性能。

  3. 验证BGP协议:通过使用show ip bgp命令查看BGP路由表,验证BGP是否正确交换了路由信息。同时,通过ping命令测试网络连通性,确认不同自治系统之间的路由是否成功。

  4. 通过本次实验,我验证了BGP协议在跨自治系统通信中的重要作用,并学会了如何在Cisco路由器上配置BGP协议。BGP能够通过交换路由信息,动态计算最佳路由,保证了不同自治系统之间的通信稳定性和高效性。

相关文章:

【计算机网络】实验11:边界网关协议BGP

实验11 边界网关协议BGP 一、实验目的 本次实验旨在验证边界网关协议(BGP)的实际作用,并深入学习在路由器上配置和使用BGP协议的方法。通过实验,我将探索BGP在不同自治系统之间的路由选择和信息交换的功能,理解其在互…...

leetcode 1853 转换日期格式(postgresql)

需求 表: Days ----------------- | Column Name | Type | ----------------- | day | date | ----------------- day 是这个表的主键。 给定一个Days表,请你编写SQL查询语句,将Days表中的每一个日期转化为"day_name, month_name day, year"…...

掌握时间,从`datetime`开始

文章目录 掌握时间,从datetime开始第一部分:背景介绍第二部分:datetime库是什么?第三部分:如何安装这个库?第四部分:简单库函数使用方法1. 获取当前日期和时间2. 创建特定的日期3. 计算两个日期…...

剖析千益畅行,共享旅游-卡,合规运营与技术赋能双驱下的旅游新篇

在数字化浪潮席卷各行各业的当下,旅游产业与共享经济模式深度融合,催生出旅游卡这类新兴产品。然而,市场乱象丛生,诸多打着 “共享” 幌子的旅游卡弊病百出,让从业者与消费者都深陷困扰。今天,咱们聚焦技术…...

集合框架(2)List

Collection的子接口:List、Set 1、List接口 鉴于Java中数组用来存储数据的局限性,我们通常使用java.util.List替代数组List集合类中元素有序、且可重复,集合中的每个元素都有其对应的顺序索引。JDK API中List接口的实现类常用的有&#xff…...

【子查询】.NET开源 ORM 框架 SqlSugar 系列

.NET开源 ORM 框架 SqlSugar 系列 【开篇】.NET开源 ORM 框架 SqlSugar 系列【入门必看】.NET开源 ORM 框架 SqlSugar 系列【实体配置】.NET开源 ORM 框架 SqlSugar 系列【Db First】.NET开源 ORM 框架 SqlSugar 系列【Code First】.NET开源 ORM 框架 SqlSugar 系列【数据事务…...

西安理工大学丨ChatGPT助力学术论文写作训练营-助力发表SCI一区、二区

在当今学术研究中,科研人员在撰写论文时面临诸多挑战。首先是信息量的剧增,科研人员需要快速消化新知识,筛选相关信息并清晰表达。但论文写作不仅是信息的罗列,还需要条理清晰、逻辑严密、语言精准,特别是在竞争激烈的…...

go get依赖包失败,502 Bad gateway

问题描述 go get 依赖包失败,502 Bad gateway 解决办法 # 临时 export GOPROXY"https://goproxy.cn" go get -u xxxx # 或者直接永久生效 go env -w GOPROXY"https://goproxy.cn"...

71、docker镜像制作上传/下载到阿里云

基本思想:简单学习一下如何制作镜像和上传下载到私有阿里云,然后构建一个gpu的训练/推理环境,以备后续使用 一、配置环境 ubuntu@ubuntu:~$ sudo apt-get install docker.ioubuntu@ubuntu:~$ sudo docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS P…...

ZLMediaKit+wvp (ffmpeg+obs)推拉流测试

这里使用了两种方式: ffmpeg命令和 OBS OBS推流在网上找了些基本没有说明白的, 在ZLMediaKit的issues中看到了一个好大哥的提问在此记录一下 使用OBS推流,rtmp,报鉴权失败 推流 1. ffmpeg命令推流 官方说明文档地址: 推流规则 rtsp://192.168.1.4:10554…...

POSTGRESQL跟ORACLE语法区别和相同之处

跟ORACLE语法区别之处 1. Update和delete语法区别 Pg 和MySQL Update和delete的时候表名不能加别名 2. 插入数字类型不一样 ORACLE 对number类型的数据可以用’’ 字符串标记插入,但是PG不行,必须要进行正确的数据类型 3. SEQ使用不同 ORACEL的SEQ…...

【知识点】图与图论入门

何为图论 见名知意,图论 (Graph Theory) 就是研究 图 (Graph) 的数学理论和方法。图是一种抽象的数据结构,由 节点 (Node) 和 连接这些节点的 边 (Edge) 组成。图论在计算机科学、网络分析、物流、社会网络分析等领域有广泛的应用。 如下,这…...

FPGA系列,文章目录

前言 FPGA(Field-Programmable Gate Array,现场可编程门阵列)是一种集成电路,其内部结构可以通过软件重新配置来实现不同的逻辑功能。与传统的ASIC(Application-Specific Integrated Circuit,专用集成电路…...

PAT乙级1003我要通过的做题笔记

分析题意 得到“答案正确”的条件是: 字符串中必须仅有 P、 A、 T这三种字符,不可以包含其它字符; 任意形如 xPATx 的字符串都可以获得“答案正确”,其中 x 或者是空字符串,或者是仅由字母 A 组成的字符串&#xff1…...

【React】React常用开发工具

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、React DevTools二、Redux DevTools三、Create React App 前言 React 是一种用于构建用户界面的流行 JavaScript 库,由于其灵活性、性能和可重用…...

Ubuntu20.04编译安装Carla全过程

前言 Carla的安装是我现阶段解决的第一个问题,现记录一下我安装Carla的过程以及我在安装过程中遇到的一些问题。 一、安装前准备 1、硬件环境 carla是一款基于UE4开发的模拟仿真软件,本身对硬件的要求比较高。 我是windows与ubuntu双系统&#xff0…...

Dijkstra 算法 是什么?

Dijkstra 算法 Dijkstra 算法是一种经典的最短路径算法,用于在图(有向或无向图)中找到从起点到其他所有节点的最短路径。它以广度优先搜索的方式,逐步扩展到目标节点,确保计算出的路径是最短的。 1. Dijkstra 算法的基…...

英文输入法---华为OD机试2024年E卷

题解: 代码:...

理解 package.json 中版本号符号

今天,聊一聊在前端开发中, package.json 中怎么看版本号符号。 版本号符号的解释 版本号通常由三部分组成:主版本号、次版本号、补丁版本号,格式为 major.minor.patch。常见的符号有: ^:更新时允许自动…...

计算机网络-IPSec VPN基本概念

企业分支之间经常有互联的需求,企业互联的方式很多,可以使用专线线路或者Internet线路。部分企业从成本和需求出发会选择使用Internet线路进行互联,但是使用Internet线路存在安全风险,如何保障数据在传输时不会被窃取?…...

React hook之useRef

React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...

c++ 面试题(1)-----深度优先搜索(DFS)实现

操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)

文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...

基于TurtleBot3在Gazebo地图实现机器人远程控制

1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...

【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)

LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...

elementUI点击浏览table所选行数据查看文档

项目场景&#xff1a; table按照要求特定的数据变成按钮可以点击 解决方案&#xff1a; <el-table-columnprop"mlname"label"名称"align"center"width"180"><template slot-scope"scope"><el-buttonv-if&qu…...