生成树协议
为什么会有生成树协议?
追根溯源: For提高网络可靠性–>冗余链路–>发现冗余链路有问题–>提出生成树协议STP
在以太网网络中为了进行链路备份,提高网络可靠性,通常会使用冗余链路。
冗余链路,这是的冗余链路是二层环路,冗余就是有容错率,一个地方出错还有other solution.
但由于冗余链路采用的是多一根线路链接连接下一级交换机,导致广播风暴,就是循环重复地泛洪。而且还会导致MAC地址漂移。
STP通过构造一棵树来消除交换网络中的环路。
运行STP算法,判断网络中存在环路的地方并阻断冗余链路,将环路网络修剪成无环路的树形网络,避免数据帧在环路网络中的增生和无穷循环。
生成树具体表现:
交换机上运行STP协议,会通过报文监控网络中的拓扑结构变化调整,动态响应网络拓扑变化。
生成树协议应用于园区网络的二层网络中,进行链路备份和消除环路。
由于局域网规模的不断扩大,生成树已经成为了当前最重要的局域网协议之一。
VLAN原理与配置
以太网是一种基于CSMA/CD的数据网络通信技术,是共享通道介质。当主机的数目较多时会导致安全隐患、广播泛滥、性能显著下降甚至网络不可用。这时 VLAN 的出现解决了这个问题。
VLAN:虚拟局域网技术
如图,如果发送一个广播帧或未知的单播帧时,数据帧被泛洪到达了多个非目的主机甚至整个大广播域。广播域越大,造成的安全问题、垃圾流量问题越严重。
引入VLAN:
VLAN的好处:
- 灵活构建虚拟工作组:同一个工作组不用局限在同一个物理范围,网络构建和维护更方便灵活。如公司每个部门的工作在很多方面会变得更加方便。
- 限制广播域:广播域被限制在一个VLAN内,节省带宽,提高网络处理能力。
- 增强局域网的安全性:不同VLAN在传输的时候是相互隔离的
- 提高网络的健壮性:故障限制会被限制一个VLAN内,不会影响其他VLAN的工作。
VLAN的实现过程
识别VLAN–>划分VLAN–>处理VLAN数据帧(但我发现前两个顺序应该调换一下,因为没有先划分VLAN的话,数据帧上怎么标记然后来识别呢。)
划分VLAN–>识别VLAN–>处理VLAN数据帧
> 划分VLAN
划分方式如下:
-
基于接口:根据交换机的接口来划分VLAN。
网络管理员预先给交换机的每个接口配置不同的PVID,当一个数据帧进入交换机时,如果没有带VLAN标签,该数据帧就会被打上接口指定PVID的标签 -
基于MAC地址:根据数据帧的源MAC地址来划分VLAN。
网络管理员预先配置MAC地址和VLAN ID 映射关系表,当收到未标记的帧时,就依据该表给数据帧添加指定的VLAN标签 -
基于IP子网划分:基于数据帧的源IP地址和子网掩码来划分VLAN。
网络管理员预先配置IP地址和VLAN ID映射关系表。当收到… -
基于协议划分:根据数据帧所属的协议(族)及封装格式来划分VLAN。
网络管理员预先配置以太网中的协议域和VLAD 的映射关系,当收到… -
基于策略:根据配置的策略划分VLAN,能实现多种组合的划分方式,包括接口、MAC地址、IP地址等。
网络管理员预先配置策略,当收到…
规律就是:基于AA,就根据AA来划分VLAN,当收到未标记的帧时,打上XX制定的标签,然后这个数据帧将在制定VLAN中传输。
但是知道了理论上的划分,还要知道在具体的物理知识—交换机内部是怎么操作的–> 交换机的接口
处理VLAN数据帧
以太网二层接口类型
基于接口的VLAN划分依赖于交换机的接口类型:Access接口–Trunk接口–Hybrind接口。
Access接口: 交换机上常用来连接用户PC、服务器等终端设备的接口。Access接 口所连接的这些设备的网卡往往只收发无标记帧。Access接 口只能加入一个VLAN。一般用于和不能识别Tag的用户终端。
Trunk接口:允许多个VLAN的数据帧通过,这些数据帧通过802.1QTag实现区分。Trunk接口常用于交换机之间的互联,也用于连接路由器、防火墙等设备的子接口。
对于Trunk接口,除了要配置PID外,还必须配置允许通过的YLAN ID列表,其中VLAN 1是默认存在的。
Trunk接口特点:
。Trunk接口仅允许VLAN ID在允许通过列表中的数据帧通过。
Trunk接口可以允许多个VLAN的帧带Tag通过,但只允许一个VLAN的帧从该类接口上发出时不带Tag (即剥除Tag)。
Trunk接口接收数据帧:
。当Trunk接口从链路 上收到- -个Untagged帧,交换机会在这个帧中添加上VID为PVID的Tag,然后查看PVID是否在允许通过的VLAN ID列表中。如果在,则对得到的Tagged帧进行转发操作;如果不在,则直接丢弃得到的Tagged帧。
。当Trunk接口从链路.上收到一个Tagged帧, 交换机会检查这个帧的Tag中的V ID是否在允许通过的VLAN ID列表中。如果在,则对这个Tagged帧进行转发操作;如果不在,则直接丢弃这个Tgged帧。
Trunk接口发送数据帧:
当一个Tagged帧从本交换机的其他接口到达一个Trunk接口后 ,如果这个帧的T ag中的VID不在允许通过的VLAN ID列表中,则该Tagged帧会被直接丢弃。
。当一个Tagged帧从本交换机的其他接口到达一个Trunk接口后 ,如果这个帧的Tag中的VID在允许通过的VLAN ID列表中,则会比较该Tag中的VID是否与接口的PVID相同:
●如果相同,则交换机会对这个Tagged帧的Tag进行剥离,然后将得到的Untagged帧从链路上发送出去;
●如果不同,则交换机不会对这个Tagged帧的Tag进行剥离,而是直接将它从链路.上发送出去。
可以把这下图的例子,自己分析一下,检测一下自己。
**Hybri d接口:**既可以用于连接不能识别Tag的用户终端(如用户主机、服务器等) ,也可以用于连接交换机、路由器以及可同时收发Tagged帧和Untagged帧的语音终端、AP。 tip: 华为设备默认的接口类型是Hybrido
> 识别VLAN数据帧
VLAN的之间的数据输送同样是通过发送数据帧,不过在VLAN中的传输中需要给这个数据帧打上标签(Tag),让其易于在经过交换机的时能够正确的发送到目的主机。
通过案例熟悉下基础代码
创建VLAN:
[SW1] vlan 10
[SW1-vlan10] quit
[SW1] vlan 20
[SW1-vlan20] quit
[SW2] vlan batch 10 20
配置Access接口,并加入对应的VLAN:
[Sw1] inter face GigabitEthernet 0/0/1
[SW1 -GigabitEthernet0/0/1] port link-type access
[SW1 -Gigab itEthernet0/0/1] port default vlan 10
[SW1] inter face Gigab. ittthernet 0/0/2
[SW1-Gigab itEthernet0/0/2] port link-type access
[SW1] ylan 20
[SW1 -vlan20] port Gigabi tEtherne t0/0/2
[SW1-vlan20] quit
配置Trunk接口,并创建对应的允许通过列表:
[SW1] inter face Gigab. itthernet 0/0/3
[SW1 -GigabitEthernet0/0/3] port link-type trunk
[SW1 -Gigab itEthernet0/0/3] port trunk pvid vlan 1
[SW1-Gigab itEthernet0/0/3] port trunk allow- pass vlan 10 20
注: Sy2配置与sw1类似
验证配置
命令: display vlan命令用来查看VLAN的相关信息。
●输出信息:
Tagged/Untagged Port: 手动加入本VLAN的接口,分为Tagged和Untagged方式。
VID或VLAN ID: VLAN编号。
Type或VLAN Type: VLAN类型, common指 普通VLAN。
Ports:加入该VLAN的接口。