【网络】交换机的原理和配置方法

本文涉及的产品
数据传输服务 DTS,同步至DuckDB 3个月
简介: 【网络】交换机的原理和配置方法

思科主要交换机设备有:Cisco 2906系列、Cisco 3560系列、Cisco 4500系列、Cisco 6500系列。

交换机工作原理

       交换机在接收到数据帧以后,首先、会记录数据帧中的源 MAC 地址和对应的接口到 MAC 表中,接着、会检查自己的 MAC 表中是否有数据帧中目标 MAC 地址的信息,如果有则会根据 MAC 表中记录的对应接口将数据帧发送出去 (也就是单播),如果没有,则会将该数据帧从非接受接口发送出去 (也就是广播,或者泛洪 Flood)。

交换机的三个主要功能

  • 学习:以太网交换机了解每一端口相连设备的 MAC 地址,并将地址同相应的端口映射起来存放在交换机缓存中的 MAC 地址表中。
  • 转发 / 过滤:当一个数据帧的目的地址在 MAC 地址表中有映射时,它被转发到连接目的节点的端口而不是所有端口(如该数据帧为广播 / 组播帧则转发至所有端口)。
  • 消除回路:当交换机包括一个冗余回路时,以太网交换机通过生成树协议避免回路的产生,同时允许存在后备路径。

交换机接口的双工模式

       单工:数据传输是指两个数据站之间只能沿单一方向传输数据。

       半双工:数据传输使两个数据站之间可以实现双向数据传输,但是不能同时进行。

       全双工:数据传输是在两个数据站之间可双向且同时进行数据传输的模式。

交换机命令行模式

       Cisco交换机包括四种不同的命令行模式,每种命令行模式下所支持的命令也有所不同。

3.1. 用户模式

       启动交换机后按Enter键(回车),进入的就是用户模式,在用户模式下的限制很大,只能查看一些统计信息。命令提示符如下:

Switch>

3.2. 特权模式

       特权模式顾名思义,有一定的特权(但不多),在用户模式下输入enable或简写en命令,就能进入特权模式,在该模式下可以修改Cisco设备的配置。命令提示符如下:

1. Switch>enable
2. Switch#

3.3. 全局配置模式

       全局配置模式,可以修改大多数的配置,例如修改设备名称。在特权模式下输入config terminal或简写conf t 命令,就可以进入全局匹配置模式。命令提示符如下:

1. Switch#config terminal
2. Enter configuration commands, one per line.  End with CNTL/Z.
3. Switch(config)#

3.4. 接口模式

       针对接口设置,查看自己的接口信息等。在全局配置模式输入interface fastethernet 0/1 或简写int f0/1就可以进入接口模式。命令解释如下:

interface :进入接口模式的关键字

fastethernet:接口类型,表示快速以太网,及百兆位以太网。

0/1:0表示模块号,也就是第0块模块;1 表示端口号。

1. Switch(config)#interface fastethernet 0/1
2. Switch(config-if)#

3.5.退出模式方法

exit:表示退回上一个模式。

end:表示到特权模式(快捷键Ctrl+z等同)。

disable:从特权模式回到用户模式。

实例如下:

1. Switch(config-if)#exit
2. Switch(config)#exit
3. Switch#
4. disable
5. Switch>en
6. Switch#conf t
7. Enter configuration commands, one per line.  End with CNTL/Z.
8. Switch(config)#int f0/1
9. Switch(config-if)#end
10. Switch#

       四种模式的进入有很明显的层次关系,想要进入全局模式就必须先进入特权模式不能直接跳到全局模式。退出的话只有end命令可以跳到特权模式,其他都是一层一层退出。

交换机常见命令

帮助命令

1.1. ”?“的用法

       显示该模式下的所有命令及注释,按空格翻页,按回车下一行,q退出。也可以使用命令后加?查看该命令后的参数。

1. Switch#?
2. Exec commands:
3.   clear       Reset functions
4.   clock       Manage the system clock
5.   configure   Enter configuration mode
6.   connect     Open a terminal connection
7.   copy        Copy from one file to another
8.   debug       Debugging functions (see also 'undebug')
9.   delete      Delete a file
10. dir         List files on a filesystem
11. #省略部分内容
12. Switch(config)#int ?
13.   Ethernet         IEEE 802.3
14.   FastEthernet     FastEthernet IEEE 802.3
15.   GigabitEthernet  GigabitEthernet IEEE 802.3z
16.   Port-channel     Ethernet Channel of interfaces
17.   Vlan             Catalyst Vlans
18.   range            interface range command

