思科设备中的VLAN(虚拟局域网)划分是企业网络管理中实现网络隔离、优化广播域、提升安全性和管理效率的核心技术,通过将一个物理网络划分为多个逻辑上的独立VLAN,可以有效控制广播流量,限制未经授权的访问,并简化网络扩展与维护,以下将详细介绍思科设备上VLAN划分的相关命令,包括VLAN的创建、端口分配、中继配置、VLAN间路由等关键操作,并结合实例说明其应用场景。

VLAN的创建与命名
在思科交换机上,首先需要创建VLAN并为其分配唯一的VLAN ID(1-4094,其中1默认为默认VLAN,通常建议修改或禁用),创建VLAN的基本命令为vlan [vlan_id]
,进入VLAN配置模式后,可通过name [vlan_name]
为VLAN指定描述性名称,便于管理,创建名为“Sales”的VLAN 10和名为“IT”的VLAN 20,命令如下:
Switch> enable Switch# configure terminal Switch(config)# vlan 10 Switch(config-vlan)# name Sales Switch(config-vlan)# exit Switch(config)# vlan 20 Switch(config-vlan)# name IT Switch(config-vlan)# exit
创建完成后,可通过show vlan brief
命令查看已创建的VLAN列表,确认VLAN ID与名称是否正确配置。
交换机端口类型与VLAN分配
交换机端口根据连接设备类型可分为接入端口(Access Port)和中继端口(Trunk Port),接入端口通常用于连接终端设备(如PC、打印机),仅属于单一VLAN;中继端口则用于连接其他交换机或路由器,可承载多个VLAN的流量。
接入端口配置
将端口设置为接入模式并分配VLAN的步骤如下:

Switch(config)# interface fastethernet 0/1 // 进入接口配置模式 Switch(config-if)# switchport mode access // 设置为接入模式 Switch(config-if)# switchport access vlan 10 // 分配到VLAN 10 Switch(config-if)# spanning-tree portfast // 可选:启用PortFast,跳过STP检测,加速终端设备上线 Switch(config-if)# exit
若需修改端口的VLAN归属,可直接重新执行switchport access vlan [vlan_id]
命令;若需删除VLAN分配,可将端口加入默认VLAN 1(switchport access vlan 1
)或通过no switchport access vlan
命令清除配置。
中继端口配置
中继端口通过802.1Q协议标记VLAN流量,实现跨交换机的VLAN传输,配置命令如下:
Switch(config)# interface gigabitethernet 0/1 Switch(config-if)# switchport mode trunk // 设置为中继模式 Switch(config-if)# switchport trunk encapsulation dot1q // 指定封装协议(思科设备默认ISL,需手动改为802.1Q) Switch(config-if)# switchport trunk allowed vlan 10,20 // 允许通过的VLAN列表(默认所有VLAN) Switch(config-if)# exit
若需添加或删除允许的VLAN,可使用switchport trunk allowed vlan add [vlan_id]
或remove [vlan_id]
命令,允许VLAN 30通过中继端口:switchport trunk allowed vlan add 30
。
VLAN间路由实现
VLAN间通信需通过三层设备(如路由器或三层交换机)实现,常见方法有“单臂路由”和“三层交换机路由”。

单臂路由
在路由器物理接口上配置子接口(Sub-interface),每个子接口对应一个VLAN,并启用802.1Q封装,配置示例如下:
Router> enable Router# configure terminal Router(config)# interface fastethernet 0/0 Router(config-if)# no shutdown Router(config-if)# exit Router(config)# interface fastethernet 0/0.10 Router(config-subif)# encapsulation dot1Q 10 // 绑定VLAN 10 Router(config-subif)# ip address 192.168.10.1 255.255.255.0 // 配置VLAN 10的网关 Router(config-subif)# exit Router(config)# interface fastethernet 0/0.20 Router(config-subif)# encapsulation dot1Q 20 Router(config-subif)# ip address 192.168.20.1 255.255.255.0 Router(config-subif)# exit
三层交换机路由
三层交换机可直接在VLAN接口上配置IP地址,实现VLAN间路由,配置步骤如下:
Switch(config)# interface vlan 10 Switch(config-if)# ip address 192.168.10.1 255.255.255.0 Switch(config-if)# no shutdown Switch(config-if)# exit Switch(config)# interface vlan 20 Switch(config-if)# ip address 192.168.20.1 255.255.255.0 Switch(config-if)# no shutdown Switch(config-if)# exit
需确保三层交换机已启用路由功能(默认已启用),可通过ip routing
命令确认或手动开启。
VLAN验证与故障排查
配置完成后,需通过以下命令验证VLAN状态:
show vlan brief
:查看所有VLAN的端口分配情况。show interface trunk
:检查中继端 allowed VLAN 和封装协议。show ip route
:确认三层路由表中是否存在VLAN网关条目。ping
测试:跨VLAN的IP连通性验证。
若VLAN间无法通信,常见问题包括:端口未正确分配VLAN、中继端口允许的VLAN列表遗漏、子接口或VLAN接口IP配置错误、设备未启用路由功能等。
VLAN配置示例(表格)
以下为典型VLAN配置场景的命令总结:
操作场景 | 命令示例 |
---|---|
创建VLAN 30(HR) | Switch(config)# vlan 30 Switch(config-vlan)# name HR |
配置接入端口 | Switch(config)# interface fa0/5 Switch(config-if)# switchport mode access Switch(config-if)# switchport access vlan 30 |
配置中继端口 | Switch(config)# interface gi0/1 Switch(config-if)# switchport mode trunk Switch(config-if)# switchport trunk allowed vlan 10,20,30 |
三层交换机VLAN接口 | Switch(config)# interface vlan 10 Switch(config-if)# ip address 10.1.1.1 255.255.255.0 |
相关问答FAQs
问题1:如何将已配置为接入模式的端口改为中继模式?
解答:首先进入接口配置模式,使用no switchport mode access
命令清除原有接入模式配置,然后执行switchport mode trunk
将其设置为中继模式,最后通过switchport trunk allowed vlan
命令指定允许通过的VLAN列表。
Switch(config)# interface fa0/1 Switch(config-if)# no switchport mode access Switch(config-if)# switchport mode trunk Switch(config-if)# switchport trunk allowed vlan 10,20
问题2:VLAN间无法通信,但同VLAN内主机可以互通,可能的原因及排查步骤?
解答:可能原因包括:(1)三层设备(路由器/三层交换机)未配置VLAN接口IP或IP错误;(2)中继端口未允许目标VLAN通过;(3)ACL(访问控制列表)阻止了跨VLAN流量;(4)主机网关配置错误,排查步骤:
- 使用
show ip interface brief
检查三层设备VLAN接口状态是否为up/up
,IP配置是否正确; - 执行
show interface trunk
确认中继端口是否包含目标VLAN; - 使用
show ip access-lists
检查是否存在ACL规则阻止流量; - 验证主机的默认网关是否指向对应VLAN的三层接口IP。