构建以太网交换网络——(生成树实验)

news2024/11/17 11:32:17

实验介绍 

关于本实验

以太网交换网络中为了进行链路备份,提高网络可靠性,通常会使用冗余链路。但是使用冗余链路会在交换网络上产生环路,引发广播风暴以及MAC地址表不稳定等故障现象,从而导致用户通信质量较差,甚至通信中断。为解决交换网络中的环路问题,提出了生成树协议STP(Spanning Tree Protocol)。

与众多协议的发展过程一样,生成树协议也是随着网络的发展而不断更新的,从最初的IEEE 802.1D中定义的STP到IEEE 802.1W中定义的快速生成树协议RSTP(Rapid Spanning Tree Protocol),再到最新的IEEE 802.1S中定义的多生成树协议MSTP(Multiple Spanning Tree Protocol)。

本实验将通过完成STP的基本配置,帮助学员掌握STP的配置和原理,以及部分RSTP特性。

实验目的

  1. 掌握启用和禁用STP/RSTP的方法
  2. 掌握修改交换机STP模式的方法
  3. 掌握修改桥优先级,控制根桥选举的方法
  4. 掌握修改端口优先级,控制根端口和指定端口选举的方法
  5. 掌握修改端口开销,控制根端口和指定端口选举的方法
  6. 掌握边缘端口的配置方法
  7. 掌握启用和禁用RSTP的配置方法

 实验组网介绍

实验背景

某公司的二层交换网络中,为了提高网络可靠性,故在二层交换网络中增加冗余链路。为了阻止冗余链路可能带来的广播风暴,MAC地址漂移等负面影响,需要在交换机之间部署生成树协议。

实验任务配置

配置思路

1. 使能设备上的STP功能

2. 修改桥优先级来控制根桥的选举

3. 修改接口参数来控制端口角色

4. 修改设备运行RSTP协议

配置步骤

步骤1  闭多余接口,只针对《HCIA-Datacom实验室搭建指南V1.0》所描述的环境,其他环境可以忽略此步骤。

配置RSTP边缘端口

#关闭S1与S2之间的GigabitEthernet0/0/12接口

[S1]interface GigabitEthernet 0/0/12
[S1-GigabitEthernet0/0/12]shutdown

[S2]interface GigabitEthernet 0/0/12
[S2-GigabitEthernet0/0/12]shutdown

步骤二  配置设备运行STP

# 全局使能STP功能

<S1>system-view 
Enter system view, return user view with Ctrl+Z.
[S1]stp enable

stp enable命令用来使能交换设备或端口上的STP/RSTP/MSTP功能。缺省情况下,交换设备上的STP/RSTP/MSTP功能处于启用状态,此处配置仅为演示用。

# 修改当前生成树工作模式为STP

[S1]stp mode stp 
Info: This operation may take a few seconds. Please wait for a moment...done.

stp mode{mstp | rstp | stp}命令用来配置交换设备的生成树协议工作模式。缺省情况下,设备的生成树协议工作模式为MSTP模式。当前设备的生成树模式已经被修改为STP。

[S2]stp mode stp 
Info: This operation may take a few seconds. Please wait for a moment...done.
[S3]stp mode stp 
Info: This operation may take a few seconds. Please wait for a moment...done.
[S4]stp mode stp 
Info: This operation may take a few seconds. Please wait for a moment...done.

# 查看生成树的状态,以S1为例

[S1]display stp 
-------[CIST Global Info][Mode STP]-------
CIST Bridge         	:32768.4c1f-cc33-7359                         //自身的桥ID。
Config Times        	:Hello 2s MaxAge 20s FwDly 15s MaxHop 20
Active Times        	:Hello 2s MaxAge 20s FwDly 15s MaxHop 20
CIST Root/ERPC      	:32768.4c1f-cc10-5913 / 20000           //当前的根桥的ID与根路径开销
CIST RegRoot/IRPC   	:32768.4c1f-cc33-7359 / 0
CIST RootPortId     	:128.14
BPDU-Protection     	:Disabled
TC or TCN received  	:47
TC count per hello  	:0
STP Converge Mode   	:Normal 
Time since last TC  	:0 days 0h:0m:38s
Number of TC        	:15
Last TC occurred    	:GigabitEthernet0/0/14