1.2. Tab键

       这个用法就很简单了,它表示自动补全,为了命令的正确或者忘记命令;甚至简写就是默认使用Tab补全的,当然也可以不补全,一样会生效。

1. Switch(config)#interface f                                  #敲到f的时候按Tab键
2. Switch(config)#interface fastEthernet                       #自动补充命令

1.3. 常用的快捷键

Ctrl+A :光标移动命令行的开始位置

Ctrl+E :光标移动到命令行结束位置

常用命令介绍

2.1. hostname

用于配置主机名,可简写为host

1. Switch(config)#host sw1
2. sw1(config)#

2.2. show version

       用于显示系统ios名称及版本信息,可简写为sh ser(注意:在用户或特权模式,如果在全局模式需要在命令前加do)

1. sw1#sh ver
2. Cisco Internetwork Operating System Software
3. IOS (tm) C2950 Software (C2950-I6Q4L2-M), Version 12.1(22)EA4, RELEASE SOFTWARE(fc1)
4. Copyright (c) 1986-2005 by cisco Systems, Inc.
5. Compiled Wed 18-May-05 22:31 by jharirba
6. Image text-base: 0x80010000, data-base: 0x80562000
7. 
8. ROM: Bootstrap program is is C2950 boot loader
9. Switch uptime is 54 minutes, 37 seconds
10. System returned to ROM by power-on
11. #省略部分内容

交换机的基本配置

       拓扑如下:根据下图搭建设备,pc配置:单击pc,点击Desktop,选择IP configuration配置网络,Command Prompt用来测试网络是否连接。

3.1. 查看MAC地址

dynamic:可选参数,可以使交换机只显示动态学习到的MAC地址。

1. sw1#show mac-address-table dynamic 
2.           Mac Address Table
3. -------------------------------------------
4. 
5. Vlan    Mac Address       Type        Ports
6. ----    -----------       --------    -----
7. 
8.    1    000a.4104.9674    DYNAMIC      Fa0/2
9.    1    000c.8543.920e    DYNAMIC      Fa0/3
10.    1    0090.0c10.88d8    DYNAMIC      Fa0/1

Vlan:默认vlan1。

MAC Address:交换机获取到的MAC地址。

Type:交换机获取MAC地址信息的方式。

Ports:MAC地址对应的交换机接口编号。

配置接口的双工模式及速率

4.1. 指定接口的双工模式

命令格式如下:

duplex {full | half | auto }

duplex:配置双工模式的关键字。

full:将接口的双工模式指定为全双工。

half:将接口的双工模式指定为半双工。

auto::将接口的双工模式指定为自动协商。

配置实例:打开两台交换机,分别指定为全双工和半双工。

1. sw1(config)#int f0/1
2. sw1(config-if)#duplex full
3. 
4. sw2(config)#int f0/1
5. sw2(config-if)#duplex half

       在实验环境中,双工不匹配,也可能ping通网络,这是因为通信量小。工作环境中,交换机的链路会很繁忙,可能会出现很严重的丢包现象。

如果ping不同,这里把sw1修改成半双工,这样就可以ping通了。

1. sw1(config)#int f0/1
2. sw1(config-if)#duplex half

4.2. 指定接口的通信速率

命令格式如下:

speed {10 | 100 | 1000 | auto }

speed:配置接口速率的关键字。

10/100/1000:为借口配置具体速率值。

auto:接口与对端自动协商通信速率。

配置实例:指定sw1接口速率10,sw2接口速率100

1. sw1(config)#int f0/1
2. sw1(config-if)#speed 10
3. 
4. sw2(config)#int f0/1
5. sw2(config-if)#speed 100

这是通过ping命令,发现两台交换机无法正常通信。

查看sw1交换机接口的双工模式和通信速率

1. sw1(config-if)#do sh int f0/1
2. FastEthernet0/1 is down, line protocol is down (disabled)
3.   Hardware is Lance, address is 0060.5c33.7d01 (bia 0060.5c33.7d01)
4.  BW 10000 Kbit, DLY 1000 usec,
5.      reliability 255/255, txload 1/255, rxload 1/255
6.   Encapsulation ARPA, loopback not set
7.   Keepalive set (10 sec)
8.   Half-duplex, 10Mb/s
9. #省略部分内容

