问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

VLAN技术详解:原理、应用与实战指南

创作时间:
作者:
@小白创作中心

VLAN技术详解:原理、应用与实战指南

引用
CSDN
1.
https://blog.csdn.net/NWB2580/article/details/145821627

VLAN(Virtual Local Area Network,虚拟局域网)是现代网络设计中不可或缺的技术。它通过逻辑隔离广播域,提升了网络的安全性、灵活性和可管理性。本文将从基础概念出发,深入解析VLAN的原理、配置方式、跨VLAN通信方案及扩展技术。

一、VLAN的作用与价值

1. 传统局域网的局限性

  • 广播风暴:传统局域网(LAN)中所有设备处于同一广播域,广播流量可能导致网络拥塞。
  • 安全性不足:所有设备可直接通信,难以隔离敏感数据。
  • 管理僵化:物理拓扑变更需重新布线,灵活性差。

2. VLAN的核心优势

  • 广播域隔离:每个VLAN是一个独立的广播域,减少不必要的流量。
  • 增强安全性:不同VLAN的通信需通过路由或ACL控制,防止横向渗透。
  • 灵活组网:基于逻辑而非物理位置划分网络,简化管理。
  • 资源优化:支持基于业务、部门或安全等级划分VLAN(如财务VLAN、访客VLAN)。

二、VLAN的实现原理

1. VLAN的划分方式

  • 基于端口划分
    将交换机的物理端口绑定到特定VLAN(最常用)。
Switch(config)# interface GigabitEthernet0/1                 //进入接口G0/1
Switch(config-if)# switchport mode access                    //交换模式为access 
Switch(config-if)# switchport access vlan 10                 //将接口划分到vlan10中  
  • 基于MAC地址划分
    根据设备的MAC地址动态分配VLAN(适用于移动终端)。

  • 基于协议/IP子网划分
    根据IP地址或协议类型(如IPv4/IPv6)划分VLAN。

2. VLAN标签(802.1Q)

  • 帧格式
    在以太网帧的源MAC地址后插入4字节的VLAN标签(Tag)。

  • TPID:固定值0x8100,标识802.1Q帧。

  • PRI:3位优先级(用于QoS)。

  • CFI:1位规范格式指示符。

  • VID:12位VLAN ID(范围1-4094)。

  • Native VLAN
    未打标签的流量默认属于Native VLAN(也叫本征vlan,通常为VLAN 1)。

3. 配置实例(以思科Cisco为例)

设备名称 IP 子网掩码
PC0 192.168.1.1 255.255.255.0
PC1 192.168.1.2 255.255.255.0
PC2 192.168.1.3 255.255.255.0
PC3 192.168.1.4 255.255.255.0

PC配置IP地址如下图 :

SW1配置如下:

Switch>en                                               //进入特权模式
Switch#conf t                                           //进入全局配置模式
Switch(config)#vlan 10                                  //创建一个vlan编号为10的虚拟局域网
Switch(config-vlan)#int f0/1                            //进入f0/1接口
Switch(config-if)#switchport access vlan 10             //将接口划分到vlan10中
Switch(config-if)#ex                                    
Switch(config)#vl 20                                    //创建一个vlan编号为20的虚拟局域网
Switch(config-vlan)#int f0/2                            //进入f0/2接口
Switch(config-if)#sw acc vl 20                          //创建一个vlan编号为20的虚拟局域网     
Switch(config-if)#int f0/3                              //进入f0/3接口
Switch(config-if)#switchport mode trunk                 //将接口设置为Trunk模式

SW2配置如下:

Switch>en                                               //进入特权模式
Switch#conf t                                           //进入全局配置模式
Switch(config)#vlan 10                                  //创建一个vlan编号为10的虚拟局域网
Switch(config-vlan)#int f0/1                            //进入f0/1接口
Switch(config-if)#switchport access vlan 10             //将接口划分到vlan10中
Switch(config-if)#ex                                    
Switch(config)#vl 20                                    //创建一个vlan编号为20的虚拟局域网
Switch(config-vlan)#int f0/2                            //进入f0/2接口
Switch(config-if)#sw acc vl 20                          //创建一个vlan编号为20的虚拟局域网     
Switch(config-if)#int f0/3                              //进入f0/3接口
Switch(config-if)#switchport mode trunk                 //将接口设置为Trunk模式  

验证:使用任意pc互相访问IP,同一vlan之间可以互相访问。

小贴士: 二层交换机配置口诀如下

  • 创vlan
  • 划vlan
  • 打trunk

4. VLAN的链路

  • access 只能通过单一VLAN,trunk 可以通过多个vlan
  • access链路一般用于交换机与终端设备
  • trunk链路一般用于交换机互联

三、VLAN间通信方案

1. 通过三层交换机(SVI接口)

  • 原理
    在三层交换机上为每个VLAN创建虚拟接口(SVI),并配置IP地址作为网关。

设备名称 IP 子网掩码 网关
PC0 192.168.1.1 255.255.255.0 192.168.1.254
PC1 192.168.2.1 255.255.255.0 192.168.2.254
PC2 192.168.1.2 255.255.255.0 192.168.1.254
PC3 192.168.2.2 255.255.255.0 192.168.2.254