显示信息还包括各个接口的状态,在上述输出中已经按ctrl+c结束显示。

# 查看各交换机上生成树的状态信息摘要。 

[S1]display stp brief 
 MSTID  Port                    Role   	STP State           Protection
   0    GigabitEthernet0/0/10       DESI  	FORWARDING      NONE
   0    GigabitEthernet0/0/11       DESI  	FORWARDING      NONE
   0    GigabitEthernet0/0/13       DESI  	FORWARDING      NONE
   0    GigabitEthernet0/0/14       ROOT 	FORWARDING     	 NONE
[S2]display stp brief 
 MSTID  Port                    Role    STP State          Protection
   0    GigabitEthernet0/0/10       ALTE  DISCARDING      	NONE
   0    GigabitEthernet0/0/11       ALTE  DISCARDING      	NONE
   0    GigabitEthernet0/0/13       DESI  	FORWARDING    	NONE
   0    GigabitEthernet0/0/14       ROOT  FORWARDING    	NONE
[S3]display stp brief 
 MSTID  Port                    Role    STP State          	Protection
   0    GigabitEthernet0/0/1        ALTE  DISCARDING      	NONE
   0    GigabitEthernet0/0/2        ALTE  DISCARDING      	NONE
   0    GigabitEthernet0/0/3        ROOT  FORWARDING    	NONE
[S4]display stp brief 
 MSTID  Port                    Role   STP State          	Protection
   0    GigabitEthernet0/0/1        DESI  FORWARDING      NONE
   0    GigabitEthernet0/0/2        DESI  FORWARDING      NONE
   0    GigabitEthernet0/0/3        DESI  FORWARDING      NONE

# 综合根桥ID信息以及各个交换机上的端口信息,可得当前拓扑如下

虚线代表该链路不转发业务数据。

注:该拓扑仅供参考,不一定与实际实验环境中的生成树拓扑相同。

步骤三   修改设备参数,使得S1成为根桥,S2成为备份根桥

# 修改S1和S2的桥优先级

[S1]stp root primary 

由于根桥在网络中的重要性,在根桥选举过程中,通常希望性能高、网络层次高的交换设备会被选举为根桥。但是,性能高、网络层次高的交换设备其优先级不一定高,因此可以通过执行相应命令配置其为根桥,以保证该设备成为根桥。stp root命令用来配置当前交换设备为指定生成树的根桥或备份根桥。

  • 执行stp root primary命令指定当前交换设备为根交换设备,则表示该设备在指定生成树中的优先级为0,且优先级不能修改。
  • 执行stp root secondary命令指定当前交换设备在指定生成树中为备份根桥,则表示该设备的优先级数值为4096,且优先级不能修改。
[S2]stp root secondary

# 在S1上查看当前STP状态

[S1]display stp 
-------[CIST Global Info][Mode STP]-------
CIST Bridge         	:0    .4c1f-cc33-7359                             //自身的桥ID。
Config Times        	:Hello 2s MaxAge 20s FwDly 15s MaxHop 20
Active Times        	:Hello 2s MaxAge 20s FwDly 15s MaxHop 20
CIST Root/ERPC      	:0    .4c1f-cc33-7359 / 0                  //当前的根桥的ID与根路径开销
CIST RegRoot/IRPC   	:0    .4c1f-cc33-7359 / 0
CIST RootPortId     	:0.0
BPDU-Protection     	:Disabled
CIST Root Type      	:Primary root
TC or TCN received  	:84
TC count per hello  	:0
STP Converge Mode   	:Normal 
Time since last TC  	:0 days 0h:1m:44s
Number of TC        	:21
Last TC occurred    	:GigabitEthernet0/0/10

此时自身桥ID与根桥ID相同,且根路径开销为0,说明S1是当前网络的根桥。

# 在所有设备上查看STP状态摘要 

[S1]display stp brief 
 MSTID  Port                    Role    STP State          Protection
   0    GigabitEthernet0/0/10       DESI  FORWARDING      NONE
   0    GigabitEthernet0/0/11       DESI  FORWARDING      NONE
   0    GigabitEthernet0/0/13       DESI  FORWARDING      NONE
   0    GigabitEthernet0/0/14       DESI  FORWARDING      NONE