下面把两个交换机的双工模式和速率修改为auto

1. sw1(config)#int f0/1
2. sw1(config-if)#duplex auto
3. sw1(config-if)#speed auto
4. 
5. sw2(config)#int f0/1
6. sw2(config-if)#duplex auto
7. sw2(config-if)#speed auto

然后在查看sw1交换机的接口,可以看到自动协商为全双工,通信速率协商为100。

1. sw1(config-if)#do sh int f0/1
2. FastEthernet0/1 is up, line protocol is up (connected)
3.   Hardware is Lance, address is 0060.5c33.7d01 (bia 0060.5c33.7d01)
4.  BW 100000 Kbit, DLY 1000 usec,
5.      reliability 255/255, txload 1/255, rxload 1/255
6.   Encapsulation ARPA, loopback not set
7.   Keepalive set (10 sec)
8.   Full-duplex, 100Mb/s
9. #省略部分内容


相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
7月前
|
网络协议 Linux 虚拟化
配置VM网络:如何设定静态IP以访问主机IP和互联网
以上就是设定虚拟机网络和静态IP地址的基本步骤。需要注意的是,这些步骤可能会因为虚拟机软件、操作系统以及网络环境的不同而有所差异。在进行设定时,应根据具体情况进行调整。
557 10
|
7月前
|
弹性计算 安全 应用服务中间件
阿里云渠道商:怎么配置阿里云网络ACL?
阿里云网络ACL是子网级无状态防火墙,支持精准流量控制、规则热生效且免费使用。本文详解5步配置流程,助您实现Web与数据库层的安全隔离,提升云上网络安全。
|
7月前
|
机器学习/深度学习 PyTorch TensorFlow
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic,深度学习探索者。深耕TensorFlow与PyTorch,分享框架对比、性能优化与实战经验,助力技术进阶。
|
7月前
|
监控 负载均衡 安全
WebSocket网络编程深度实践:从协议原理到生产级应用
蒋星熠Jaxonic,技术宇宙中的星际旅人,以代码为舟、算法为帆,探索实时通信的无限可能。本文深入解析WebSocket协议原理、工程实践与架构设计,涵盖握手机制、心跳保活、集群部署、安全防护等核心内容,结合代码示例与架构图,助你构建稳定高效的实时应用,在二进制星河中谱写极客诗篇。
WebSocket网络编程深度实践:从协议原理到生产级应用
|
8月前
|
人工智能 安全 数据可视化
配置驱动的动态Agent架构网络:实现高效编排、动态更新与智能治理
本文系统性地提出并阐述了一种配置驱动的独立运行时Agent架构,旨在解决当前低代码/平台化Agent方案在企业级落地时面临困难,为Agent开发领域提供了一套通用的、可落地的标准化范式。
637 18
配置驱动的动态Agent架构网络:实现高效编排、动态更新与智能治理
|
9天前
|
人工智能 开发工具 iOS开发
Claude Code 新手完全上手指南:安装、国产模型配置与常用命令全解
Claude Code 是一款运行在终端环境中的 AI 编程助手,能够直接在命令行中完成代码生成、项目分析、文件修改、命令执行、Git 管理等开发全流程工作。它最大的特点是**任务驱动、终端原生、轻量高效、多模型兼容**,无需图形界面、不依赖 IDE 插件,能够深度融入开发者日常工作流。
3085 7
|
11天前
|
Shell API 开发工具
Claude Code 快速上手指南(新手友好版)
AI编程工具卷疯啦!Claude Code凭借任务驱动+终端原生的特性,成了开发者的效率搭子。本文从安装、登录、切换国产模型到常用命令,手把手带新手快速上手,全程避坑,30分钟独立用起来。
3158 20
|
5天前
|
人工智能 Linux BI
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
JeecgBoot AI专题研究 一键脚本:Claude Code + JeecgBoot Skills + DeepSeek 全平台接入 一行命令装好 Claude Code + JeecgBoot Skills + DeepSeek 接入,无需翻墙使用 Claude Code,支持 Wind
2072 3
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek