以太网是一种基于CSMA/CD的数据网络通信技术,其特征是共享通信介质。当主机数目较多时会导致安全隐患、广播泛滥、性能显著下降甚至造成网络不可用。 在这种情况下出现了VLAN (Virtual Local Area Network)技术来解决上述问题。 在本文中,将介绍VLAN技术的相关概念,介绍不同二层接口的工作原理,并且会介绍VLAN的应用及其数据转发原理和基础配置。
一、交换机知识补充
1、交换机的三种数据帧处理行为:
泛洪:从一个接口进,从其他所有接口出 ---一对多
转发:从一个接口进,从另外一个接口出 ---一对一
丢弃:从一个接口进,不出
2、交换机对不同类型的数据帧的处理行为:
单播:交换机收到一个单播数据帧,查看交换机 的MAC地址表中是否有该数据帧的目的MAC地址
①没有,直接泛洪
②有,查看发出去的接口是否是接收数据帧的接口,I:是,丢弃;II:不是,转发
广播:收到一个广播数据帧,直接泛洪
二、VLAN基础知识
1、VLAN是什么,能干什么
vlan作用:隔离广播域
vlan的划分:基于接口(比较常见,不同的接口划分入不同的vlan)、基于MAC地址(针对终端经常移动,但是 希望vlan不变的这种场景)、基于子网、基于协议、基于策略
2、交换机上的接口类型:Access 、Trunk、Hybrid
- Access接口
交换机上常用来连接用户PC、服务器等终端设备的接口。Access接口所连接的这些设备的网卡往往只收发无标记帧。Access接口只能加入一个VLAN。只能允许一个vlan通过。
Access口的转发和接收原则:
接收原则:①收到不带标签的数据帧,打上标签,vlan id=端口的PVID
②收到带标签的数据帧,检查数据帧vlan id是否和端口的PVID相同,相同直接接收;不同拒绝接收
发送原则:①数据帧vlan id和端口PVID 相同,剥离标签发送;
②数据帧vlan id和端口PVID 不同,禁止发送。
- Trunk接口
Trunk接口允许多个VLAN的数据帧通过,这些数据帧通过802.1Q Tag实现区分。Trunk接口常用于交换机之间的互联,也用于连接路由器、防火墙等设备的子接口。
Trunk口转发接收原则:
接收原则:①收到不带标签的数据帧,打上标签,vlan id=端口的PVID,然后查看该vlan id是否在允许列表中,是--接收,不是--拒绝
②收到带标签的数据帧,查看该vlan id是否在允许列表中,是--接收,不是--拒绝
发送原则:查看vlan id是否在允许列表中,I:不是--拒绝发送;II:是,查看接口的PVID和vlan id是否相同,相同--剥标签发送;不同--直接发送。
- Hybrid接口 ---华为设备上独有 的接口类型
Hybrid接口与Trunk接口类似,也允许多个VLAN的数据帧通过,这些数据帧通过802.1Q Tag实现区分。用户可以灵活指定Hybrid接口在发送某个(或某些)VLAN的数据帧时是否携带Tag。
hybrid口转发接收原则:
接收原则:①收到不带标签的数据帧,打上标签,vlan id=端口的PVID,然后查看该vlan id是否在允许列表中,是--接收,不是--拒绝
②收到带标签的数据帧,查看该vlan id是否在允许列表中,是--接收,不是--拒绝
发送原则:查看vlan id是否在允许列表中,I:不是--拒绝发送;II:是,是否带标签发送取决于接口的配置。
三、VLAN基础配置
[S1]vlan 10 --创建单个vlan
[S2]vlan batch 10 20--创建多个vlan
[S2]display vlan 查看创建的vlan
[S2]display port vlan 查看所有的端口的类型以及PVID
[S1-GigabitEthernet0/0/1]port link-type access--设置接口类型为access
[S1-GigabitEthernet0/0/1]port default vlan 10--设置access接口的PVID为10
[S2-vlan10]port g0/0/2 --设置access接口的PVID为10--和上一条命令二选一即可
[S1-GigabitEthernet0/0/3]port link-type trunk 设置接口类型为trunk口
[S1-GigabitEthernet0/0/3]port trunk allow-pass vlan 10 20--设置trunk口的允许列表,允许vlan10、20通过
[S1-GigabitEthernet0/0/3]undo port trunk allow-pass vlan 1--端口默认通过vlan1,设置不允许vlan1通过
[S1-GigabitEthernet0/0/3]port trunk pvid vlan 10 --设置trunk接口的PVID为10
[S3-GigabitEthernet0/0/1]port link-type hybrid --设置接口类型为hybrid口
[S3-GigabitEthernet0/0/1]port hybrid pvid vlan 10--设置hybrid接口的PVID
[S3-GigabitEthernet0/0/1]port hybrid untagged vlan 10 100--①设置hybrid口的允许列表,允许vlan10 、100通过;②设置hybrid发送vlan10、100数据帧剥离标签发送
基于MAC地址绑定vlan
[S3-vlan10]mac-vlan mac-address 5489-981F-71C7--在vlan视图下,将MAC地址和vlan进行绑定
[S3-GigabitEthernet0/0/1]mac-vlan enable --在接口下开启Mac地址和vlan绑定的功能