SW1配置如下:

Switch>en                                               //进入特权模式
Switch#conf t                                           //进入全局配置模式
Switch(config)#vlan 10                                  //创建一个vlan编号为10的虚拟局域网
Switch(config-vlan)#int f0/1                            //进入f0/1接口
Switch(config-if)#switchport access vlan 10             //将接口划分到vlan10中
Switch(config-if)#ex                                    
Switch(config)#vl 20                                    //创建一个vlan编号为20的虚拟局域网
Switch(config-vlan)#int f0/2                            //进入f0/2接口
Switch(config-if)#sw acc vl 20                          //创建一个vlan编号为20的虚拟局域网     
Switch(config-if)#int f0/3                              //进入f0/3接口
Switch(config-if)#switchport mode trunk                 //将接口设置为Trunk模式  

SW2配置如下:

Switch>en                                               //进入特权模式
Switch#conf t                                           //进入全局配置模式
Switch(config)#vlan 10                                  //创建一个vlan编号为10的虚拟局域网
Switch(config-vlan)#int f0/1                            //进入f0/1接口
Switch(config-if)#switchport access vlan 10             //将接口划分到vlan10中
Switch(config-if)#ex                                    
Switch(config)#vl 20                                    //创建一个vlan编号为20的虚拟局域网
Switch(config-vlan)#int f0/2                            //进入f0/2接口
Switch(config-if)#sw acc vl 20                          //创建一个vlan编号为20的虚拟局域网     
Switch(config-if)#int f0/3                              //进入f0/3接口
Switch(config-if)#switchport mode trunk                 //将接口设置为Trunk模式  

SW3配置如下:

Switch>en
Switch#conf t
Switch(config)#vl 10
Switch(config-vlan)#vl 20
Switch(config-vlan)#int vl 10                             //进入VLAN10
Switch(config-if)#ip add 192.168.1.254 255.255.255.0      //配置svi接口作为网关使用
Switch(config-if)#int vl 20                               //进入VLAN20
Switch(config-if)#ip add 192.168.2.254 255.255.255.0      //配置svi接口作为网关使用
Switch(config-if)#int f0/1
Switch(config-if)#switchport trunk encapsulation dot1q    //封装trunk协议
Switch(config-if)#sw mo tr                                   
Switch(config-if)#int f0/2
Switch(config-if)#sw tr en do
Switch(config-if)#sw mo tr
Switch(config)#ip routing                                 //开启路由功能

验证:结果为全网互通

四、VLAN扩展技术

1. VLAN Trunk(干道链路)

  • 作用:在交换机间传递多个VLAN的流量。
  • 协议:802.1Q(通用)或ISL(Cisco私有)。
  • 配置示例
Switch(config)# interface GigabitEthernet0/24  
Switch(config-if)# switchport mode trunk  
Switch(config-if)# switchport trunk allowed vlan 10,20,30    

2. QinQ(VLAN堆叠)

  • 原理:在现有VLAN标签外再封装一层VLAN标签(双层Tag),用于运营商网络扩展VLAN数量。
  • 应用场景:企业分支通过运营商网络互联时保留内部VLAN信息。

3. Private VLAN(私有VLAN)

  • 作用:在同一主VLAN内隔离设备,适用于酒店或数据中心多租户场景。
  • 类型
  • Promiscuous Port:可与所有端口通信(如网关端口)。
  • Community Port:组内端口可互访。
  • Isolated Port:仅能与Promiscuous Port通信。

4. Voice VLAN

  • 专用设计:为IP电话划分独立VLAN,优先传输语音流量(通过QoS保障通话质量)。
  • 自动识别:交换机通过LLDP或CDP协议自动将IP电话接入Voice VLAN。

五、VLAN设计与最佳实践

1. 规划建议

  • 按职能划分:如VLAN 10(销售)、VLAN 20(研发)、VLAN 30(访客)。
  • 预留VLAN ID:避免使用VLAN 1(默认Native VLAN),建议从VLAN 100开始编号。
  • 控制VLAN数量:单个交换机的VLAN数量不宜超过100个。

2. 安全增强

  • 禁用未用端口:防止非法设备接入。
Switch(config)# interface range GigabitEthernet0/15-24  
Switch(config-if-range)# shutdown    
  • 启用端口安全:限制端口连接的MAC地址数量。
Switch(config-if)# switchport port-security maximum 2  
Switch(config-if)# switchport port-security violation restrict    

3. 常见问题排查

  • VLAN间不通:检查三层网关配置、路由表及ACL规则。
  • Trunk链路故障:确认两端Trunk允许的VLAN列表是否一致。
  • Native VLAN不匹配:可能导致VLAN跳跃攻击(需两端Native VLAN一致)。

六、总结

VLAN技术通过逻辑划分网络,解决了传统LAN的广播泛滥、管理僵化等问题。结合三层交换机、ACL和QoS策略,可以构建高效、安全的现代企业网络。随着SDN(软件定义网络)和VXLAN(扩展VLAN)等技术的普及,VLAN的逻辑隔离思想将继续在云数据中心和物联网场景中发挥关键作用。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号