☰
HCIA综合实验:VLAN划分、单臂路由与静态路由配置详解
2026/10/22 8:19:31 网站建设 项目流程

备考华为HCIA、HCIP的朋友应该都有这种感觉:单独练VLAN划分觉得很简单,单独配静态路由也不难,但是一旦把二层交换机、路由器、单臂路由、VLAN、直连路由和静态路由全部揉进一个实验里,问题就扑面而来。哪个接口该放行哪个VLAN、子接口的终结VID怎么对不上、回程路由到底写在哪台设备上——这些细节单独看都懂,串在一起就乱。

这篇就完整复现我在eNSP上做的一个综合组网实验:两台二层交换机下挂多个VLAN终端,上联一台路由器做单臂路由,路由器再通过另一条链路连接一台远端路由器模拟跨网段互通。整个实验把HCIA阶段最重要的交换和路由知识点全部串起来,配置量不大,但非常练脑子。实验做通了,HCIA的VLAN和静态路由部分基本就稳了,HCIP备考时做多实例、多区域的复杂实验也会顺手很多。

1. 综合实验的设计思路与拓扑规划

1.1 这个实验到底在练什么

先说这个实验的实际价值。很多新手在eNSP里做实验有个误区:追求设备数量多、配置命令长,结果排错排到崩溃,最后也没搞明白数据到底是怎么走的。真正有效的综合实验应该像这个题目一样,用有限的设备把完整的数据转发链路走通,让配置和原理对得上。

这个实验的核心训练点有三个。第一个是VLAN的划分与跨交换机传递——终端划分到不同VLAN后,同一台交换机上VLAN间默认隔离,不同交换机之间要通就得靠Trunk链路带上标签跑。第二个是VLAN间路由的两种实现路径——这里选的是单臂路由,也就是在路由器的一个物理接口上划分子接口,每个子接口对应一个VLAN的网关,终结带标签的流量。第三个是跨设备路由的连通性——路由器通往交换机侧各VLAN网段的路径,以及两台路由器之间互联网段的通联,需要静态路由做回程牵引。

这三个点恰好对应HCIA考试里最容易出实验题的部分。VLAN的Access和Trunk接口配置、单臂路由的dot1q termination vid、静态路由的ip route-static,每一个都是高频考点。用一个实验把这三个环节串成一个整体,练一遍之后你对数据帧从PC到交换机再到路由器的完整流程,会有非常直观的认识。

1.2 拓扑结构与地址规划思路

实验拓扑我尽量按项目里常见的组网方式来做:终端汇聚在二层交换机上,交换机通过Trunk上联到路由器,路由器再用独立的接口连接对端路由器,模拟分公司、总部或者外网设备的互访场景。

具体的设备角色和连接关系如下:

  • 两台二层交换机,分别命名为LSW1和LSW2,下挂PC。LSW1下挂PC1、PC2,LSW2下挂PC3、PC4。
  • 一台路由器,命名为AR1,与两台交换机互联。AR1的物理接口下划分多个子接口,分别作为各VLAN的网关。
  • 一台远端路由器,命名为AR2,与AR1通过直连网段互联,模拟非直连网络的互通场景。
  • PC终端分布在VLAN 10和VLAN 20两个网段。

地址规划直接决定后面的配置是否顺畅,我习惯先把所有网段列成一张表再动手:

对象所属VLANIP网段网关/接口地址
PC1VLAN 10192.168.10.0/24网关 192.168.10.1(AR1子接口)
PC2VLAN 10192.168.10.0/24网关 192.168.10.1(AR1子接口)
PC3VLAN 20192.168.20.0/24网关 192.168.20.1(AR1子接口)
PC4VLAN 20192.168.20.0/24网关 192.168.20.1(AR1子接口)
AR1-AR2互联不涉及VLAN192.168.30.0/24AR1 G0/0/1: 192.168.30.1,AR2 G0/0/0: 192.168.30.2
AR2侧环回或PC5模拟不涉及VLAN192.168.40.0/24AR2环回接口: 192.168.40.1

