VLAN从原理到配置:广播域隔离、Access与Trunk实战指南
搞网络的人几乎都会碰到VLAN这个词。无论你是在机房里配交换机还是接到某个办公室的网络规划需求第一步动作往往都是划分VLAN。VLAN的全称是Virtual Local Area Network也就是虚拟局域网核心作用就是把一台物理交换机划分成多个逻辑隔离的广播域让广播不串门让不同部门之间的数据默认看不见。这个机制是几乎所有企业内网的地基。这篇内容适合刚学网络技术的新手、准备网络认证的考生以及工作中需要自己动手配置交换机的运维人员。我会按“为什么需要VLAN → 关键概念 → 配置实操 → 排障经验 → 练习题”这条线讲尽量用大白话把原理和命令都说明白。看完之后你应该能独立完成单台交换机的VLAN划分看得懂跨交换机的Trunk链路也明白不同VLAN之间怎么三层互通。下面直接进入正文。1. VLAN是什么把一个广播域拆成多个“虚拟隔离区”1.1 没有VLAN时一个广播域能带来多大麻烦先想一个最简单的场景一台24口交换机24台电脑全部插在上面。此时交换机默认处于同一个广播域任何一台机器发出的广播帧交换机都会复制转发给其他所有端口。ARP请求就是最典型的广播电脑开机、访问网关、找同一台交换机上另一台电脑的IP都会先发一个ARP广播。24台设备时还好当网络扩大到几百台设备广播帧数量会明显增加所有设备的CPU都在处理与自己无关的广播网络就开始卡顿。除了性能问题更麻烦的是安全隔离。同一个广播域意味着二层可达同网段下任何两台主机之间都可以直接通信和抓包。在一个把财务、人事、研发都塞进同一台交换机的办公环境里这基本等于把所有人的内网流量都暴露在同一个大房间里。我见过不少小公司就是这种组网表面上能用一旦有人运行抓包软件整个办公室的流量几乎都是透明的密码、文件内容这些敏感信息全都拦不住。VLAN出现就是为了解决这个问题把一个物理广播域切成多个逻辑广播域每个VLAN是一个独立的广播域默认不能直接互通广播也只能在自己的VLAN里扩散。这个切分在逻辑上看不见、摸不着但效果非常实际。在同一个交换机上接在VLAN 10里的PC和接在VLAN 20里的PC虽然物理上挨得很近但二层完全隔离VLAN 10的广播不会到VLAN 20VLAN 20的主机也看不到VLAN 10的主机。1.2 802.1Q标签与VLAN ID帧上的门牌号VLAN之所以能在一个物理网络上区分不同逻辑网络靠的是以太网帧上的标签。IEEE 802.1Q定义了VLAN Tag的格式它在标准以太网帧头中插入了4个字节的字段其中包含一个12位的VLAN ID取值范围是0到4095其中0和4095保留实际可用的业务VLAN ID是1到4094。需要留意很多刚接触的人会误以为VLAN ID范围是1到4095真到配置的时候VLAN 4095往往创建不了或者行为不符合预期规规矩矩用1到4094就不会踩这个问题。可以把这个Tag理解为包裹上的门牌号。数据帧进入交换机后交换机看这个门牌号就知道该从哪些端口转发、不该从哪些端口转发。普通电脑的网卡不识别Tag所以接PC的接口在发帧之前会把Tag剥掉只有交换机之间的互联链路才会携带Tag传输这样才能在一条物理链路上同时承载多个VLAN的流量。这也是为什么一台交换机上只划分了10个VLAN但几台交换机之间只需要一条物理连接的逻辑基础。这里特别容易出现一个概念混淆VLAN ID和IP子网不是一回事。VLAN是二层概念IP子网是三层概念。常规做法是把一个VLAN对应一个网段比如VLAN 10对应192.168.10.0/24VLAN 20对应192.168.20.0/24但这只是设计习惯并不是协议强制要求。不过强烈建议在生产中采用一VLAN一网段的方式否则排障的时候会非常痛苦。试想一个VLAN里跨了两个网段大家虽然二层开着三层却因为网段不同互相访问不了排查起来很容易怀疑到VLAN配置头上实际却是IP规划混乱。1.3 几种VLAN划分方式为什么工程里几乎都用静态端口VLAN的划分方式不止一种。基于端口划分是最传统的静态方式管理员手动把端口分配到某个VLAN直观、简单、排障容易目前绝大多数工程用的都是这种方式。还有基于MAC地址、基于IP子网、基于协议、基于802.1X认证的动态划分方式适合终端频繁移动或接入认证比较严格的场景。动态划分的优点是灵活缺点是配置和管理复杂。比如基于MAC划分新增一台电脑就需要维护MAC与VLAN的对应表基于802.1X虽然能在用户认证后动态下发VLAN但需要部署认证服务器和客户端。对大多数中小企业或教学实验而言静态端口划分的性价比最高。我的建议是先吃透基于端口的静态VLAN其他方式在有具体需求时再学原理完全一样。提示别把VLAN理解成“给交换机分几个区”这么简单。VLAN的核心价值是隔离广播域和控制二层互通范围。理解了这句话后面配置Access、Trunk时的很多选择都会变得顺理成章。2. 配置前的关键准备VLAN ID规划与端口类型选型2.1 VLAN ID如何规划避免以后推倒重来配置VLAN之前最容易忽略的一件事是ID规划。很多新手拿到交换机直接建一个VLAN 10就往上加端口再加业务时又随手建VLAN 20、VLAN 50最后整个网络的VLAN ID毫无规律别人接手时根本不知道每个VLAN是干什么的。规划VLAN ID有个基本套路把VLAN 1留给默认和管理类流量业务VLAN从10、20这种有规律的数字开始。比如VLAN 10到19给办公网络VLAN 20到29给访客网络VLAN 30到39给服务器区VLAN 100以后留给网络设备管理。每类业务预留一段空间后续扩展时直接在这个范围里加ID不用全局改编号。推荐在项目开始之前在纸上写一张VLAN规划表至少包含以下字段VLAN ID用途网段/网关允许通过的端口备注1默认/管理不承载业务管理口尽量不放业务10办公192.168.10.0/24网关192.168.10.1GE0/0/1-10员工PC20访客192.168.20.0/24网关192.168.20.1GE0/0/11-14访客专用隔离互访30服务器192.168.30.0/24网关192.168.30.1GE0/0/15-18数据库、文件服务器有了这张表配置时照着敲命令就行不用现场想“这个口该划到哪”。等网络规模变大以后这张表还会成为你排查故障的第一手资料。我见过太多团队配置文档缺失最后出了问题只能一台一台交换机登上去看效率非常低。2.2 Access、Trunk、Hybrid三种端口怎么选端口类型是VLAN配置里的核心概念。常见的有Access、Trunk、Hybrid三种每种的作用和适用场景都不同。Access口是“终端接入型”端口通常连接PC、打印机、IP电话这类不需要识别VLAN Tag的设备。Access口只能属于一个VLAN从Access口发出的帧不带Tag收到无标签帧时会打上该端口的PVID也就是默认VLAN ID。如果你把PC接在Access口但这个口的PVID是10那这个PC就自动成为VLAN 10的成员不需要在PC上做任何设置。Trunk口是“链路复用型”端口通常连接交换机与交换机、交换机与路由器目的是让一条物理链路同时承载多个VLAN的流量。Trunk口上的帧带Tag传输交换机通过Tag判断这个帧属于哪个VLAN。Trunk口默认放行哪些VLAN不同厂商设备行为不同有的默认只放行VLAN 1有的默认放行所有VLAN。最稳妥的做法是显式配置放行列表只放行需要通行的VLAN。Hybrid口是介于两者之间的灵活类型它既能像Access口一样无标签收帧也能像Trunk口一样支持多个VLAN还能分别指定哪些VLAN发帧时带Tag、哪些不带Tag。某些厂商交换机还用它实现特殊的组网需求但普通场景下不建议新手优先使用配置灵活也意味着理解和排障成本更高。下面用表格直接对比端口类型收无标签帧时发帧时是否带Tag典型连接对象适用场景Access打上PVID进入对应VLAN不带TagPC、打印机、摄像头接入终端Trunk打上PVID按放行列表转发按VLAN决定多数带Tag交换机之间、交换机到路由/防火墙跨设备VLAN透传Hybrid按配置打Tag或直接处理按配置决定每个VLAN是否带Tag特殊组网、灵活场景需要精细控制Tag时选型逻辑很简单接终端设备用Access设备与设备之间需要同时传多VLAN流量时用TrunkHybrid只在明确知道为什么要用的时候才碰。如果拿不准宁可多画两张拓扑图也别随手配置一个Hybrid然后让全网猜你的意图。2.3 PVID与Native VLAN的坑配置前必须理解PVID的全称是Port VLAN ID它和Access口的默认VLAN有直接关系。在Trunk口上PVID还牵扯到一个叫Native VLAN的概念。收到没有Tag的帧时交换机会打上PVID对于PVID对应的那个VLANTrunk口在发送时通常会把Tag剥掉这个VLAN就叫Native VLAN中文也叫本征VLAN。默认情况下很多设备的Native VLAN是VLAN 1。也就是说Trunk口在发送VLAN 1的数据时是不带Tag的这让VLAN 1的流量在Trunk链路上“裸奔”。如果两端设备的Native VLAN配置不一致就会出现在同一台交换机上互相能通但跨了设备就不通的情况。最典型的是一端Trunk口PVID是1另一端Trunk口PVID被改成10两端都只配置了Trunk口原本允许的VLAN结果VLAN 1的设备跨交换机全部失联而VLAN 10反而一切正常。提示跨交换机配置Trunk时两端端口的PVID必须保持一致。除非你非常清楚为什么要改否则不要随意修改Trunk口的PVID。另外VLAN 1承载管理流量很容易成为安全隐患规规矩矩的做法是不让业务跑在VLAN 1管理VLAN单独规划并在接入层端口上关闭不必要的管理协议。3. VLAN配置实操单交换机、跨交换机到三层互通3.1 第一步单交换机上创建VLAN并把端口加入下面开始实际操作。我用市面上最常见的企业级交换机命令行风格演示不同厂商命令略有差异但配置逻辑对所有设备都通用。假设有一台交换机SW1GE0/0/1到GE0/0/8接办公PC计划划入VLAN 10GE0/0/9到GE0/0/16接访客终端计划划入VLAN 20。进入系统视图之后第一步创建VLAN。可以使用批量为方式同时创建多个VLAN也可以进入单个VLAN视图做详细配置system-view sysname SW1 vlan batch 10 20 vlan 10 description Sales_Network quit vlan 20 description Guest_Network quitvlan batch这条命令很实用一次把多个VLAN建好省去逐条创建的时间。description的作用是给VLAN加备注建议每条VLAN都写上用途。等网络规模大了以后没有备注的VLAN列表看起来就是一堆数字根本分不清哪个对应哪块业务。接下来把端口加入对应VLAN。以GE0/0/1加入VLAN 10为例interface GigabitEthernet0/0/1 port link-type access port default vlan 10 quit第二行port link-type access把端口设置为Access模式第三行port default vlan 10把端口默认VLAN设为10。有的初学者只看最后一行的字面意思以为这只是给端口设置了一个默认VLAN号忽略了它同时还完成了端口到VLAN成员关系的绑定。实际上在大多数设备上这一行配置执行以后端口就正式成为VLAN 10的成员端口了。如果有连续端口需要批量加入可以进入端口组或连续端口配置。比如把GE0/0/2到GE0/0/8全部加入VLAN 10很多设备支持这样操作port-group group-member GigabitEthernet0/0/2 to GigabitEthernet0/0/8 port link-type access port default vlan 10 quit配置完成后用display vlan查看。正常情况下可以看到VLAN 10和VLAN 20分别存在所属端口一栏也列出了对应的接口。如果某个端口的类型或VLAN号配错了在这一步就能直观看到异常。3.2 第二步跨交换机Trunk链路配置与验证单台交换机的VLAN划分只是热身实际组网中几乎所有VLAN都要跨交换机使用。比如两台接入交换机SW1和SW2分别接了不同办公室的PC但要求两边属于VLAN 10的PC能互相通信。此时两台交换机之间必须用Trunk链路连接并且Trunk口要放行VLAN 10。先看SW1侧的配置GE0/0/24作为与SW2互联的上联口interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 quitSW2侧做完全相同的配置使用与SW1互联的那个端口同样设置成Trunk并放行VLAN 10和20。需要注意的是port trunk allow-pass vlan 10 20并不是把VLAN 10和20“创建”在交换机上它只表示这个Trunk口允许这两个VLAN的帧通过。如果SW2上根本没有VLAN 20这个放行配置本身顶多只是个无效配置不会自动创建VLAN。我遇到过不少初学者在这里翻车明明两端Trunk都配了跨交换机还是不通用display vlan查看时发现SW2上连VLAN 10都不存在。原因是他们在SW2上只配了Trunk放行没有先执行vlan 10或vlan batch 10 20创建VLAN。创建VLAN和放行VLAN是两件独立的事缺一不可。跨交换机配置完成后可以用display interface trunk或等价的查看命令检查Trunk口状态确认链路是up的、放行列表里包含VLAN 10。然后再从PC-A去Ping PC-C如果通了说明跨交换机的VLAN已经拉通。如果还不通优先查两端端口是否都是Trunk、放行列表是否一致以及物理链路是否正常。3.3 第三步VLAN间路由让不同VLAN的主机也能通信VLAN默认隔离不同广播域所以不同VLAN之间默认不能通信。但在实际办公环境里研发和财务虽然属于不同VLAN它们还是需要访问同一套服务器或者互相发邮件。这时候就需要三层设备介入也就是VLAN间路由。常见方案有两种单臂路由和三层层交换机VLANIF接口。单臂路由的思路是路由器用一个物理口接到交换机上交换机侧这个口配置为Trunk路由器侧把这个物理口拆成多个子接口每个子接口绑定一个VLAN ID并配置对应VLAN的网关地址。比如在路由器上interface GigabitEthernet0/0/1.10 dot1q termination vid 10 ip address 192.168.10.1 255.255.255.0 arp broadcast enable quit interface GigabitEthernet0/0/1.20 dot1q termination vid 20 ip address 192.168.20.1 255.255.255.0 arp broadcast enable quitdot1q termination vid 10表示这个子接口只处理带VLAN 10 Tag的帧arp broadcast enable用于让设备能够响应VLAN 10内的ARP广播请求。单臂路由的缺点是所有跨VLAN流量都要挤在一个物理口上带宽和性能有限适合小型网络。实际工程里更常用的是三层交换机。三层交换机可以在内部同时处理二层交换和三层路由。以SW1作为三层设备为例在交换机上创建好VLAN 10和VLAN 20之后分别配置VLANIF接口地址interface Vlanif 10 ip address 192.168.10.1 255.255.255.0 quit interface Vlanif 20 ip address 192.168.20.1 255.255.255.0 quitVLANIF接口就是SVI它是交换机上每个VLAN对应的三层网关。PC的网关地址指向192.168.10.1访问VLAN 20的流量到达SW1后SW1查路由表发现192.168.20.0/24是直连网段于是把报文从VLANIF 20转发到VLAN 20的对应端口。配置完成之后可以通过display ip routing-table看到两个网段的直连路由。只要VLAN内PC的网关都指向了VLANIF地址跨VLAN通信立刻就能生效。三层交换机方案与单臂路由最大的区别在于性能。单臂路由所有流量都过路由器物理口三层交换机的转发通常在硬件芯片内完成速度高出几个量级。所以在预算允许的中型企业网络里三层交换机是绝对的主流。3.4 常用验证命令与我的排障习惯配置VLAN最怕的就是“配完了不知道对不对”。我通常按顺序看三样东西VLAN表、端口VLAN状态、Trunk放行列表。display vlan可以看到交换机上所有的VLAN以及每个VLAN的成员端口这是第一道检查。如果某个端口不在预期的VLAN里说明加入或划分配置有问题。display port vlan可以查看每个端口当前的链路类型、PVID、允许通过的VLAN列表这是第二道检查。比如一个端口应该配成Access和PVID 10结果PVID显示20那肯定错了。display interface trunk或者等价的查看命令用来检查Trunk口的状态。注意看链路是否up、放行列表是否包含了所有需要的VLAN以及两端PVID是否一致。物理层状态也很重要。如果端口显示down优先检查网线、光模块、对端设备是否通电。我见过一个案例配置全对但光纤跳线接到了另一个未启用的端口上结果排查了半天才发现物理链路根本没通。验证VLAN通断最直接的方式还是从终端发起Ping测试让PC-A Ping PC-C既能验证二层VLAN也能验证三层网关一举两得。4. VLAN常见故障排查现象、原因与解决步骤4.1 同一VLAN内主机Ping不通先查这四样A同学曾经拿着配置问我VLAN建了端口也加了PC网卡也设了为什么两台PC在同一个VLAN里还是Ping不通遇到这种问题我一般让他按以下顺序排查。第一看物理链路。端口状态是不是up网线是否有松动或损坏。很多人一上来就查VLAN配置结果网线压根没插好这是最常见的低级问题。第二看端口类型和PVID。确认两台PC接的端口都是Access口并且PVID都是同一个VLAN。如果一台PC接的端口被配置成了Hybrid或Trunk或者PVID错位就会导致帧处理方式完全不符合预期。第三看IP地址。两台PC在同一个VLAN里IP网段必须相同子网掩码也要一致。如果PC-A是192.168.10.5/24PC-B是192.168.11.5/24虽然二层互相能看到但IP层会认为对方不在同一网段Ping就会失败。第四看主机防火墙。Windows自带的防火墙在某些网络配置下会拦截ICMP响应不出意外的话这一项很容易被忽略。先ping网关如果网关通、ping另一台PC不通且前三个都查过没问题就试试临时关闭PC防火墙再测一次。提示同一VLAN内Ping不通90%的原因出在物理链路或IP地址配置上剩下10%才是端口VLAN配置的问题。不要一开始就怀疑交换机按链路、端口、IP、防火墙四步走思路清晰很多。4.2 跨交换机同VLAN断连Trunk问题排第一位跨交换机VLAN不通排障重点几乎都在Trunk链路上。我把常见原因总结成三类。第一是端口没有正确配置为Trunk。两个交换机互联口如果一侧是Access口另一侧是Trunk口Access口只会放行一个VLAN且不带Tag对端Trunk口收到无标签帧后打上自己的PVID两边VLAN根本对不上。解决办法是确保互联两侧都是Trunk。第二是Trunk放行列表不完整。一端放行了VLAN 10和20另一端只放行了VLAN 10那么VLAN 20跨交换机必然不通。用查看命令对比两端放行列表一目了然。第三是PVID不一致。前面讲过Native VLAN的坑如果两端PVID不同那么PVID对应的本征VLAN流量会出现跨设备失联。检查两端Trunk口的PVID是否一致。排障时还有个实用技巧先在两台交换机上配置管理IP并用管理IP互Ping。管理IP如果通说明二层链路和Trunk基本没问题再继续查具体VLAN。管理IP不通问题大概率出在Trunk或物理链路上。4.3 不同VLAN意外互通安全隔离去哪了默认情况下不同VLAN是隔离的如果发现不同VLAN的主机还能直接Ping通那一定是什么地方违背了“默认隔离”这个前提。常见原因有三个。一是三层设备已经把路由打通了。比如在三层交换机上配置了VLANIF同时又放了默认路由或静态路由本来就能互通。这是预期行为不算故障。如果业务上明确要求两个VLAN之间不能互访那就需要配置ACL过滤而不是疑惑为什么VLAN“失效”。二是有人把端口错误地配成了Hybrid或Trunk放行了所有VLAN。比如某个接入端口本应该接一台PC结果被配置成了Trunk或包含多个VLAN的HybridPC发出的无标签帧可能会被误打上其他PVID或者收到的帧带了Tag也能进破坏了隔离。查端口配置时注意看链路类型和放行列表。三是终端手动设置了双IP或多余网关。PC上如果配了两个IP一个在VLAN 10网段一个在VLAN 20网段它会尝试通过两个网段通信看起来就像两个VLAN互通了。这种情况排查终端配置比查交换机更快。4.4 管理VLAN、配置保存这两个隐形坑VLAN配置过程中有两个不显眼但杀伤力极大的坑一个是管理VLAN一个是配置保存。管理VLAN是指网络设备用于远程管理Telnet、SSH、Web的VLAN。很多设备默认管理VLAN是VLAN 1如果你把VLAN 1清空或者改了PVID同时业务VLAN又没有包含管理地址所在网段远程管理就会断掉。我曾经在帮朋友调一个网络时想着把VLAN 1彻底弃用结果一改完交换机的远程管理立即失联最后只能跑现场用Console口救回来。配置保存更常见也更要命。交换机的运行配置默认只存在内存里重启后全部丢失。很多人配完VLAN、测试都通过了就以为万事大吉结果设备一重启所有配置回到初始状态。正确的做法是配置完成后立即执行保存命令让配置写入设备的存储介质。保存后的配置在设备重启后仍然生效。提示修改管理VLAN之前必须确认能通过Console口或其他带外方式访问设备。如果只有远程管理一条路一旦改错就会彻底失联非常被动。5. 配套练习题6道题检验你的VLAN掌握程度5.1 选择题广播域、标签与端口类型第1题一台24口交换机不划分VLAN时处于几个广播域将该交换机第1-8口划入VLAN 10、第9-16口划入VLAN 20、第17-24口划入VLAN 30之后整台交换机处于几个广播域A. 1个切分后是3个B. 3个切分后是3个C. 1个切分后是4个D. 4个切分后是4个第2题标准802.1Q帧中VLAN Tag为数据帧增加了多少字节VLAN ID字段占用多少位A. 2字节10位B. 4字节12位C. 4字节16位D. 2字节12位第3题一台PC直接接入交换机某一端口PC无法识别VLAN Tag。此时该交换机端口应配置为哪种类型A. Trunk口放行所有VLANB. Hybrid口放行部分VLANC. Access口PVID设为PC所属VLAND. Trunk口PVID设为所有VLAN第4题两台交换机通过Trunk链路互联需要让VLAN 10和VLAN 20的帧都能跨交换机传输。哪项或哪几项配置是必须的A. 两端端口都设置成Access模式B. 两端端口都设置为Trunk并放行VLAN 10和20C. 两端端口都设置成Trunk并设置PVID为10D. 两端设置成Trunk且放行列表空即可第5题关于单臂路由实现VLAN间通信下列描述正确的是A. 路由器物理口直接接一台PCB. 路由器子接口需要绑定VLAN ID并配置对应网关地址C. 交换机上需要配置VLANIF接口D. 单臂路由不需要路由器5.2 配置题跨交换机VLAN隔离与三层互通假设有这样的网络环境PC-A接SW1的GE0/0/1PC-B接SW1的GE0/0/2PC-C接SW2的GE0/0/3。SW1和SW2通过各自的GE0/0/24互联。要求PC-A和PC-C属于VLAN 10能够跨交换机二层互通PC-B属于VLAN 20同时PC-A、PC-B、PC-C需要通过三层网关实现跨VLAN互通三层网关所在设备是SW1。请写出SW1和SW2的关键配置包括VLAN创建、端口类型、Trunk放行以及VLANIF地址配置并说明为什么PC-A Ping PC-C时首先经历二层过程而PC-A Ping PC-B时则必须经过三层转发。5.3 答案与关键解析第1题答案C。不划分VLAN时整台交换机就是一个广播域。划分3个VLAN后VLAN 1默认仍然存在即使没有物理端口或空余端口它也算一个广播域。3个业务VLAN加上VLAN 1一共4个广播域。第2题答案B。802.1Q Tag固定增加4字节其中VLAN ID字段是12位取值范围0到4095可用业务范围1到4094。这个知识点常考同时也解释了为什么VLAN数量上限是4094而不是4095。第3题答案C。PC的网卡不支持VLAN Tag接入交换机的端口必须是无标签模式。Access口可以把无标签帧打上PVID并加入对应VLANPC无需额外配置。如果用Trunk口接PC帧默认带Tag普通PC网卡大概率会丢弃这些帧导致无法通信。第4题答案B。跨交换机承载多个VLAN必须使用Trunk口并且放行列表必须显式包含VLAN 10和20。仅设置PVID并不会自动放行所有VLAN放行列表为空就什么VLAN都过不去。A选项Access只能放行一个VLAN错误C选项只解释了PVID放行列表缺失D选项“放行列表空即可”显然是错的。第5题答案B。单臂路由中路由器物理口连接交换机的Trunk口路由器子接口必须通过802.1Q封装绑定对应VLAN ID并配置该VLAN的网关IP。C选项描述的VLANIF属于三层交换机方案不是单臂路由。配置题参考实现SW1配置system-view sysname SW1 vlan batch 10 20 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 quit interface GigabitEthernet0/0/2 port link-type access port default vlan 20 quit interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 quit interface Vlanif 10 ip address 192.168.10.1 255.255.255.0 quit interface Vlanif 20 ip address 192.168.20.1 255.255.255.0 quitSW2配置system-view sysname SW2 vlan batch 10 20 interface GigabitEthernet0/0/3 port link-type access port default vlan 10 quit interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 quit解析PC-A和PC-C都属于VLAN 10数据从PC-A到达SW1后SW1查到目的PC-C的MAC地址通过Trunk链路学习到于是将帧从Trunk口转发到SW2SW2再把帧从GE0/0/3转发给PC-C整个过程是二层转发不需要路由。PC-A Ping PC-B时发现目的IP不在同一网段会把报文交给网关192.168.10.1也就是SW1的VLANIF 10接口SW1查路由表发现192.168.20.0/24是直连网段于是做三层转发从VLANIF 20发出再由二层从GE0/0/2转发给PC-B。这也是为什么三层设备必须配置VLANIF地址的原因。第5题易错点单臂路由和三层交换机的方案容易混。单臂路由的子接口数量对应VLAN数量三层交换机是直接在VLANIF上配IP两者选其一即可。另外无论哪种方案VLAN内PC的网关必须指向对应VLAN的网关地址要不然跨VLAN通信时PC根本不知道把报文交给谁。VLAN配置这部分我个人在实际操作中最深的体会是先规划再动手比什么都重要。一张VLAN划分表、一份端口与VLAN对应关系表能在配置和排障时省下大量时间。另外每配完一台设备我一定执行保存命令这个习惯已经帮我避免过好多次设备重启后配置全丢的尴尬。最后再分享一个小技巧排查VLAN故障时从终端Ping网关入手网关通了说明二层链路和接入配置基本没问题网关不通再逐级往上查交换机端口、Trunk放行列表和管理VLAN思路会清晰很多。