配置VLAN(虚拟局域网)是网络管理中的一项基础且重要的操作,通过将一个物理局域网逻辑地划分成多个不同的广播域,可以有效隔离广播风暴、提升网络安全性并优化网络性能,以下将详细介绍在不同网络设备(以Cisco IOS为例)上配置VLAN的常用命令、步骤及注意事项。

VLAN的基本概念与作用
VLAN是一种将物理设备 logically 划分到不同逻辑组的技术,每个VLAN是一个独立的广播域,未经三层路由,不同VLAN之间的设备无法直接通信,其主要作用包括:限制广播范围,减少网络拥塞;通过隔离不同部门或用户群体的流量,增强网络安全性;简化网络管理,灵活调整网络结构。
VLAN配置前的准备工作
在配置VLAN之前,需确保以下准备工作就绪:
- 设备支持:确认交换机支持VLAN功能(目前绝大多数二层交换机均支持)。
- 规划VLAN:根据网络需求规划VLAN ID和名称,例如VLAN 10用于行政部,VLAN 20用于技术部。
- 连接设备:确保交换机与终端设备、路由器(或三层交换机)的连接正常,且设备处于工作状态。
VLAN配置的具体步骤与命令
进入全局配置模式
首先通过Console、Telnet或SSH方式登录交换机,进入全局配置模式:
Switch> enable Switch# configure terminal Switch(config)#
创建VLAN并分配名称
使用vlan [vlan_id]
命令创建VLAN,并通过name [vlan_name]
为其命名(名称可选,但推荐设置以便管理):

Switch(config)# vlan 10 Switch(config-vlan)# name Admin Switch(config-vlan)# exit Switch(config)# vlan 20 Switch(config-vlan)# name Tech Switch(config-vlan)# exit
重复上述步骤可创建多个VLAN,VLAN ID范围通常为1-4094,其中VLAN 1是默认VLAN,不建议修改或删除。
将端口划入VLAN
(1)配置接入端口(Access Port)
接入端口通常连接终端设备(如电脑、打印机),只能属于一个VLAN,以配置端口FastEthernet 0/1为VLAN 10为例:
Switch(config)# interface fastethernet 0/1 Switch(config-if)# switchport mode access # 设置端口为接入模式 Switch(config-if)# switchport access vlan 10 # 将端口划入VLAN 10 Switch(config-if)# exit
若需批量配置多个端口,可使用range
参数,例如配置端口0/2-0/10为VLAN 20:
Switch(config)# interface range fastethernet 0/2 - 10 Switch(config-if-range)# switchport mode access Switch(config-if-range)# switchport access vlan 20 Switch(config-if-range)# exit
(2)配置中继端口(Trunk Port)
中继端口用于连接交换机与交换机、交换机与路由器,可以承载多个VLAN的流量,默认情况下,所有VLAN均通过Trunk端口(除了VLAN 1),以配置端口GigabitEthernet 0/1为Trunk模式为例:

Switch(config)# interface gigabitethernet 0/1 Switch(config-if)# switchport mode trunk # 设置端口为中继模式 Switch(config-if)# switchport trunk allowed vlan all # 允许所有VLAN通过(可指定具体VLAN,如10,20) Switch(config-if)# exit
若需限制Trunk端口允许的VLAN,可使用switchport trunk allowed vlan [vlan_list]
命令,例如仅允许VLAN 10和20:
Switch(config-if)# switchport trunk allowed vlan 10,20
查看VLAN配置信息
配置完成后,可通过以下命令验证VLAN和端口状态:
-
查看所有VLAN信息:
Switch# show vlan brief
输出结果将包含VLAN ID、名称、状态及所属端口,如下表示例: | VLAN ID | Name | Status | Ports | |---------|------------|--------|---------------------| | 1 | default | active | Fa0/11, Fa0/12 | | 10 | Admin | active | Fa0/1, Fa0/2-5 | | 20 | Tech | active | Fa0/6-10, Gi0/1 |
-
查看特定端口VLAN配置:
Switch# show interfaces fastethernet 0/1 switchport
删除VLAN或修改端口配置
- 删除VLAN(需先从端口移除):
Switch(config)# no vlan 10
- 修改端口所属VLAN:
Switch(config)# interface fastethernet 0/1 Switch(config-if)# switchport access vlan 20 # 从VLAN 10改为VLAN 20
VLAN间路由的实现
VLAN间通信需要通过三层设备(路由器或三层交换机)实现,常见方式为单臂路由或三层交换,此处以单臂路由为例:
- 在路由器上配置子接口,并启用路由协议(如RIP或OSPF)。
- 将交换机的Trunk端口连接至路由器,允许相关VLAN通过。
配置注意事项
- VLAN 1的特殊性:VLAN 1是默认VLAN,建议避免业务流量使用,部分管理流量(如CDP)仍依赖VLAN 1。
- 端口模式匹配:连接两台设备的端口模式需一致(均为Access或均为Trunk),否则可能导致链路中断。
- Trunk端口协商:若使用动态Trunk协议(如DTP),需确保两端设备支持且配置一致,建议手动配置Trunk模式以避免意外协商。
- VLAN数据库备份:定期保存VLAN配置(
write memory
或copy running-config startup-config
),防止设备重启后配置丢失。
相关问答FAQs
Q1: 如何修改已配置的VLAN名称?
A1: 进入全局配置模式,使用vlan [vlan_id]
进入VLAN配置子模式,然后通过name [new_vlan_name]
修改名称,将VLAN 10的名称从“Admin”改为“Sales”:
Switch(config)# vlan 10 Switch(config-vlan)# name Sales Switch(config-vlan)# exit
Q2: Trunk端口如何禁止特定VLAN通过?
A2: 在Trunk端口配置模式下,使用switchport trunk allowed vlan remove [vlan_list]
命令移除不需要的VLAN,禁止VLAN 1通过Trunk端口Gi0/1:
Switch(config)# interface gigabitethernet 0/1 Switch(config-if)# switchport trunk allowed vlan remove 1 Switch(config-if)# exit