选192.168.10.0、192.168.20.0这种段纯粹是因为好记,生产环境里网段规划会依据业务和掩码来定,但实验里越清晰越好,一眼就能看出报文属于哪个VLAN。互联网段用30.0,远端侧用40.0,整个拓扑一共五个网段,不多不少,正好覆盖直连路由和静态路由的全部场景。

提示:地址规划表一定要在配置前写好,不要边配边想。网段、网关、下一跳这些信息在排错时要反复核对,提前写好能省一半的事。

2. 二层交换机的VLAN配置实操

2.1 交换机VLAN划分与Access接口配置

交换机侧的第一步是创建VLAN并划分接口。在eNSP里操作很简单,但很多人容易忽略一个关键点:VLAN是全局概念,接口划分才是真正的成员关系配置。顺序应该是先创建VLAN,再进入接口视图把接口划进对应VLAN,并且设置正确的接口类型。

终端接交换机口的链路类型必须用 Access,因为终端设备不识别VLAN标签,发出的报文本身就是不带标签的。这个口只需要属于一个VLAN,收到终端发来的无标签帧后,交换机打上该接口所属VLAN的标签再在交换机内部转发。

LSW1的关键配置:

system-view sysname LSW1 vlan batch 10 20 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 interface GigabitEthernet0/0/2 port link-type access port default vlan 20

LSW2的配置逻辑完全一样:

system-view sysname LSW2 vlan batch 10 20 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 interface GigabitEthernet0/0/2 port link-type access port default vlan 20

为什么每台交换机都要创建VLAN 10和VLAN 20?因为这两台交换机上都有分属两个VLAN的终端。如果某台交换机上只有VLAN 10的终端,那只创建VLAN 10就够了,多创建VLAN 20不影响业务,但没必要。实验里两台交换机都下挂了两个VLAN的PC,所以两台都做相同的VLAN创建操作。

这里有个新手常犯的错:只在一台交换机上创建VLAN,另一台没创建,结果Trunk链路怎么配都不通。实际上Trunk对端交换机如果没有对应VLAN,带该VLAN标签的帧会被直接丢弃。

2.2 Trunk接口的作用与PVID理解

两台交换机上联到AR1的接口必须配置为Trunk,这是整个实验的关键链路。普通Access口只能承载一个VLAN的流量,而Trunk口是交换机之间、交换机与路由器之间传递多VLAN流量的通道,它允许带VLAN标签的帧通过。

上联接口配置如下:

interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20

这条命令的含义很明确:该Trunk接口只放行VLAN 10和VLAN 20的流量。eNSP里华为设备默认配置后只放行VLAN 1,所以我每次都会显式列出允许通过的VLAN列表。不要写port trunk allow-pass vlan all,实验里知道有哪些VLAN就直接写哪些,这样Trunk链路上实际跑的流量一目了然,排错也方便。

PVID这个概念也顺带说清楚。Trunk接口默认PVID是VLAN 1,意味着收到不带标签的帧时,会打上VLAN 1的标签。如果上游设备发来的帧已经带了VLAN 10的标签,Trunk口就直接放行,不会再改标签。我们的场景里,上联对象是路由器的子接口,路由器发出的帧都是带标签的,所以Trunk口的PVID用默认的VLAN 1即可,不用额外改。

注意:Trunk链路连接的是交换机和路由器,对端的路由器子接口必须能识别802.1Q标签,否则收到的带标签帧会被丢弃。这就是后面单臂路由配置中dot1q termination vid命令存在的原因。

3. 路由器侧的单臂路由与静态路由配置

3.1 单臂路由子接口的原理与配置步骤

单臂路由解决的是VLAN间互访的问题。二层交换机只能转发同一个VLAN内的帧,不同VLAN之间默认隔离。要让VLAN 10和VLAN 20的PC能互通,就需要一个三层设备来转发。这里没有用三层交换机,而是用路由器的物理接口划分多个子接口,实现了一个物理接口同时充当多个VLAN网关的效果。

