资讯动态

VLAN原理与配置实验手册:广播域隔离、Trunk与单臂路由实战

发布时间:2026/10/22 3:49:30 来源:尧图企业网站定制
1. VLAN到底是什么——从一次“全网卡死”事故说起先讲个我早年遇到的真实场景。某公司办公区大概有四五十台电脑加上打印机、无线AP、监控摄像头全部连在几台交换机上没有做任何VLAN划分。平时上网刷刷网页还好一到上午十点大家集中办公整个网络就开始卡顿ping网关的延迟从1毫秒飙升到两三百毫秒公司内部共享文件夹打开要转圈十几秒视频会议基本没法开。最严重的一次一台染毒电脑在局域网里疯狂发广播包直接把全网所有终端的网络全部打瘫交换机CPU占用率飙到90%以上所有端口都在闪。排查了半天才定位到问题根源——整个网络就是一个巨大的广播域。任何一台设备发出的广播帧都会被交换机转发给所有其他设备所有终端都要停下来处理这个广播。设备多了之后广播流量就像几百个人同时在一个房间里大声喊话谁也别想安静干活。这就是VLAN技术解决的第一个核心问题划分广播域让广播流量被限制在某一个虚拟局域网内。VLAN全称是Virtual Local Area Network虚拟局域网。它的本质作用是把一台物理交换机在逻辑上切成若干台“虚拟交换机”。我常拿写字楼来打比方一栋楼一台交换机里面有很多家公司如果不隔断所有人的电话、邮件、访客都在同一空间里互相干扰。VLAN就是给这栋楼装上隔断划分出独立的办公室每间办公室的信号只在内部传播互不串扰。这个实验是路由交换学习中绕不开的一道坎。网络上经常有人问配置了VLAN之后PC之间ping不通是怎么回事跨交换机VLAN不通又是哪里没配。这篇文章就把VLAN从原理到实验完整走一遍包括Access口和Trunk口的配置、VLAN间路由的实现方式、以及最常见的故障排查思路。适合刚学网络基础的学生、准备网络工程师认证的人以及在日常工作中需要配交换机但没人带的朋友。读完你可以直接照着步骤在自己的模拟器或现有设备上复现整个实验过程。1.1 广播域失控的真实代价广播域这个概念搞网络的人天天挂在嘴边但真正意识到它分量的人不多。广播帧是MAC地址全F的设备发出来的“喊话”用来做ARP解析知道对方IP、询问对方MAC地址、DHCP租约获取这类工作。在同一个广播域内所有接在同一台交换机上的设备无论物理端口在哪只要收到广播帧就必须处理。我见过一个比较典型的失误。某公司在网络改造的时候为了省一个路由器的钱把原来分属两个部门的电脑全部怼在同一台48口交换机上两台核心交换机之间只做了一条链路。表面上看网络是通了但两个部门各自的广播协议、Windows的发现机制、打印机扫描广播、摄像头组播全部混在一起。一次全网扫描类软件跑下来广播流量瞬间翻了好几倍普通办公终端的网卡被迫处理大量无关广播CPU占用升高在线会议的音质断断续续。最终没办法还是乖乖上VLAN重新割接。从这个例子能引出VLAN的第一个收益缩小故障域。一个端口连接的主机出现问题、疯狂发帧的时候只影响它所在的VLAN其他VLAN设备依然正常工作。这也是网络设计中“一个VLAN尽量对应一个业务或一个部门”的核心原因——把风险隔离到最小范围。1.2 VLAN的原理和802.1Q标签机制先看数据链路层的帧结构。普通以太网帧有目标MAC、源MAC、类型字段和数据。交换机收到帧之后根据目标MAC查MAC地址表决定从哪个端口转发出去。问题来了如果交换机端口上划分了VLAN交换机怎么知道这个帧属于哪个VLAN答案是打标签。IEEE 802.1Q标准定义了VLAN标签的封装格式在源MAC地址和类型字段之间插入4个字节的Tag其中包含12位的VLAN ID取值范围0到4095可用范围一般是1到4094。交换机内部处理帧的时候会先看Tag里的VLAN ID再决定在哪个VLAN范围内转发。这个逻辑跟快递分拣很像——包裹外面贴了标签分拣机才能知道该扔到哪个格口。不同厂商的命令行风格有差异核心逻辑一致。给交换机端口划分VLAN之后端口就分成了两类工作模式。Access模式端口只属于一个VLAN一般用来接PC、打印机这类终端设备打上Tag后再发出去的场景很少Trunk模式端口允许承载多个VLAN的流量一般用来交换机之间互联或者连路由器。Trunk口在转发帧时会把VLAN Tag保留在以太网帧里传过去对端交换机照着Tag做转发。1.3 为什么不直接用IP网段隔离我记得有朋友问过既然划分网段也能隔离比如财务部用192.168.1.0/24、技术部用192.168.2.0/24何必搞VLAN这是个好问题但要知道IP网段只是逻辑地址的划分它自己能限制广播吗答案是有一个前提必须通过三层设备路由器或三层交换机隔开广播域。两台电脑虽然IP在不同网段但接在同一台交换机上它们之间可以直接通过MAC地址通信吗严格说不同网段的主机通信必须经过网关转发但广播帧比如ARP请求网关MAC的广播依然是二层广播交换机照样会把它从所有同VLAN的端口泛洪出去。也就是说如果没有VLAN隔离你划分了多个IP网段二层的广播风暴依然会跨越网段边界传播。只有VLAN或独立的物理网络才能在三层以下真正切断广播域。正确的网络设计是先划分VLAN做隔离和广播控制再给每个VLAN配置IP网段和网关做三层转发两层配合既隔离了广播又保留了通信能力。2. 实验拓扑设计与VLAN规划做实验之前先把拓扑和地址规划搞明白。这一步看着简单但直接影响后面所有配置和排错。我见过不少人在实验里配到一半才发现IP掩码写错、交换机互联端口忘记规划回头又从头重来浪费时间不说排查的时候还容易被误导。2.1 实验环境的最低要求这个实验需要准备一台路由器或三层交换机外加至少两台二层交换机、几台PC。设备数量可以灵活调整但至少要满足“两台交换机之间有一条互联链路交换机下分别接PC并且配置两个VLAN”的模型这样才能把Access、Trunk、VLAN间路由都覆盖到。我用的是模拟器环境。现在的模拟器功能已经相当成熟可以按照真实设备的命令行敲命令也能模拟抓包适合初学者反复练习。如果你手头有真机那就更好毕竟真实设备的端口气泡、指示灯反应和模拟器还是有一点差别但实验逻辑和命令行为基本一致。不管是真机还是模拟器实验做完之后记得把配置文件导出保存方便以后复盘。在开始之前还有一个容易忽略的准备项把模拟器中所有设备恢复出厂状态。有些旧配置文件里残留了VLAN信息可能干扰实验结果。确保所有设备处于清空状态后再动手能省不少麻烦。2.2 地址规划与VLAN规划表我设计的这个实验拓扑如下。三台设备交换机A、交换机B还有一台路由器。交换机A和交换机B之间用一条链路直连。PC1接在交换机A的F0/1口PC2接在交换机A的F0/2口PC3接在交换机B的F0/1口PC4接在交换机B的F0/2口。VLAN划分按业务逻辑来VLAN 10规划给办公区VLAN 20规划给服务器区。这是最常见的做法——办公终端和服务器区域彼此隔离但又能通过L3路由通信。设备接口所属VLANIP地址网关PC1交换机A F0/1VLAN 10192.168.10.1/24192.168.10.254PC2交换机A F0/2VLAN 20192.168.20.1/24192.168.20.254PC3交换机B F0/1VLAN 10192.168.10.2/24192.168.10.254PC4交换机B F0/2VLAN 20192.168.20.2/24192.168.20.254交换机互联链路规划为Trunk模式允许VLAN 10和VLAN 20通过。路由器的接口则要做成单臂路由的形态也就是在同一个物理接口上划分子接口分别承担VLAN 10和VLAN 20的网关角色。这个后文会详细展开。这里要特别提醒一点地址规划和VLAN ID表最好在纸上先画出来。很多新手配的时候直接看屏幕敲命令配完才想起没有记录哪个IP对应哪个PC、哪个VLAN给到哪个网段结果排查的时候对着配置一行行翻效率极低。把它当成实验的第一个正式步骤认真对待。2.3 基础配置的搭建思路交换机的基础配置顺序很重要。我习惯的步骤是先改设备主机名方便后续识别然后创建VLAN并命名再配置端口模式最后做验证查看。改主机名这一步看起来可有可无实际排错的时候特别有用。尤其是跨多台交换机操作如果所有设备还是默认名字用show命令看到输出时根本分不清是登录到哪台设备上。交换机上创建VLAN的通用逻辑是进入VLAN数据库创建编号再给VLAN起个名字。VLAN名字主要用于可读性配置里对转发行为没有实际影响但一个规范的命名习惯能让你半年后回看配置时轻松理解业务意图。3. 核心实验Access口和Trunk口的配置这个部分是VLAN实验的重头戏。很多人对Access口和Trunk口的概念理解不深经常出现“PC能通但服务器不通”“跨交换机同一个VLAN不通”之类的问题。把这两个端口的工作模式彻底搞明白后面所有排错都能迎刃而解。3.1 Access口配置与PVIDAccess口在交换机上承担的角色是“接入终端设备”。它只归属于一个VLAN收到不带Tag的普通帧时会给这个帧打上该端口所属的VLAN的Tag交换机随后在VLAN内部转发从交换机转发到Access口时则会剥掉Tag后再发给终端。终端设备PC、打印机本身不感知VLAN它们发出的帧是普通无Tag帧Access口负责双向翻译。配置命令分为几个要素。先创建VLANvlan 10 name office_vlan vlan 20 name server_vlan然后进入端口做配置interface fastEthernet0/1 switchport mode access switchport access vlan 10关键在于两条命令。switchport mode access将端口锁定为Access模式switchport access vlan 10将该端口的PVIDPort VLAN ID设为10。PVID的含义就是这个端口收到不带Tag的帧时默认给帧打上VLAN 10的标签。这个概念在Trunk口上同样存在但意义略有不同后面会讲到。如果要让PC1和PC3之间通信前提是它们所在的两个端口都属于同一个VLAN且IP在同一网段。实验里PC1接在交换机A的F0/1属于VLAN 10PC3接在交换机B的F0/1也属于VLAN 10中间链路做成Trunk那么二层转发路径就通了。这个小节的操作看似只有三行命令但有一个细节值得玩味Access口的VLAN属性可以在数据帧进入交换机的一瞬间决定它属于哪个广播域。也就是说同一台交换机上哪怕所有端口连的都是相同型号的电脑想让它们互相隔离不需要换设备、不需要改网线只需要把端口划到不同的VLAN里。二层网络的灵活改变核心就落在这条简单的配置上。3.2 Trunk口配置与802.1Q封装Trunk口是交换机与交换机之间的桥接通道。它允许承载多个VLAN的数据帧转发时必须保留帧里的Tag信息否则对端交换机就无法判断帧属于哪个VLAN。802.1Q标签的作用从这里体现出来——接口收到帧时看到Tag为10就知道这是VLAN 10的流量。配置Trunk口的步骤interface gigabitEthernet0/1 switchport mode trunk switchport trunk allowed vlan 10,20有些设备上还需要额外指定封装的类型switchport trunk encapsulation dot1q这个命令在部分设备上是必要的如果不指定封装接口可能默认跑其他私有协议或协商失败结果就是两边都是Trunk但标签格式对不上流量全丢。模拟器环境一般默认已经封装为802.1Q真机则务必注意检查。我看到不少人在配置Trunk时直接把allowed vlan写成all图省事让所有VLAN都过。这个改法在实验里没问题但实际生产环境不建议这么干。万一后期有人在交换机上新建了一个机密业务VLAN忘了Trunk口全放行流量就悄悄跨设备传播了。规范的Trunk策略应当显式声明允许哪些VLAN通过不允许的一律排除。配完之后用验证命令查看show interfaces trunk show vlan brief如果看到端口状态为trunking且allowed vlan列表里包含VLAN 10和VLAN 20说明配置正确。如果接口状态显示down或者trunk模式协商失败先检查对端交换机的相同接口是否也配置成了trunk再检查物理线缆是否连接正常。3.3 二层隔离验证同VLAN互通、跨VLAN不通配置完成之后最直观的验证方式是用PC之间互相ping。预期结果是PC1和PC3能ping通同VLAN 10跨交换机PC2和PC4能ping通同VLAN 20跨交换机但PC1和PC2之间ping不通不同VLAN且尚未做VLAN间路由。如果你做的实验结果违背了这个预期别慌这是排查的开始。我遇到过最常见的情况是PC1和PC3互相ping不通查了半天发现不是VLAN的问题而是两台PC的IP不在同一网段或者模拟器里PC的网关地址填错了。VLAN解决了二层隔离但IP层通信的前提依然没有变同网段才能直连通信跨网段必须走三层网关。这里顺便提一个排查二层通断的好用工具在两台PC上同时ping网关地址然后在交换机上用debug或者抓包功能观察ARP请求走向。如果ARP能看到但ICMP Reply回不来说明链路通了但某个VLAN内环路或者端口协商有问题缩小范围去查。如果ARP根本过不去那就是VLAN划分或Trunk放行有问题。这个方法比盲目改配置高效得多。4. VLAN间通信的两种实现方案VLAN之间默认是二层隔离状态但办公场景里不可能让所有部门彻底断网很多时候依然需要访问共享服务器或跨部门协作。这就引出VLAN间路由的问题。实现方式主要两种单臂路由和三层交换机的SVI。我用同一个拓扑分别演示两种做法可以对比一下各自的手感和适用场景。4.1 单臂路由的原理与配置单臂路由的思路很朴素路由器只有一个物理接口连接交换机但在这个物理接口上划分子接口每个子接口对应一个VLAN的网关IP。交换机侧把连接路由器的端口配为Trunk将各VLAN的帧以带Tag的形式送到路由器路由器子接口收到帧后根据Tag判断属于哪个VLAN从对应的子接口处理转发。路由器上配置示例interface fastEthernet0/0.10 encapsulation dot1q 10 ip address 192.168.10.254 255.255.255.0 interface fastEthernet0/0.20 encapsulation dot1q 20 ip address 192.168.20.254 255.255.255.0 interface fastEthernet0/0 no shutdown这个配置有两个关键点。第一物理接口本身不能配置IP地址IP必须配置在子接口上否则子接口无法正常工作。第二encapsulation dot1q后面的数字必须和VLAN ID一一对应这个数字不仅是标识还决定了路由器收到Tag为10的帧时走哪个子接口。我曾经在这上面栽过跟头。物理接口忘了敲no shutdown结果路由器子接口配置得漂漂亮亮但从头到尾起不来PC的网关一直ping不通。后来检查接口状态才发现物理层down了。在模拟器里这个命令往往默认开启真机则必须显式执行。单臂路由的优点是设备门槛低只要有台路由器就能做实验适合学习和测试。缺点同样明显所有VLAN间的流量都要挤在同一条物理链路上带宽共享、延迟高数据量大了容易拥塞。生产环境一般不建议把它作为大流量的主干方案。4.2 三层交换机的SVI配置三层交换机把路由功能集成到了交换机内部不需要占用物理链路跑到外面绕一圈。通过配置SVISwitch Virtual Interface交换虚拟接口直接给每个VLAN一个虚拟的三层接口VLAN之间通信时数据帧只在交换机内部交换结构里转发速度远快于单臂路由。只需要在交换机上创建VLAN配置对应VLAN接口的IP和开启三层转发interface vlan10 ip address 192.168.10.254 255.255.255.0 interface vlan20 ip address 192.168.20.254 255.255.255.0在三层交换机上还需要开启IP路由功能ip routing这条命令让交换机具备转发三层流量的能力。如果少了它SVI接口即使配置了IP地址交换机也不会在VLAN之间做路由流量到了交换机就丢。这也是新手最容易漏掉的一步。SVI的优势是性能高、配置简洁、天然适合大规模VLAN互访。做完二层Access/Trunk配置后只需要创建VLAN、配置vlan接口IP、开启ip routing整个三层网络就完成了。在实际企业网络中三层交换机是绝大多数内网VLAN间路由的标准方案单臂路由更多存在于实验教科书或者小型测试环境。4.3 两种方案怎么选直接给结论如果你是要做实验学习原理两种都做一遍最好能加深理解如果是在模拟器中模拟企业环境做综合实验建议把三层交换机方案作为首选实现因为操作维护更简单、效果更接近真实核心网络。单臂路由适合在设备条件有限的环境临时顶替或者做小规模流量不大的分支网络。而一旦业务量上来、VLAN数量增多单臂路由的链路瓶颈就会被无限放大这时候三层交换机的优势就明显了。三层交换并不是“淘汰”了路由器而是在内网VLAN间转发这个具体场景里效率更高。路由器依然承担着连接外部网络、策略控制、NAT等更复杂的功能。5. 常见问题与排查思路实录这个章节写的是我从VLAN实验和实际工程中遇到比较多的故障点每条都附上排查思路你可以直接对照着操作。5.1 PC之间ping不通第一反应查什么最基本但最容易被忽略的两点摆在最前面。一是IP地址和掩码确认两台PC是不是在同一网段。VLAN隔离的是二层广播域但IP不在同一网段依然不通。二是网关地址是否填了正确。如果网关错了跨网段通信就无从谈起。确认完这两点后用ping网关先做分段定位。PC1能ping通自己的网关说明从PC到交换机VLAN接口这段链路正常PC1不能ping通网关问题多半出在PC的接入端口所属VLAN、IP配置或者网关设备配置。排除法在网络故障排查里永远是最高效的思路。5.2 Trunk口通了但跨交换机的同VLAN不同这是我在模拟器里做过很多次实验后总结出的一个高发问题。两台交换机之间的Trunk配置看着没问题show interfaces trunk显示也在工作但PC3就是ping不通PC1。排查步骤按顺序走第一检查PC两端是否在同一VLAN这是最基础的一层第二检查Trunk的allowed vlan是否包含对应VLAN有些配置里写了vlan 10,20但手滑漏掉了其中之一第三检查交换机之间的链路是否真正协商成了Trunk模式。在一些设备上两端需要手动指定模式如果一端是trunk一端是auto或者desirable可能协商失败而走成其他模式。还可以在交换机上查MAC地址表来定位。在交换机B上执行查看命令如果发现PC1的MAC地址出现在交换机B的Trunk口下说明二层转发没问题如果找不到对应MAC说明Trunk链路或VLAN放行有问题。这个方法比漫无目的地改配置有意义得多。5.3 VLAN间网关通了但PC上不了外网这是把VLAN和路由都配完之后最容易出现的困惑。PC能ping通网关甚至能ping通对端VLAN的设备但访问外部网络不通。排查方向要从路由表入手。在路由器或三层交换机上查看路由表里有没有去往外部的路由条目没配默认路由就加一条有的话再确认下一跳地址是否可达。另一个容易被忽略的点是NAT或ACL。外部网络地址是私网地址时可以直通但访问公网必须做地址转换没有NAT策略流量自然是出不去的。这个问题已经超出VLAN本身但做综合实验时常常交织在一起顺手提一下免得被困住很久。5.4 VLAN 1的特殊性VLAN 1是默认VLAN交换机所有端口初始都在VLAN 1DTP、VTP这类协议默认跑在VLAN 1的管理域上。很多网工在实验里习惯直接把VLAN 1删了或者把端口全从VLAN 1挪走但要知道VLAN 1在很多设备上无法删除且控制面协议的默认承载VLAN就是它。生产环境的安全建议是把Trunk口的Native VLAN改成其他VLAN在802.1Q中不带Tag的Native VLAN不要让VLAN 1承担任何用户业务流量防止VLAN跳跃类攻击。做实验时不必过度纠结这一点但养成一个规范的配置习惯会让你以后少踩很多坑。最后说点个人体会。VLAN这个实验是整个交换技术里最值得反复亲手做的基础实验之一配置命令少但涉及的概念密度很高。如果你在实验中遇到问题建议不要急着翻答案尝试自己顺着数据帧的走向推一遍——PC发出帧、进入交换机打Tag、Trunk转发、对端剥离Tag、到达目标PC每走一步分析可能出错的环节。这个过程练出来的排错思维比记住几条命令值钱得多。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