系列文章目录
一、前言
从软件测试工程师转型网络安全工程师的小菜鸟,欢迎批评指正~欢迎一起交流~
二、术语解释
VLAN:VLAN(Virtual Local Area Network)是一种虚拟局域网技术,用于在物理网络基础上逻辑上划分不同的广播域。通过VLAN,可以将不同的网络设备划分到不同的虚拟网络中,实现逻辑隔离和灵活的网络管理。
三、操作步骤
1、绘制拓扑图
本次教程的目标:PC1能访问PC3,无法访问PC2和PC4。
使用技术:通过VLAN技术实现。
选择S5700路由器,参考下图画出拓扑图,并启动所有设备。
2、配置PC
3、配置交换机
2个交换机的命令是一样的,下面仅贴一个交换机的配置命令:
4、结果验证
四、知识拓展——PVID和Vlan ID的关系
1、VLAN原理
VLAN
的原理是通过在网络交换机上进行逻辑划分,将一个局域网(LAN)
划分成多个虚拟局域网(VLAN)
。每个VLAN
被视为一个独立的广播域,可以有不同的网络设备和主机。交换机通过在数据帧中添加VLAN
标签来标识不同的VLAN
成员,从而实现逻辑上的隔离和分离。
2、VLAN
标签
IEEE 802.1q
是虚拟局域网(VLAN)
协议的标准。它主要规定了VLAN
的实现方法,为标识带有VLAN
成员信息的以太帧建立了一种标准方法。它在传统以太网帧中插入
4个
字节的802.1q tag
字段,如下截图,分别是传统以太网帧格式和插入802.1q
标签后的数据帧格式:
802.1q tag
字段所包括的4个字段
含义如下:
1)TPID:Tag Protocol Identifier
,标签协议标识符,占2个
字节,表明这是一个添加了IEEE802.1q
标签的帧,其值=0x8100
,表示封装了IEEE802.1q VLAN
协议。
2)PRI:Priority
,优先级,占3位
,表示0~7
,一共8个
优先级,其值越大,优先级越高。
3)CFI:Canonical Format Idicator
,标准格式指示器,占1位,用来兼容以太网和令牌环网。
4)VID:VLAN Identified
,VLAN
标识,占12
位,指明VLAN的ID
,取值范围为0~4095
,共4096
个,但由于0和4095
为协议保留取值,所以VLAN ID
的实际有效取值范围是1~4094
。每个进入支持802.1q
协议的交换机发送出来的数据包都会含这个域,以指明自己属于哪一个VLAN
。
3、VLAN
的划分方式
VLAN
的划分有以下5种
方法,如下表:
VLAN 划分方式 | VLAN 10 | VLAN 20 |
---|---|---|
基于接口 | GE0/0/1、GE0/0/2 | GE0/0/3、GE0/0/4 |
基于MAC地址 | MAC1、MAC2 | MAC3、MAC4 |
基于IP地址 | 10.10.1.* | 10.10.2.* |
基于协议 | IP | IPv6 |
基于策略 | 10.10.1.*+GE0/0/1+MAC1 | 10.10.2.*+GE0/0/2+MAC2 |
4、什么是PVID
和VID
PVID
:即Port Default VLAN ID
,端口缺省VLAN ID
,即一个端口缺省属于的VLAN
。也就是缺省VLAN
就是PVID
。当一个数据帧进入交换机端口时,如果没有带VLAN
标签,则该数据帧会被打上端口的PVID
,如果进入的帧已经带有VLAN
标签,那么交换机不会再增加VLAN
标签,即使端口已经配置了PVID
,对VLAN
帧的接收处理由二层端口类型来决定。
VID
:即VLAN ID
,VLAN
标识。
在ENSP
模拟器拖入一个交换机并启动,不用配置,通过dis port vlan命令查看:
可以看出,缺省情况下,所有端口的PVID=1,
同时,用dis vlan命令查看:
可以看出,缺省情况下,所有端口都属于VLAN1
,即VLAN0001
,**VID=1
**,所有端口都处于untag
状态。
下面在交换机上划分2
个VLAN
,分别设置1和2号口为access
口,然后24口设为trunk
口。然后查看PVID
的变化情况:
可以看出:
GigabitEthernet0/0/1
为access口,PVID=10
GigabitEthernet0/0/2
为access口,只允许VLAN20
通过,PVID=20
GigabitEthernet0/0/24
为trunk口,允许通过的VLAN
为1-4094
,PVID
=1
总结如下:
比较项 | 内容 |
---|---|
PVID | 每个端口所属的VLAN 。对于一个端口,它只能有一个 PVID ,但可以属于多个VLAN 。当接收到一个不带 tag 头的数据包时,交换机将根据PVID 为该数据包添加相应的VLAN 标签。 |
VLAN ID | VLAN ID 是用于标识VLAN 的标识符,用于在交换机上将端口分配给特定的VLAN 。每个 VLAN 都需要一个唯一的VLAN ID ,以便在网络中区分不同的VLAN 。VLAN ID 通常在创建VLAN 时分配给每个VLAN ,并且可以根据需要进行更改。 |
另外,PVID
的值可以修改,一般是用于AP本地转发时需要配置。
5、以太网二层交换机接口类型
这里通过接口类型说明PVID
、VID
及什么时候打标签,什么时候去标签。
1.Access接口
Access
接口口主要是用来连接用户主机的二层以太网端口,它有一种最主要的特性是仅允许一个VLAN
的帧通过,反过来也就是Access
端口仅可以加入一个VLAN
中,且Access
端口发送的以太网帧永远是Untagged(不带标签)的。
进入该接口的数据帧处理方式如下:
接口类型 | 接收前的帧 | 处理方式 | 接收后的帧 |
---|---|---|---|
Access | 无标记帧 (untagged) | 接收该帧,并打上该接口PVID 的tag | 带该接口的PVID |
Access | 有标记帧 (tagged) | 当VID=PVID 时,接收当 VID≠PVID 时,丢弃 | 只有带VID=PVID 的帧 |
从该接口发出的数据帧处理方式如下:
接口类型 | 发送前的帧 | 处理方式 | 接收后的帧 |
---|---|---|---|
Access | 帧的VID=PVID | 先剥离tag ,再发出 | 无tag 的数据帧 |
Access | 帧的VID≠PVID | 禁止从该接口发出 | 无数据帧 |
2.Trunk接口
Trunk
接口是用来连接与其他交换机的二层以太网端口。它的最主要特性是允许多个VLAN
的帧通过,并且所发送的以太网帧都是带标签的,除了发送VLANID
与PVID
一致的VLAN
帧。
进入该接口的数据帧处理方式如下:
接口类型 | 接收前的帧 | 处理方式 | 接收后的帧 |
---|---|---|---|
Trunk | 无标记帧 (untagged) | 打上端口PVID :当 PVID 在允许通过的VLAN 中时,接收当 PVID 不在允许通过的VLAN 时,丢弃 | 带该接口的PVID |
Trunk | 有标记帧 (tagged) | 当VID∈ [可通过VLAN ]时,接收当 VID 不∈[可通过VLAN ]时,丢弃 | 带原VLAN tag 的帧 |
从该接口发出的数据帧处理方式如下:
接口类型 | 发送前的帧 | 处理方式 | 接收后的帧 |
---|---|---|---|
Trunk | 帧的VID=PVID 且VID 允许通过 | 先剥离tag ,再发出 | 无tag 的数据帧 |
Trunk | 帧的VID≠PVID | VID 允许通过,则保留tag 发送VID 不允许通过,则禁止 | 带原VLAN tag 的帧 |
3.Hybrid接口
Hybrid
接口是以上端口和Trunk
端口的混合体,它们具有共同的特性,是一种特殊的二层以太网端口。所以该端口既可以连接用户主机,又可以连接其他交换机、路由器设备。同时Hybrid
端口又允许一个或多个VLAN
的帧通过,并可选择以带标签或者不带标签的方式发送数据帧。