为什么叫单臂路由?因为路由器和交换机之间只有一条物理链路,路由器靠一条“手臂”承载多个VLAN的流量。每个子接口上做802.1Q封装终结,收到带VLAN标签的帧后,路由器根据标签确定从哪个子接口处理,从而区分不同VLAN的流量。

AR1连接LSW1的接口是GigabitEthernet0/0/0,我给它创建两个子接口,分别对应VLAN 10和VLAN 20。连接LSW2的接口用GigabitEthernet0/0/1,同样创建两个子接口。这里要特别强调:连接不同交换机的物理接口,子接口的VLAN配置要保持一致,否则同一VLAN的终端经过不同交换机上联时,网关会被拆成两个。

以GigabitEthernet0/0/0为例:

interface GigabitEthernet0/0/0.10 dot1q termination vid 10 ip address 192.168.10.1 255.255.255.0 arp broadcast enable interface GigabitEthernet0/0/0.20 dot1q termination vid 20 ip address 192.168.20.1 255.255.255.0 arp broadcast enable

GigabitEthernet0/0/1.10和GigabitEthernet0/0/1.20的配置同上,分别作为LSW2下挂PC的网关。地址完全一样,IP地址不冲突,因为路由器上同一子接口的地址就是终端的网关。

dot1q termination vid这条命令指定子接口对应的VLAN ID。收到带该VID标签的帧时,由该子接口处理;发送帧时,会打上对应VID的标签。arp broadcast enable必须配,否则子接口不对广播报文做ARP响应,终端发ARP请求找网关MAC时得不到回应,也就无法通信。

常见疑问:为什么子接口要配置IP地址?因为子接口就是终端的网关。PC配置的网关地址必须是路由器子接口的IP,数据跨VLAN时先把帧交给网关,由网关做三层转发。

3.2 直连路由与静态路由的配置逻辑

路由配置是整个实验的另一半重点。路由器在接口配上IP地址后,会自动产生直连路由。AR1的子接口配置完成后,路由表里会自然出现192.168.10.0/24、192.168.20.0/24这些直连路由,指向对应子接口。

但跨设备互通不能只靠直连路由。AR1要访问AR2侧的192.168.40.0/24网段,就必须配置静态路由,告诉路由器“去这个网段,把包交给下一跳192.168.30.2”。同理,AR2要访问AR1身后的192.168.10.0/24和192.168.20.0/24网段,也必须回程配置静态路由,否则AR2收到来自AR1的包却不知道回包怎么走。

AR1上的静态路由:

ip route-static 192.168.40.0 255.255.255.0 192.168.30.2

AR2上的静态路由:

ip route-static 192.168.10.0 255.255.255.0 192.168.30.1 ip route-static 192.168.20.0 255.255.255.0 192.168.30.1

等等,这里有一个非常关键的细节。AR1连接LSW1和LSW2的接口已经通过子接口承接了VLAN 10和VLAN 20的网关,但AR1连接AR2的接口用的是GigabitEthernet0/0/2,IP是192.168.30.1/24。这个物理接口没有做子接口,直接作为互联接口使用,因为互联网段不需要VLAN标签,物理接口直接用IP即可。

再回到AR1的GigabitEthernet0/0/0.10和GigabitEthernet0/0/1.10。这两个子接口IP地址都是192.168.10.1,会不会冲突?不会。因为二者归属于不同的物理接口,路由器先根据物理接口和VLAN标签判断入接口,再匹配子接口。就数据平面而言,LSW1下的VLAN 10终端和LSW2下的VLAN 10终端都把网关指向192.168.10.1,但实际ARP请求只会在各自上联的物理链路上广播,路由器会分别在对应的物理接口子接口上响应。所以两个VLAN 10网段实际上是同一个三层网段,通过两个不同的子接口接入路由器,逻辑上等价于一个广播域通过两条链路接到同一个网关。

