HCIP-ICT进阶实验06-多实例生成树安全部署

1 实验需求

1.1 实验拓扑

1.2 实验环境说明

IP地址规划表:

设备 接口 IP 地址 备注
SW1 VLANIF10 192.168.10.254/24
VLANIF20 192.168.20.254/24
VLANIF30 192.168.30.254/24
VLANIF40 192.168.40.254/24
PC1 Ethernet0/0/1 192.168.10.1/24 Vlan10
PC2 Ethernet0/0/1 192.168.20.1/24 Vlan20
PC3 Ethernet0/0/1 192.168.30.1/24 Vlan30
PC4 Ethernet0/0/1 192.168.40.1/24 Vlan40

1.3 实验需求

本实验采用4台PC,4台交换机。认真分析实验需求,明确每步考查的知识点,并根据规划 IP 地址;拓扑搭建实验环境,确保端口都双UP后再进行下面步骤:

2 实验步骤

2.1 根据拓扑配置好相关接口的地址,交换机SW1为vlan10、vlan20、vlan30、vlan40的网关。

配置脚本

配置4台PC的ip地址、掩码、网关

配置验证

四台都验证一遍, 这里展示PC1的

2.2 交换机之间起trunk,在交换机SW1、SW2、SW3、SW4创建VLAN 10、 20、 30、 40;并且把PC1划入VLAN10,PC2划入VLAN20,PC3划入VLAN30,PC4划入VLAN40。

配置脚本

SW1:

sy
sysname SW1
vlan batch 10 20 30 40
int vlanif 10
ip add 192.168.10.254 24
int vlanif 20
ip add 192.168.20.254 24
int vlanif 30
ip add 192.168.30.254 24
int vlanif 40
ip add 192.168.40.254 24
qu int g0/0/1
port link-type trunk
port trunk allow-pass vlan 10 20 30 40
port trunk pvid vlan 1
qu int g0/0/2
port link-type trunk
port trunk allow-pass vlan 10 20 30 40
port trunk pvid vlan 1
qu

SW2:

sy
sysname SW2
vlan batch 10 20 30 40 int g0/0/1
port link-type trunk
port trunk allow-pass vlan 10 20 30 40
port trunk pvid vlan 1
qu int g0/0/2
port link-type trunk
port trunk allow-pass vlan 10 20 30 40
port trunk pvid vlan 1
qu

SW3:

sy
sysname SW3
vlan batch 10 20 30 40 int g0/0/1
port link-type trunk
port trunk allow-pass vlan 10 20 30 40
port trunk pvid vlan 1
qu int g0/0/2
port link-type trunk
port trunk allow-pass vlan 10 20 30 40
port trunk pvid vlan 1
qu

SW4:

sy
sysname SW4
vlan batch 10 20 30 40 int g0/0/3
port link-type trunk
port trunk allow-pass vlan 10 20 30 40
port trunk pvid vlan 1
qu int g0/0/4
port link-type trunk
port trunk allow-pass vlan 10 20 30 40
port trunk pvid vlan 1
qu int g0/0/1
port link-type access
port default vlan 10
int g0/0/2
port link-type access
port default vlan 20
int g0/0/5
port link-type access
port default vlan 30
int g0/0/6
port link-type access
port default vlan 40
qu

本来下意识想配置vtp的, 但后来反应过来华为的设备不支持vtp, 只能手敲vlan, GVRP下次有空看看, 这段时间挺忙的...

配置验证

dis port vlan

2.3 要求交换机之间使用MSTP生成树协议,并且SW2为vlan10、20的根桥,vlan 30、40的备份根桥,SW3为vlan30、40的根桥,vlan 10、20的备份根桥。最终实现vlan10、vlan20从sw4—>sw2—>sw1,vlan30、vlan40从sw4—>sw3—>sw1转发。

配置命令

SW1:

stp mode mstp

stp region-configuration
region-name test
revision-level 10
instance 1 vlan 10 20
instance 2 vlan 30 40
active region-configuration
qu

SW2:

stp mode mstp

stp region-configuration
region-name test
revision-level 10
instance 1 vlan 10 20
instance 2 vlan 30 40
active region-configuration
qu stp instance 1 root primary
stp instance 2 root secondary

