目录
- 前言
- Ⅰ. VLAN 的基本原理
- VLAN 标签(VLAN Tag)
- VLAN 数据帧
- VLAN 的实现
- Ⅱ. VLAN 的划分方式
- Ⅲ. 端口类型
- Access 口
- Trunk 口
- Hybrid 口
- Ⅳ . VLAN 的应用
- VLAN 的规则
- 配置 VLAN
- 1. 创建 VLAN
- 2. 配置 VLAN
- ★Ⅴ . 实操案例
- 案例一
- 案例2
前言
以太网是一种基于CSMA / CD 的数据通信技术,其特征是共享通信介质.当主机数目较多时会导致安全隐患、广播泛滥、性能显著下降甚至造成网络不可用,这时出现了VLAN技术。
先明白一些概念:
- 端口(port):在通信设备中,一般指二层口,该口用于隔绝广播域,基于MAC地址转发,但本身不能设置任何地址;
- 接口(interface):在通信设备中,用于区别二层的端口,指的是三层口,该口可以配置IP地址,基于IP路由转发。
- 冲突域与广播域
- “在传统的局域网中,几个至几十个交换机连接一个大的局域网,一个局域网中的主机台数可能达到上千台,那么由于交换机只能隔绝冲突域,一个端口是一个冲突域,而不能隔绝广播域,会导致局域网内的ARP广播占用大量带宽影响性能,甚至影响网络的正常使用。此外成百上千的计算机在同一个局域网中也会影响网络安全性
VLAN:Virtual Local Area Network 虚拟局域技术
- 通过在交换机上部署VLAN机制,可以将一个规模较大的广播域在逻辑上划分成若干不同的、规模较小的广播域。
- 广播域:由于二层交换机总是对广播帧执行泛洪操作,结果让其他的计算机都会收到这个广播帧,所以把一个广播帧所能到达的整个范围称为二层广播域,俗称广播域(Broadcast Domain)。
- 一个交换网络其实就是一个广播域。一个VLAN就是一个广播域。
Ⅰ. VLAN 的基本原理
VLAN 标签(VLAN Tag)
- 数据在交换机内部一切操作都必须要有VLAN标签
- 报文中添加标识VLAN信息的字段使得交换机能够分辨不同VLAN的报文
VLAN 数据帧
- 原始以太网数据帧(无标记帧,Untagged帧):
- 标记帧 802.1Q Tag (Tagged帧):
VLAN 的实现
- 交换机在收到PC端发来的数据后打上Tag标签再在链路上传递,待发送到与目标主机直连的交换机后,由交换机再脱掉Tag标签把数据帧传送给相应主机。
- 对于VLAN隔离只发生在交换机上,对于用户是不知道的
Ⅱ. VLAN 的划分方式
- 基于端口的划分:
- 把一个接口打上标签,不管下面有多少台主机,只需要从端口收上来的数据,都会打上相应标签。
- 缺点:端口发生变化,VLAN标签也会变。
- 基于MAC地址的划分:
- (MAC1,MAC3),(MAC2,MAC4),根据数据帧的源MAC地址来划分VLAN。
- 基于IP子网的划分:
- 10.0.1.X ,10.0.2.X ,同一子网为同一VLAN标签
- 基于协议划分:
- IP / IPv6,同一协议为同一VLAN标签
- 基于策略的划分:1.2.3.4的结合,不同场景下使用不同策略
补充:
1.缺省VLAN —— PVID (Port VLAN ID) ,接口上的缺省VLAN,未手动设置VLAN时会自动打上此标签
- 缺省VLAN默认值为1,可手动更改数值,取值范围为 1- 4094
- 每个端口的PVID只能设置一个
2.VLAN ID :VLAN标识符 12bit 大小,一共就是212个VLAN,可创建的VLAN范围:1 - 4094
3.映射表:记录了MAC地址与VLAN ID 的关联情况
Ⅲ. 端口类型
Access 口
- 性质:通常放在交换机上用于连接主机或者路由器的直连链路,只能通过一种VLAN,用于单纯传输untagged帧(主机无法处理的帧)
- 工作原理:
1、接口收到 Untagged 帧:打上取决于划分类型的tag标签
2、接口收到 Tagged 帧:只接收跟本身PVID值一样的数据,做审查工作,标签不一样不能进来
发:
1、检查数据本身和出口设置的VLAN是否一样,一样的话去掉标往外传输Untagged帧
2、不一样则出不去
Trunk 口
- 性质:放在交换机上用于交流交换机之间的帧互通,也就是可以通过不同标签的VLAN
- 工作原理:
1、接口收到 Untagged 帧:打上PVID,默认为1
2、接口收到 Tagged 帧:审视,检查,可手动配置可放行的白名单,不存在就丢弃数据
发:
1、如果要出去的数据VLAN标签与trunk白名单表和端口PVUD两者全部一样,则脱掉标签放行,往外传输Untagged帧
2、要出去的数据VLAN标签与trunk白名单表一样,但和端口PVUD不一致,,则不脱掉标签直接放行,往外传输Tagged帧
Hybrid 口
- 性质:Access 与 Trunk 口的结合,可连接主机也可以连接交换机,可通过多个VLAN,也可以让数据带着标签走,同时可以脱掉多种标签
- 工作原理:
1、接口收到 Untagged 帧:打上PVID(前提是PVID允许通过),默认为1
2、接口收到 Tagged 帧:审视,检查,可手动配置可放行的白名单,不存在就丢弃数据
发(有点绕,细品):
1、交换机接口可设置untag列表,当数据从接口出去时,会先查看白名单,再查看untag表,若表中存在对应数据标签,则会脱掉标签,放通数据。
2、若untag表中没有对应标签,则会查看tag表。若存在对应标签,则会放通,若不存在,则丢弃数据。
Ⅳ . VLAN 的应用
VLAN 的规则
- 分配原则:按业务规划 、按部门规划、按应用规划
- 分配技巧:为了提高 VLAN ID 的连续性,通常采用 VLAN ID 与子网关联的方式进行分配(某一网段为某一VLAN)
- VLAN的规划实例:基于场景采用不同方式的VLAN规划
配置 VLAN
1. 创建 VLAN
命令:vlan “vlan-id”
#创建单条VLAN
vlan-id取值:1 - 4094 (整数)
[Huawei]vlan 1
#创建一条 VLAN 1 并进入VLAN试图,如果此VLAN存在,则直接进入试图
[Huawei-vlan1]
命令:vlan batch “vlan-id1 (to) vlan-id 2”
#创建多条VLAN
[Huawei]vlan batch 2 3 #创建 VLAN 1 和 VLAN 2
Info: This operation may take a few seconds. Please wait for a moment...done.
[Huawei]vlan batch 4 to 6 #创建 VLAN 4、5、6
Info: This operation may take a few seconds. Please wait for a moment...done.
[Huawei]
2. 配置 VLAN
命令1:port link-type access / trunk / hybrid
#在接口视图下配置当前接口链路类型,此时自动添加默认PVID为1
[Huawei]int g 0/0/1
#进入需要配置的接口
[Huawei-GigabitEthernet0/0/1]port link-type access
#配置接口类型为Access,默认PVID为1
[Huawei-GigabitEthernet0/0/1]dis port vlan active
#查看端口下活动VLAN以及参数
T=TAG U=UNTAG
-------------------------------------------------------------------------------
Port Link Type PVID VLAN List
-------------------------------------------------------------------------------
GE0/0/1 access 1 U: 1
......
命令2:port default vlan “vlan-id”
#接口视图下,配置接口的缺省VLAN并同时加入这个VLAN
[Huawei]vlan 2 #先创建VLAN
[Huawei-vlan2]int g0/0/1
[Huawei-GigabitEthernet0/0/1]port default vlan 2
#将 0/0/1 口加入VLAN2
[Huawei-GigabitEthernet0/0/1]dis port vlan active
T=TAG U=UNTAG
-------------------------------------------------------------------------------
Port Link Type PVID VLAN List
-------------------------------------------------------------------------------
GE0/0/1 access 2 U: 2
......
命令3:port trunk allow-pass vlan “vlan-id1 (to) vlan-id2 / all”
#接口视图下,配置Trunk类型接口加入的VLAN(白名单)
[Huawei-GigabitEthernet0/0/1]port link-type trunk
#配置接口类型
[Huawei-GigabitEthernet0/0/1]port trunk allow-pass vlan 2
#只允许vlan标签为2的数据通过
[Huawei-GigabitEthernet0/0/1]port trunk allow-pass vlan 1 to 3
#只允许vlan标签为1、2、3的数据通过
[Huawei-GigabitEthernet0/0/1]port trunk allow-pass vlan all
#允许所有vlan标签通过
命令4:port trunk pvid vlan “vlan-id”
#在接口视图下,配置Trunk类型接口的缺省VLAN
[Huawei]vlan 3
[Huawei-vlan3]int g0/0/1
[Huawei-GigabitEthernet0/0/1]port trunk pvid vlan 3
#配置接口的缺省VLAN为3
[Huawei-GigabitEthernet0/0/1]dis port vlan active
T=TAG U=UNTAG
-------------------------------------------------------------------------------
Port Link Type PVID VLAN List
-------------------------------------------------------------------------------
GE0/0/1 trunk 3 U: 3 #Untagged帧通过会打上vlan 3标签
T: 2 #只允许vlan标签为2的Tagged帧通过
命令5:
port hybird untagged/tagged vlan “vlan-id1 (to) vlan-id 2”
#接口视图下,配置Hybird接口并加入指定VLAN到对应表中(tag表、untag表)
[Huawei-GigabitEthernet0/0/1]port hybrid untagged vlan 1
#配置 0/0/1 接口为hybrid接口且加入vlan1到untag表
[Huawei-GigabitEthernet0/0/1]port hybrid untagged vlan 1 to 3
[Huawei-GigabitEthernet0/0/1]port hybrid tagged vlan 1
#配置 0/0/1 接口为hybrid接口且加入vlan1到tag表
[Huawei-GigabitEthernet0/0/1]port hybrid tagged vlan 1 to 3
命令6(可选):port hybrid pvid vlan “vlan-id”
#配置Hybrid接口的缺省VLAN
[Huawei-GigabitEthernet0/0/1]port hybrid pvid vlan 3 #配置此hybrid接口缺省vlan为3
★Ⅴ . 实操案例
注:两个案例均省略了设备ip的配置过程,只写出了主要vlan的配置过程,ip配置请自行补全
案例一
1.在交换机1上配置Access口,并加入对应VLAN
#方法1:
[LSW1]vlan 10
[LSW1-vlan10]int e0/0/1
[LSW1-Ethernet0/0/1]port link-type access
[LSW1-Ethernet0/0/1]port default vlan 10
#配置此接口pvid为10且将此接口加入vlan10
#方法2:
[LSW1-Ethernet0/0/1]port link-type access
[LSW1]vlan 10
[LSW1-vlan10]port g0/0/1
#在定义了接口类型后在vlan视图下将此接口加入vlan10
#0/0/2同理
2.在交换机1配置trunk口,并创建对应的允许通过列表(白名单)
[LSW1]vlan 20
[LSW1-vlan20]int e0/0/3
[LSW1-Ethernet0/0/3]port link-type trunk #配置此接口类型为trunk口
[LSW1-Ethernet0/0/3]port trunk pvid vlan 1 #配置此接口pvid为1
[LSW1-Ethernet0/0/3]port trunk allow-pass vlan 10 20
#添加vlan10、vlan20到允许通过列表(白名单)
3.验证配置 dis vlan
[LSW1]dis vlan
The total number of vlans is : 3
--------------------------------------------------------------------------------
U: Up; D: Down; TG: Tagged; UT: Untagged;
MP: Vlan-mapping; ST: Vlan-stacking;
#: ProtocolTransparent-vlan; *: Management-vlan;
--------------------------------------------------------------------------------
VID Type Ports
--------------------------------------------------------------------------------
1 common UT:Eth0/0/3(U) Eth0/0/4(D) Eth0/0/5(D) Eth0/0/6(D)
Eth0/0/7(D) Eth0/0/8(D) Eth0/0/9(D) Eth0/0/10(D)
Eth0/0/11(D) Eth0/0/12(D) Eth0/0/13(D) Eth0/0/14(D)
Eth0/0/15(D) Eth0/0/16(D) Eth0/0/17(D) Eth0/0/18(D)
Eth0/0/19(D) Eth0/0/20(D) Eth0/0/21(D) Eth0/0/22(D)
GE0/0/1(D) GE0/0/2(D)
10 common UT:Eth0/0/1(U)
# 0/0/1口 处于up(开启)状态,untagged状态的数据进来会被自动打上vlan 10 标签变为tagged状态
TG:Eth0/0/3(U)
# 0/0/3口 处于up(开启)状态,将vlan 10添加进白名单,tagged状态的数据出去时会查此白名单和端口pvid,但我们此时是配置了pvid为1,所以当vlan 标签10出去时不会脱掉标签直接放行
20 common UT:Eth0/0/2(U)
# 0/0/2口 处于up(开启)状态,untagged状态的数据进来会被自动打上vlan 20 标签变为tagged状态
TG:Eth0/0/3(U)
# 0/0/3口 处于up(开启)状态,将vlan 20添加进白名单,tagged状态的数据出去时会查此白名单和端口pvid,但我们此时是配置了pvid为1,所以当vlan 标签20出去时不会脱掉标签直接放行
VID Status Property MAC-LRN Statistics Description
--------------------------------------------------------------------------------
1 enable default enable disable VLAN 0001
10 enable default enable disable VLAN 0010
20 enable default enable disable VLAN 0020
ping测试要求:PC1能通PC3,PC2能通PC4
案例2
LSW1:
[LSW1]vlan batch 10 20 100
Info: This operation may take a few seconds. Please wait for a moment...done.
[LSW1]int e0/0/1
[LSW1-Ethernet0/0/1]port link-type hybrid
#配置1口为hybrid口
[LSW1-Ethernet0/0/1]port hybrid pvid vlan 10
#设置此接口pvid为10
[LSW1-Ethernet0/0/1]port hybrid untagged vlan 10 100
#将vlan 10 、vlan 100 添加进Untag表
[LSW1-Ethernet0/0/1]int e0/0/2
[LSW1-Ethernet0/0/2]port link-type hybrid
[LSW1-Ethernet0/0/2]port hybrid untagged vlan 20 100
#将vlan 20 、vlan 100 添加进Untag表
[LSW1-Ethernet0/0/2]int e0/0/3
[LSW1-Ethernet0/0/3]port link-type hybrid
[LSW1-Ethernet0/0/3]port hybrid tagged vlan 10 20 100
#将vlan 10 、vlan 20、vlan 100 添加进tag表
LSW2:
[LSW2]vlan batch 10 20 100
Info: This operation may take a few seconds. Please wait for a moment...done.
[LSW2]int e0/0/1
[LSW2-Ethernet0/0/1]port link-type hybrid
[LSW2-Ethernet0/0/1]port hybrid pvid vlan 100
[LSW2-Ethernet0/0/1]port hybrid untagged vlan 10 20 100
[LSW2-Ethernet0/0/1]int e0/0/3
[LSW2-Ethernet0/0/3]port link-type hybrid
[LSW2-Ethernet0/0/3]port hybrid tagged vlan 10 20 100
注:命令配置完后请自行查看并分析vlan表,进行ip配置后自行进行ping测试!