但是这里引出一个问题:如果VLAN 10的PC1访问VLAN 20的PC3,数据到了AR1后,路由器查路由表,发现192.168.20.0/24是直连网段,出接口可能是GigabitEthernet0/0/0.20或GigabitEthernet0/0/1.20,路由器可能选择从接收侧对应的子接口转发吗?实际上不会,因为有两个等价路由,路由器会负载分担或选最优路径,但实验中我们不关心从哪条出,只要PC1能ping通PC3就行。如果希望路径更可控,可以在AR1上写静态路由指向特定出接口,但实验场景下不需要。

3.3 路由表与ARP转发流程验证

配置完成后,可以通过display ip routing-table查看AR1的路由表,预期看到:

192.168.10.0/24 Direct GigabitEthernet0/0/0.10 / GigabitEthernet0/0/1.10 192.168.20.0/24 Direct GigabitEthernet0/0/0.20 / GigabitEthernet0/0/1.20 192.168.30.0/24 Direct GigabitEthernet0/0/2 192.168.40.0/24 Static via 192.168.30.2

再看AR2,路由表预期是:

192.168.30.0/24 Direct GigabitEthernet0/0/0 192.168.40.0/24 Direct LoopBack0 192.168.10.0/24 Static via 192.168.30.1 192.168.20.0/24 Static via 192.168.30.1

路由表正确后,数据转发流程已经具备。PC1 ping PC3时,先判断目标地址不在本网段,于是把帧发给网关192.168.10.1。交换机查到网关MAC地址对应的出接口,转发给AR1。AR1的子接口收到带VLAN 10标签的帧,剥掉标签做三层查表,发现目标是192.168.20.0/24网段,于是从对应子接口重新封装,打上VLAN 20标签后从Trunk口交给交换机,交换机根据终端的MAC地址找到PC3。整个过程涉及两次VLAN标签的封装和剥离,这就是单臂路由的核心工作方式。

跨设备访问时,PC1 ping AR2的环回口192.168.40.1,数据到AR1后查路由表,发现是静态路由,下一跳192.168.30.2,于是从GigabitEthernet0/0/2发出。AR2收到后查路由表,发现目标网段是自己的环回口,直接回应。回应包到了AR2后查路由表,发现192.168.10.0/24不是直连网段,如果之前漏配了回程静态路由,包就直接丢弃了。这就是为什么我一直强调回程路由的重要性。

4. 实验中的常见问题与排错技巧实录

4.1 故障现象与根因排查表

eNSP实验做不通,大多数情况下不是命令敲错,而是某个中间链路的状态或者路由条目缺失导致。我把这个实验里最常出现的故障整理成一张表,你按表排查会快很多:

故障现象可能原因检查命令解决办法
PC1 ping 不通 PC3(同交换机跨VLAN)交换机上联口Trunk未放行VLANdisplay port vlan在Trunk接口执行port trunk allow-pass vlan 10 20
PC1 ping 不通 PC3路由器子接口未配arp broadcast enabledisplay current-configuration interface GigabitEthernet0/0/0.10子接口视图下执行arp broadcast enable
PC1 ping 不通 PC3子接口VID与交换机VLAN不对应display dot1q termination vid(或直接看配置)核对子接口的dot1q termination vid与VLAN ID一致
PC1 ping 不通 AR2AR1上缺通往40网段的静态路由display ip routing-table补配ip route-static 192.168.40.0 255.255.255.0 192.168.30.2
PC1 ping 不通 AR2AR2上缺回程路由在AR2上执行display ip routing-table补配ip route-static 192.168.10.0 255.255.255.0 192.168.30.1
PC跨设备ping通但时延高子接口负载分担或环路display ospf peer(无OSPF则跳过)实验一般不存在环路,时延多来自eNSP运行负载,先排查配置

这张表里,前三个问题都是单臂路由配置中最常见的坑,后两个是静态路由最容易遗忘的部分。你可以保存下来,做实验时如果遇到“应该通但实际不通”的情况,按这个顺序查,基本能在两分钟内定位。