SW3:

stp mode mstp

stp region-configuration
region-name test
revision-level 10
instance 1 vlan 10 20
instance 2 vlan 30 40
active region-configuration
qu stp instance 2 root primary
stp instance 1 root secondary

SW4:

stp mode mstp

stp region-configuration
region-name test
revision-level 10
instance 1 vlan 10 20
instance 2 vlan 30 40
active region-configuration
qu

配置验证

查看stp的实例

dis stp instance instance-id

vlan 10:

tracert 192.168.10.254

vlan 30:

tracert 192.168.30.254

2.4 为了保证PC接入后快速进入数据的转发,需要在连接终端的链路配置边缘端口,同时为防止网络震荡,还需要进行BPDU保护设置。

配置脚本

SW4:

int g0/0/1
stp edged-port enable
int g0/0/2
stp edged-port enable
int g0/0/5
stp edged-port enable
int g0/0/6
stp edged-port enable
qu stp bpdu-protection
error-down auto-recovery cause bpdu-protection interval 10

BPDU防护只会针对边缘端口开启;

最后一句配置时将被BPDU防护关闭的接口配置10s后自动重新打开.

配置验证

终端拔线再连接, ping通网络的速度缩短:

为配置边缘端口前:

四轮ping才通

开启边缘端口后:

第一轮就能ping通, 效果还是很明显的!

2.5 为了避免网络拥塞导致环路的发生,请在交换机上配置环路保护功能。

环路保护需要在根端口和AP端口配置.

配置脚本

SW4:

dis stp brief

int g0/0/4
stp loop-protection
int g0/0/3
stp loop-protection
qu

先查看哪些端口为AP端口

配置验证

配置前:

配置后:

问题

1 无法成功验证BPDU防护未开启时的状态

将一台终端替换为交换机:

未开启BPDU防护:

很遗憾, 我并不知道如何查看端口是否还是边缘端口, 只能通过上面的蠢方法去对比边缘端口.

看起来依然是边缘端口, 推测可能是交换机未发送BPDU报文导致的.

这次开启抓包, 并为SW6配置stp.

sy
sysname SW6
stp mode mstp stp region-configuration
region-name test
revision-level 10
instance 1 vlan 10 20
instance 2 vlan 30 40
active region-configuration
qu

再次断开并连接, 依然是边缘端口的恢复速度:

没搞懂, 标记一个问题.

