思科模拟器:高级交换实验
高级交换实验
一、实验目的
(1)了解生成树协议的作用; (2)熟悉生成树协议的配置。
二、应用环境
采用生成树协议可以避免环路。
生成树协议的根本目的是将一个存在物理环路的交换网络变成一个没有环路的逻辑树形网络。IEEE802.ID
协议通过在交换机上运行一套复杂的算法STA(spanning-tree algorithm)
, 使冗余端口置于“阻断状态”,使得接入网络的计算机在与其他计算机通讯时,只有一条链路生效,而当这个链路出现故障无法使用时,IEEE802.1d
协议会重新计算网络链路,将处于“阻断状态”的端口重新打开,从而既保障了网络正常运转,又保证了冗于能力。
三、实验设备
(1) DCS
二层交换机2台
(2) PC
机2台
(3) 直通网线4-
8根
四、实验拓扑
五、实验要求
IP地址设置:
设备 |
IP |
Mask |
---|---|---|
交换机A |
10.1.157.100 |
255.255.255.0 |
交换机B |
10.1.157.101 |
255.255.255.0 |
PC1 |
10.1.157.113 |
255.255.255.0 |
PC2 |
10.1.157.114 |
255.255.255.0 |
网线连接:
交换机A f0/1 |
交换机B f0/3 |
---|---|
交换机A f0/2 |
交换机B f0/4 |
PC1 |
交换机A f0/24 |
PC2 |
交换机B f0/23 |
如果生成树成功,则 PC1 无论何时均可以 ping 通 PC2
六、实验步骤
第一步:正确连接网线,恢复出厂设置之后,做初始配置。
首先交换机 A 做初始化配置,包括恢复出厂设置和设置 ip 地址。 SwitchA
先改名字:
HOSTNAME switchA
恢复出厂设置:
# 首先进入特权模式
enable
# 恢复出厂设置
erase startup-config
delete vlan.dat
vlan.dat
# 配置 ip 地址
config
int vlan 1
ip address 10.1.157.100 255.255.255.0
exit
exit
# 验证
show run
验证配置:
SwitchB
也可以直接在图形化界面改 HOSTNAME
:
# 首先进入特权模式
enable
# 恢复出厂设置
erase startup-config
delete vlan.dat
vlan.dat
# 配置 ip 地址
config
int vlan 1
ip address 10.1.157.101 255.255.255.0
exit
exit
# 验证
show run
验证配置:
PC1 设置 ip 地址:
验证配置:
PC2 设置ip地址:
验证配置:
第二步:“PC1 ping PC2-t”观察现象
在 PC1 ping PC2 居然可以 ping 通。
原因是因为交换机默认情况下是开启了最小生成树协议的 pvst
,所以两条链路之间存在冗余链路会自动的运行生成树协议。
没有划分端口默认都是 vlan1 的,而 vlan1 有最小生成树协议,所以我们只需要关闭它即可。
下面分别在交换机 AB 里面,执行下面的命令即可关闭该协议:
no spanning-tree vlan 1
验证配置:
show spa
这个时候再去 ping 一下:
- (1)
ping
不通 - (2) 所有连接网线的端口的绿灯很频繁的闪烁,表明该端口收发数据量很大,已经在交换机内部形成广播风暴
说明广播风暴了。
第三步:在两台交换机中都使用启用生成树协议
下面启用生成树协议:
spanning-tree vlan 1
验证配置:
Desg 是指定端口。 FWD:forwarding,转发状态,意思是接口是打开的,接到一个分组之后会转发。 BLK:block,关闭的状态,阻塞的意思,这个接口是暂时关闭的。
第四步:继续使用“PC1 ping PC2-t”观察现象
拔掉交换机 B 端口 4 的网线,观察现象
这个时候又可以 ping
通了,因为没有环了,肯定是可以通的。
(1) 使用show spanning-tree查看生成树状态,写在下方:
只有两个端口了,状态都处于 FWD 状态,因为不存在环路了。
(2) 再插上交换机 B 端口 4 的网线,观察现象,写在下方:
三个端口了,再去 ping
也是可以 ping
通的。
因为有最小生成树的协议控制着。
七、注意事项和排错
在交换机未启动生成树之前尽量不要使两台设备之间形成环路,因为一旦形成环路,交换机性能将遭受很大影响,很可能影响后续设备是否能够写入设备。
2950
之间互联必须使用交叉线。
但是 2960
可以自动翻转端口,所以是通的。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Tomcat 高并发之道原理拆解与性能调优
- Redis运维之swap空间
- MySQL组复制(MGR)全解析 Part 4 MGR单主模式部署前准备
- Spring 中的自动装配
- antlr4入门篇
- 定位生产问题时,异常堆栈莫名丢了,何解?
- 一个爬取用户所有微博的爬虫,还能断网续爬那种
- MySQL组复制(MGR)全解析 Part 8 多主模式部署指南
- MySQL组复制(MGR)全解析 Part 9 MGR的要求和限制
- MySQL Galera Cluster全解析 Part 3 状态快照传输(SST)
- 一口气搞懂「文件系统」,就靠这 25 张图了
- Oracle ASM 环境增加控制文件
- 利用注解进行 Spring 开发
- 40张图揭秘,「键入网址发生了什么」
- Spring 代理模式知多少