4.2 我踩过的几个坑与独家排查心得

做这个实验时,我印象最深的一个坑是子接口的VID与交换机上Trunk口的PVID混淆。有一段时间,我把Trunk口的PVID改成了VLAN 10,结果VLAN 20的流量的行为就变得非常奇怪。后来才想明白,Trunk口的PVID是给无标签帧打标签用的,而路由器子接口发出的帧本身就带标签,Trunk口收到带标签的帧不会重新打标,所以PVID根本不需要改。默认保持VLAN 1即可,越改越乱。

第二个坑是漏配回程静态路由。当时AR1到AR2的静态路由配好了,但AR2上没配回程路由,结果AR1 ping AR2的环回口不通,但AR1 ping AR2的互联接口地址却能通。这个现象很典型:直连网段不需要路由,所以通;目标网段不在直连网段里,没有路由就丢弃。遇到“直连地址通、远端地址不通”的情况,第一反应就应该是查对端的路由表。

第三个坑和eNSP本身有关:做完配置后,有时PC终端之间的通信会失败,但查看所有配置都没问题。这时候先检查终端的IP地址、掩码、网关是否填对,再用display arp查看路由器能否学到终端MAC。如果ARP表里没有终端MAC,优先怀疑Trunk链路放行VLAN的问题,其次检查交换机接口是否处于UP状态。eNSP里物理接口连线后,如果两端接口协议没起来,多半是连线没连好,重新拖线就好。

提示:排错时养成从底层往上层看的习惯:物理层状态(接口是否UP)→ 数据链路层(Trunk放行、VLAN配置、ARP表)→ 网络层(路由表、子接口IP)。先确认底层没问题,再查上层,不要一上来就怀疑路由表。

4.3 实验小节与后续扩展方向

这个实验做完,HCIA的交换和路由基础就等于打通了。PC1、PC2、PC3、PC4之间任意两两ping通,并且PC1能ping通AR2的环回口,就说明整条链路完全正常。之后再往HCIP阶段进阶,可以在现有拓扑上做几个扩展:

  • 把AR1与AR2之间改成OSPF动态路由,删掉静态路由,观察路由表动态学习过程。OSPF在最开始配置时只需要在接口上启用并宣告网段,路由会自动学习,这个转换刚好能巩固你对动态路由优缺点的理解。
  • 把二层交换机换成三层交换机,用VLANIF接口替代单臂路由,对比两种VLAN间路由实现方式的差异。三层交换机的VLANIF接口直接配IP作为网关,转发性能比单臂路由好得多,这也是生产环境里最常见的做法。
  • 在AR1上配置DHCP Server,让终端通过DHCP自动获取IP地址,替代手工配置静态IP。DHCP是HCIA必考内容,和现有VLAN实验叠加,就是一个更完整的园区网入门实验。
  • 在交换机上做端口安全或ACL实验,限制特定VLAN终端的互访权限。ACL在单臂路由的子接口上调用,还能顺便练到流策略的配置。

这些扩展都是在现有拓扑上增量修改,不用重新搭环境。你把这个基础实验的每条配置命令都吃透,再往上叠加新知识点,会比每次都从零开始搭拓扑高效得多。

以我个人的经验,这个实验我在备考HCIA时至少完整重配了三遍。第一遍照教程敲,第二遍关掉教程凭记忆敲,第三遍故意在中间制造故障再排错修复。三遍下来,VLAN、Trunk、单臂路由、静态路由这些知识点就不再是孤立的命令片段,而是连成了一条完整的转发链路。后来做HCIP实验遇到多区域OSPF、BGP基础实验,碰到跨设备路由问题,我第一反应还是先画一张网段表,再顺着数据转发路径逐段核对——这套基本功就是当时这个综合实验打下的。建议你也试试这个方法,做完这个实验,再随手画一下数据包的完整转发路径,收获会比你想象的大很多。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询