HCIP-进阶实验06-多实例生成树安全部署的更多相关文章

  1. Python进阶:函数式编程实例(附代码)

    Python进阶:函数式编程实例(附代码) 上篇文章"几个小例子告诉你, 一行Python代码能干哪些事 -- 知乎专栏"中用到了一些列表解析.生成器.map.filter.lam ...

  2. 20145236《网络对抗》进阶实验——64位Ubuntu 17.10.1 ROP攻击

    20145236<网络对抗>进阶实验--64位Ubuntu 17.10.1 ROP攻击 基础知识 ROP攻击 ROP全称为Retrun-oriented Programmming(面向返回 ...

  3. Java-Runoob-高级教程-实例-方法:06. Java 实例 – 方法覆盖

    ylbtech-Java-Runoob-高级教程-实例-方法:06. Java 实例 – 方法覆盖 1.返回顶部 1. Java 实例 - 方法覆盖  Java 实例 前面章节中我们已经学习了 Jav ...

  4. 20145236《网络对抗》进阶实验——Return-to-libc攻击

    20145236<网络对抗>进阶实验--Return-to-libc攻击 基础知识 Return-into-libc攻击方式不具有同时写和执行的行为模式,因为其不需要注入新的恶意代码,取而 ...

  5. JavaScript进阶系列06,事件委托

    在"JavaScript进阶系列05,事件的执行时机, 使用addEventListener为元素同时注册多个事件,事件参数"中已经有了一个跨浏览器的事件处理机制.现在需要使用这个 ...

  6. Java-Runoob-高级教程-实例-数组:06. Java 实例 – 数组获取最大和最小值

    ylbtech-Java-Runoob-高级教程-实例-数组:06. Java 实例 – 数组获取最大和最小值 1.返回顶部 1. Java 实例 - 数组获取最大和最小值  Java 实例 以下实例 ...

  7. Java-Runoob-高级教程-实例-字符串:06. Java 实例 - 字符串查找

    ylbtech-Java-Runoob-高级教程-实例-字符串:06. Java 实例 - 字符串查找 1.返回顶部 1. Java 实例 - 字符串搜索  Java 实例 以下实例使用了 Strin ...

  8. TypeScript进阶开发——ThreeJs基础实例,从入坑到入门

    前言 我们前面使用的是自己编写的ts,以及自己手动引入的jquery,由于第三方库采用的是直接引入js,没有d.ts声明文件,开发起来很累,所以一般情况下我们使用npm引入第三方的库,本文记录使用np ...

  9. SpringMVC HelloWorld实例开发及部署

    SpringMVC HelloWorld实例开发及部署 2017-01-24 目录 1 Tomcat及Eclipse Tomcat插件安装配置  1.1 Tomcat的安装  1.2 Eclipse ...

  10. Tomcat多实例单应用部署方案 (转)

    一.Tomcat部署的场景分析 通常,我们对tomcat部署需求可以分为几种:单实例单应用,单实例多应用,多实例单应用,多实例多应用. 对于第一种场景,如果不要求周期性地维护tomcat版本,一般的做 ...

随机推荐

  1. UML 图

    类的表示(Class) 第一层:显示类的名称,如果是抽象类,则就用斜体显示. 第二层:是类的特性,通常就是字段和属性. 第三层:是类的操作,通常是方法或行为(前面加号(+)表示public:减号(-) ...

  2. CentOS即将停止维护,拥抱阿里“龙蜥“(Anolis OS),VMware安装Anolis OS与介绍

    一.前言 大家在自己电脑来进行服务器的一些操作时,基本都是使用CentOS 7或者是CentOS 8,但是2021年底CentOS 8宣布停止了维护:CentOS 7 在2024年6月30日也会停止维 ...

  3. springboot多模块controller访问的问题

    参考 https://blog.csdn.net/qq_25091649/article/details/88429512 情况一:在主类直接写controller接口,能够访问到 @SpringBo ...

  4. mysql18-Show Profile和全局日志

    1.是什么 分析SQL执行带来的开销是优化SQL的重要手段.在MySQL数据库中,可以通过配置profiling参数来启用SQL剖析.该参数开启后,后续执行的SQL语句都将记录其资源开销,诸如IO,上 ...

  5. Could not execute query ---> MySql.Data.MySqlClient.MySqlException: You have an error in your SQL sy

    1.出现问题 执行sql查询时出现如题错误,原因是安装mysql-connector-net的版本过高,当前项目在用的mysql版本不符合:关于当前安装的mysql-connector-net版本的查 ...

  6. Cesium鼠标移动到模型上,给模型添加高亮轮廓(四)

    2023-01-09 Cesium虽然也支持两种方式(Entity和Primitive)加载3D Tiles数据, 但因为多数情况下3D Tiles数据都是成片区的数据,数据量比较大,所以为了保证性能 ...

  7. 【多线程与高并发】- 浅谈volatile

    浅谈volatile 目录 浅谈volatile 简介 JMM概述 volatile的特性 1.可见性 举个例子 总结 2.无法保证原子性 举个例子 分析 使用volatile对原子性测试 使用锁的机 ...

  8. ES6中的class对象和它的家人们

    在ES6中新增了一个很重要的特性: class(类).作为一个在2015年就出了的特性, 相信很多小伙伴对class并不陌生.但是在日常开发中使用class的频率感觉并不高(可能仅限于作者),感觉对c ...

  9. PostgresSql更改字段位置后,数据库异常

    SQL server的studio有一个功能,可以随意拖拽表字段,更改其位置并使之重新排序,有同事问起,Postgres是否也可以.Postgres每个字段的顺序是在系统表pg_attribute里面 ...

  10. kingbase字符类数据类型和oracle字符类型的区别

    为兼容Oracle的数据类型,KingbaseES扩展了Oracle的NUMBER.VARCHAR2.CHAR(n)和DATE类型.该措施使得移植Oracle的Create Table等DDL语句时, ...