[S2]display stp brief 
 MSTID  Port                    Role    STP State          	Protection
   0    GigabitEthernet0/0/10       ROOT  FORWARDING    	NONE
   0    GigabitEthernet0/0/11       ALTE  DISCARDING      	NONE
   0    GigabitEthernet0/0/13       DESI  FORWARDING     	NONE
   0    GigabitEthernet0/0/14       DESI  FORWARDING     	NONE
[S3]display stp brief 
 MSTID  Port                    Role    STP State          	Protection
   0    GigabitEthernet0/0/1        ROOT  FORWARDING    	NONE
   0    GigabitEthernet0/0/2        ALTE  DISCARDING      	NONE
   0    GigabitEthernet0/0/3        ALTE  DISCARDING      	NONE
[S4]display stp brief 
 MSTID  Port                    Role    STP State          	Protection
   0    GigabitEthernet0/0/1        ROOT  FORWARDING    	NONE
   0    GigabitEthernet0/0/2        ALTE  DISCARDING      	NONE
   0    GigabitEthernet0/0/3        DESI  	FORWARDING     NONE

# 综合根桥ID信息以及各个交换机上的端口信息,可得当前拓扑如下

步骤四   修改设备参数,使得S4的GigabitEthernet0/0/2接口成为根端口

# 查看S4上的STP状态信息

[S4]display stp 
-------[CIST Global Info][Mode STP]-------
CIST Bridge         	:32768.4c1f-cc10-5913
Config Times        	:Hello 2s MaxAge 20s FwDly 15s MaxHop 20
Active Times        	:Hello 2s MaxAge 20s FwDly 15s MaxHop 20
CIST Root/ERPC      	:0    .4c1f-cc33-7359 / 20000
CIST RegRoot/IRPC   	:32768.4c1f-cc10-5913 / 0
CIST RootPortId     	:128.1
BPDU-Protection     	:Disabled
TC or TCN received  	:93
TC count per hello  	:0
STP Converge Mode   	:Normal 
Time since last TC  	:0 days 0h:9m:5s
Number of TC        	:18
Last TC occurred    	:GigabitEthernet0/0/1

当前S4到S1的根路径开销为20000。

# 修改S4的GigabitEthernet 0/0/1的STP开销值为50000

[S4]interface GigabitEthernet 0/0/1 
[S4-GigabitEthernet0/0/1]stp cost 50000

# 查看当前STP状态信息摘要

[S4]display stp brief 
 MSTID  Port                    	Role    	STP State          		Protection
   0    GigabitEthernet0/0/1        	ALTE  	DISCARDING      		NONE
   0    GigabitEthernet0/0/2        	ROOT  	FORWARDING    		NONE
   0    GigabitEthernet0/0/3        	ALTE  	DISCARDING      		NONE

当前S4到S1的根路径开销为20000。

# 修改S4的GigabitEthernet 0/0/1的STP开销值为50000

[S4]interface GigabitEthernet 0/0/1 
[S4-GigabitEthernet0/0/1]stp cost 50000

# 查看当前STP状态信息摘要

[S4]display stp brief 
 MSTID  Port                    	Role    	STP State          		Protection
   0    GigabitEthernet0/0/1        	ALTE  	DISCARDING      		NONE
   0    GigabitEthernet0/0/2        	ROOT  	FORWARDING    		NONE
   0    GigabitEthernet0/0/3        	ALTE  	DISCARDING      		NONE
[S4]display stp brief 
 MSTID  Port                    	Role    	STP State          		Protection
   0    GigabitEthernet0/0/1        	ALTE  	DISCARDING      		NONE
   0    GigabitEthernet0/0/2        	ROOT  	FORWARDING    		NONE
   0    GigabitEthernet0/0/3        	ALTE  	DISCARDING      		NONE
 [S4]display stp 
-------[CIST Global Info][Mode STP]-------
CIST Bridge         	:32768.4c1f-cc10-5913
Config Times        	:Hello 2s MaxAge 20s FwDly 15s MaxHop 20
Active Times        	:Hello 2s MaxAge 20s FwDly 15s MaxHop 20
CIST Root/ERPC      	:0    .4c1f-cc33-7359 / 40000             //根路径开销为20000+20000=40000
CIST RegRoot/IRPC   	:32768.4c1f-cc10-5913 / 0
CIST RootPortId     	:128.2
BPDU-Protection     	:Disabled
TC or TCN received  	:146
TC count per hello  	:0
STP Converge Mode   	:Normal 
Time since last TC  	:0 days 0h:2m:25s
Number of TC        	:20
Last TC occurred    	:GigabitEthernet0/0/2

# 当前拓扑如下

步骤五  修改当前生成树工作模式为RSTP

# 修改所有设备的生成树模式

[S1]stp mode rstp 
Info: This operation may take a few seconds. Please wait for a moment...done.
[S2]stp mode rstp 
Info: This operation may take a few seconds. Please wait for a moment...done.
[S3]stp mode rstp 
Info: This operation may take a few seconds. Please wait for a moment...done.
[S4]stp mode rstp 
Info: This operation may take a few seconds. Please wait for a moment...done.

# 查看设备上的生成树状态,仅以S1为例

[S1]display stp 
-------[CIST Global Info][Mode RSTP]-------
CIST Bridge         	:0    .4c1f-cc33-7359
Config Times        	:Hello 2s MaxAge 20s FwDly 15s MaxHop 20
Active Times        	:Hello 2s MaxAge 20s FwDly 15s MaxHop 20
CIST Root/ERPC      	:0    .4c1f-cc33-7359 / 0
CIST RegRoot/IRPC   	:0    .4c1f-cc33-7359 / 0
CIST RootPortId     	:0.0
BPDU-Protection     	:Disabled
CIST Root Type      	:Primary root
TC or TCN received  	:89
TC count per hello  	:0
STP Converge Mode   	:Normal 
Time since last TC  	:0 days 0h:0m:44s
Number of TC        	:27
Last TC occurred    	:GigabitEthernet0/0/11

模式修改后,对生成树的整体拓扑无影响

步骤六   配置边缘端口

# S3的GigabitEthernet 0/0/10-0/0/24确认只会连接终端设备,需要被配置为边缘端口

[S3]interface range GigabitEthernet 0/0/10 to GigabitEthernet 0/0/24

通常,设备的以太网接口数比较多,并且在很多以太网接口下有相同的配置。如果对这些以太网接口进行逐个配置会较为繁琐,且容易输入错误。因此,将需要执行相同配置命令的以太网接口加入到一个临时端口组,在临时端口组配置命令时,系统会自动到临时端口组绑定的所有成员接口下执行这些命令行,完成以太网接口批量配置。

注:某些产品上可能不支持临时接口组,需要对接口做单独配置。

[S3-port-group]stp edged-port enable

 stp edged-port enable命令用来配置当前端口为边缘端口。当前端口配置成边缘端口后,如果收到BPDU报文,交换设备会自动将边缘端口设置为非边缘端口,并重新进行生成树计算。

结果验证

1)请根据实际收敛情况,标识出当前实验环境中的根桥以及端口角色。

 

2)关闭任意交换机上的任意端口,观察是否能通过备份链路到达其他所有交换机。 

 配置参考

S1的配置

#
sysname S1
#
stp mode rstp
stp instance 0 root primary
#
interface GigabitEthernet0/0/12           
 shutdown
#
return

S2的配置

#
sysname S2
#
stp mode rstp
stp instance 0 root secondary
#
interface GigabitEthernet0/0/12           
 shutdown
#
return

S3的配置

#
sysname S3
#
stp mode rstp
#
interface GigabitEthernet0/0/10
 stp edged-port enable
#
interface GigabitEthernet0/0/11
 stp edged-port enable
#
interface GigabitEthernet0/0/12
 stp edged-port enable
#
interface GigabitEthernet0/0/13
 stp edged-port enable                    
#
interface GigabitEthernet0/0/14
 stp edged-port enable
#
interface GigabitEthernet0/0/15
 stp edged-port enable
#
interface GigabitEthernet0/0/16
 stp edged-port enable
#
interface GigabitEthernet0/0/17
 stp edged-port enable
#
interface GigabitEthernet0/0/18
 stp edged-port enable
#
interface GigabitEthernet0/0/19
 stp edged-port enable
#
interface GigabitEthernet0/0/20
 stp edged-port enable
#
interface GigabitEthernet0/0/21
 stp edged-port enable                    
#
interface GigabitEthernet0/0/22
 stp edged-port enable
#
interface GigabitEthernet0/0/23
 stp edged-port enable
#
interface GigabitEthernet0/0/24
 stp edged-port enable
#
return

S4的配置

#
sysname S4
#
stp mode rstp
#
interface GigabitEthernet0/0/1
 stp instance 0 cost 5000
#                               
return

思考题

1. 步骤3中,若修改S1的GigabitEthernet 0/0/14接口的cost值为50000,是否能达到相应的效果?为什么?

2. 在当前拓扑下,请尝试通过修改配置使得S2的GigabitEthernet0/0/11口成为根端口。

3. S1与S2之间的两条链路能否同时处于转发状态?为什么?

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

图论06-飞地的数量(Java)

6.飞地的数量 题目描述 给你一个大小为 m x n 的二进制矩阵 grid &#xff0c;其中 0 表示一个海洋单元格、1 表示一个陆地单元格。 一次 移动 是指从一个陆地单元格走到另一个相邻&#xff08;上、下、左、右&#xff09;的陆地单元格或跨过 grid 的边界。 返回网格中 无法…

后端基础篇- 社区 IDEA 手动 Maven 创建 SpringBoot 项目、Maven 安装与配置环境变量、IDEA 集成 Maven

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 Maven 安装与配置环境变量 1.1 下载并解压安装包 1.2 配置本地仓库 1.3 配置阿里云私服 1.4 配置环境变量 2.0 IDEA 集成 Maven 2.1 首先创建一个新项目 2.2 开始…

javaWeb医院在线挂号系统

功能描述 医院挂号系统主要用于实现医院的挂号&#xff0c;前台基本功能包括&#xff1a;用户注册、用户登录、医院查询、挂号、取消挂号、修改个人信息、退出等。 后台基本功能包括&#xff1a;系统管理员登录、医院管理、科室管理、公告管理、退出系统等。 本系统结构如下&…

舵机烧录

舵机烧录 一、硬件连接1、准备物资2、连接&#xff08;1&#xff09;舵机线一侧连接舵机控制板&#xff0c;另一侧连接舵机&#xff08;2&#xff09;老安卓线一侧连接舵机控制板&#xff0c;一侧连接电脑&#xff08;3&#xff09;接上低压电池 二、软件使用1、打开舵机烧录软…

抖音小店月入三五万?真有这么赚钱吗?

大家好&#xff0c;我是电商糖果 在网上我们经常看到这样的帖子&#xff0c;或者视频博主说他自己在抖音开小店做副业。 收入比主业还高&#xff0c;一个月好几万。 很多人都说骗人的&#xff0c;要是赚钱这么容易&#xff0c;我不早成富一代了。 糖果是做电商的&#xff0…

electron 打包生成的latest.yml文件名字变成xxx.yml文件名

正常情况是electron每次打包会生成一个latest.yml文件和一个xxx.exe文件&#xff0c;但是当version的名字修改成 这样 后面添加了-beta &#xff0c;然后生成的文件名字就变成了 beta.yml 更改方法&#xff1a; 在build配置底下添加 "detectUpdateChannel": false…

产品经理方法论——MRD文档模板】

一、 文档格式 无要求 二、文档类型 PPT 三、文档框架 1. 市场说明 市场规模&#xff1a;市场规模决定最终的利润。我们对于直接产生现金流的产品通过交易额衡量市场规模&#xff0c;如果是间接产生现金流的产品我们通过用户量衡量市场规模。市场增速&#xff1a;随着时间…

独享IP可以避免被封禁或限制访问的风险

在一些网站或服务中&#xff0c;存在对共享IP的封禁或限制访问的情况&#xff0c;这给用户带来了不便。而使用独享IP可以有效规避这一问题&#xff0c;保障用户正常访问需求。例如&#xff0c;在进行搜索引擎优化、社交媒体营销或广告投放时&#xff0c;独享IP可以确保用户的网…

spring-boot-starter-validation

系列文章目录 文章目录 系列文章目录前言前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 编写程序Controller接口时,对于参数的验证非常重要,但是多个参数时,如…

刷题之贪心3

前言 大家好&#xff0c;我是jiantaoyab&#xff0c;这篇文章将给大家介绍贪心算法和贪心算法题目的练习和解析&#xff0c;贪心算法的本质就是每一个阶段都是局部最优&#xff0c;从而实现全局最优。加上这篇文章一共有30道贪心题目了&#xff0c;加油! 坏了的计算器 题目分析…

改造 cl_demo_output=>display支持第一行字段名显示成字段描述

1.背景: 标准的cl_demo_output=>display显示的内表第一行为字段名,不方便用户查看,故需要将第一行换成字段描述 2.方法: 2.1 建立FIELDCAT字段结构 定义包含字段名和字段描述的结构和行类型 2.2 建立类,编写相关代码 代码如下: DATA type TYPE c LENGTH 1. DAT…

怎么创建百科人物的词条?百度百科词条创建

百度百科中&#xff0c;创建一个属于自己的词条&#xff0c;不仅是个人荣誉的象征&#xff0c;更是对其生平事迹的官方记录&#xff0c;能够让更多人了解和记住一个人的成就。那么&#xff0c;如何创建一个高质量的百科人物词条呢&#xff1f;本文伯乐网络传媒将详细解答这一问…

007_how_to_start_learning_Matlab学习的启动与加速

Matlab学习的启动与加速 1. 前言 这个专题的Matlab博文系列&#xff0c;来到了传奇的007&#xff0c;我又准备放下技术工作的写作&#xff0c;来一点务虚和规划的内容。 这个系列的开始&#xff0c;也是一个随机发生的小概率事件&#xff0c;本来Python&#xff08;PyQt&…

【MySQL】多版本并发控制

一、什么是MVCC MVCC是通过数据行的多个版本管理来实现数据库的并发控制。MVCC也就相当于是如何实现在相应的隔离级别下&#xff0c;更好的实现并发。 二、快照读与当前写 MVCC在InnoDB中的实现主要是为了提高数据库并发性能&#xff0c;用更好的方式去处理读-写冲突。 2.1、…

软件应用实例,租赁系统软件操作教程,脚手架租赁管理集装箱租赁管理系统教程

软件应用实例&#xff0c;租赁系统软件操作教程&#xff0c;脚手架租赁管理集装箱租赁管理系统教程 一、前言 以下软件操作教程以&#xff0c;佳易王租赁管理系统软件V17.0为例说明 件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 1、软件可以记录&#x…

MySQL索引优化实战宝典

MySQL索引是MySQL数据库用于快速查找和访问数据的一种数据结构&#xff0c;它就像书的目录一样&#xff0c;可以帮助数据库系统更快地定位到所需数据的位置&#xff0c;从而大大提高查询性能。 下面来看一下索引分类 一、索引分类 本文介绍平时使用最多的基于 InnnoDB…

盘点4款最适合教学的电路仿真软件

在现代电子教育中&#xff0c;电路仿真软件扮演着至关重要的角色。它们不仅能够帮助学生更好地理解电子电路原理&#xff0c;还能够提升教学效率&#xff0c;培养学生的实践能力。本文将盘点4款最适合教学的电路仿真软件&#xff0c;助您选择最佳的教学利器&#xff0c;同时介绍…

HTTP的三次握手和四次挥手? 我都给你讲清楚 !!!

今天我们来聊聊一个计算机网络中非常基础但又非常重要的概念——HTTP的三次握手和四次挥手。 一、三次握手 首先&#xff0c;我们来聊聊三次握手。三次握手其实是TCP&#xff08;传输控制协议&#xff09;建立连接时的一个过程&#xff0c;而HTTP是基于TCP的&#xff0c;所以我…

centos 环境部署

一、安装redis 1. 升级 GCC 最直接的解决方式是升级你的 GCC 编译器到支持 C11 标准的版本。CentOS 7 默认的 GCC 版本较旧&#xff0c;可能不支持 _Atomic。你可以通过以下步骤升级 GCC&#xff1a; 启用 CentOS 的 Software Collections (SCL) 仓库&#xff0c;该仓库提供了…

学习使用xbox手柄控制小乌龟节点移动

使用xbox手柄控制小乌龟&#xff0c;首先要下载joy功能包&#xff0c;发布sensor_msgs话题也就是手柄和ros通信的话题。 下载的步骤就根据官方文档即可 joy/Tutorials/ConfiguringALinuxJoystick - ROS Wiki 这里我提供一下具体步骤 第一步 安装joy 首先安装对应系统版本的…