第一次接到HCSA作业的时候,我第一反应是:认证考试不是机考吗,怎么还带留作业的?后来才明白,HCSA(华为认证服务工程师)这类实操型认证,机考只是入门,真正拉开差距的是这种“从需求描述到网络落地”的综合课题。第一次作业的题面不算复杂,但要做到配置能通、逻辑能讲清、文档经得起追问,其实挺考验人的。
这篇就把我做第一次HCSA作业的全过程拆开聊:从怎么理解题面、搭实验环境,到VLAN、DHCP、路由、NAT、ACL一步步怎么配,再到交作业前的自检和踩坑记录。无论你是正在备考HCSA,还是刚接触华为数通设备想动手练一练,这套思路都能直接抄。
1. HCSA第一次作业到底在做什么
1.1 HCSA认证的来头与第一次作业的定位
HCSA在华为认证体系里属于服务方向的基础级别,往上还有HCSP,再往上可以冲HCIE。它和更常见的HCIA路由交换认证有区别:HCIA偏重“懂网络原理、会配置”,而HCSA更偏“能交付、能开局、能处理问题”。换句话说,HCSA考核的不是你会不会敲命令,而是你会不会根据用户需求设计一套合理的小型网络,并且把它真正跑起来。
第一次作业通常就卡在“从需求到实现”的转化上。题目一般不会直接告诉你“在交换机上创建VLAN10”,而是给你一段口语化描述,比如:办公区要能上网,财务区不能访问外网,所有PC希望自动获取IP地址。你需要自己把这段话翻译成技术参数,再落地到设备配置。这一步看着简单,实际做起来会发现漏一个环节整条链路就不通。
这种作业的意义在于模拟真实项目的前期阶段。真正去客户现场开局,需求往往比作业题还要模糊,你既要听懂对方在说什么,也要能追问出关键信息,最后交付的东西必须能跑、能维护。所以第一次作业的“标准答案”从来不是某条命令,而是你形成了一套自己的分析和验证方法。
1.2 一份“标准HCSA作业”里藏着哪些考点
我第一次拿到的作业题大致是这样:某公司有三个区域,办公区、财务区、服务器区。办公区有20台PC需要上网,财务区有5台PC不允许访问外网,服务器区有一台内网服务器需要被办公区访问。所有终端要求DHCP自动获取地址。设备方面给了两台交换机、一台路由器,没有更具体的型号。
把题面拆开,其实考点非常明确:
- 二层部分:VLAN划分、Access口与Trunk口配置。办公区和财务区必须隔离广播域,这是最基础的要求。
- 三层部分:VLAN间路由怎么实现,用单臂路由还是VLANIF。这道题里交换机支持三层功能,所以用VLANIF更干净。
- 地址服务:DHCP全局地址池或接口地址池,还要考虑网关、DNS、租期这些参数。
- 出口部分:默认路由、静态路由、NAT基本转换。办公区要能出外网,必须保证回包路径正确。
- 策略控制:财务区禁止访问外网,需要用ACL做报文过滤。
- 验证部分:PC能不能自动获取地址,办公区能否访问外网和服务器,财务区是否真的被挡住。
如果只看“配置”两个字,很多人会忽略最后一条验证,但翻车往往就翻在验证上。设备配置完只是开始,你得能用命令和现象证明这套网络符合需求,否则作业交上去也经不起答辩那关。
2. 作业环境准备与拓扑设计
2.1 用eNSP把实验环境搭起来
华为设备没有真实环境的时候,eNSP(Enterprise Network Simulation Platform)是最常用的仿真平台。第一次做HCSA作业,不建议直接上真机,先用eNSP把逻辑跑通,后面有真机机会再迁移,成本低很多。
eNSP安装有几个细节需要注意。第一,尽量使用官方推荐的版本,我本地用的是V100R003C00SPC100配套的版本,组件太多反而容易出兼容问题。第二,Windows防火墙经常拦截eNSP的通信,安装完最好把eNSP相关进程加入白名单,不然AR路由器启动后会一直卡在启动状态。第三,如果用的是较新的Windows系统,建议以管理员身份运行eNSP,不然VirtualBox组件可能起不来。
设备选型方面,我的做法是:路由器和PC必须用、交换机和真实设备对齐。作业里给了两台交换机,我选了一台S5700做核心,一台S5700做接入。有人喜欢全用二层交换机,然后让路由器做单臂路由,也能实现,但不够贴近真实场景。现在企业网里核心交换机基本都承担了三层网关的职责,路由器专心做出口,所以我在作业里直接按“核心交换机+VLANIF”的方式设计,这样更符合HCSA服务工程师的交付习惯。
启动eNSP之后先别急着连线,先把所有设备拖到画布上,确认型号和接口数量。AR路由器默认有GE0/0/0、GE0/0/1等接口,S5700有24个GE口,PC只有一块网卡。设备启动完成的标准是图标从红色变成绿色,AR设备启动时间会稍长,耐心等一等。
2.2 拓扑与地址规划:动手前先画一张表
很多人做实验喜欢边配边想,我建议反过来:先在纸上把拓扑画清楚,再把地址表列出来。HCSA是服务工程师认证,交付文档本身就是作业的一部分,你连地址规划都没有,后面的配置全是空中楼阁。
我的拓扑是这样规划的三层结构:
- 接入交换机SW2接终端PC,办公区PC划分到VLAN10,财务区PC划分到VLAN20。
- 核心交换机SW1做VLAN网关,同时作为DHCP服务器为终端分配地址。
- 出口路由器AR1连接核心交换机与外部网络,负责NAT和外网路由。
- 服务器Server接在核心交换机上,规划在单独的VLAN30,模拟公司内网服务器。
为什么把服务器单独划一个VLAN?因为第一次作业的核心考点是广播域隔离,服务器区域如果需要被办公区访问,仍然可以走三层路由,二层隔离不影响。而且单独划VLAN的好处是后续如果要限制服务器区的访问权限,有独立的控制点。
地址规划我列成了下面这张表:
| 区域 | VLAN | 网段 | 网关 | DHCP |
|---|---|---|---|---|
| 办公区 | 10 | 192.168.10.0/24 | 192.168.10.1 | 开启 |
| 财务区 | 20 | 192.168.20.0/24 | 192.168.20.1 | 开启 |
| 服务器区 | 30 | 192.168.30.0/24 | 192.168.30.1 | 不开启 |
| 核心与路由器互联 | 无 | 192.168.100.0/30 | 无 | 不开启 |
| 路由器外网接口 | 无 | 203.0.113.0/24 | 无 | 不开启 |
地址规划有个容易被忽视的点:互联地址用了192.168.100.0/30这个子网,而不是随便配成192.168.100.0/24。30位掩码只包含两个可用地址,正好够核心交换机和路由器之间互联使用,还能避免这个段里出现多余的广播地址和网络地址混淆。服务器区我故意不启用DHCP,因为服务器需要固定地址,用DHCP给服务器分地址本身就是一个隐患,作业里不加分反而可能被扣分。
外网地址我用了203.0.113.1,这是一个专门用于文档示例的IP段,不会和现实公网地址冲突,适合模拟环境。实际项目中你会替换成运营商分配的公网IP,但规划思路完全一致。
3. 核心配置实操:把作业一步步跑通
3.1 交换机二层配置:VLAN划分与Trunk放通
拓扑和地址表定下来之后,配置顺序建议从下往上走:先配接入交换机,再配核心交换机,最后配路由器。因为上层设备依赖下层设备的接口和VLAN状态,从下往上配,每一步验证起来都比较清晰。
先看接入交换机SW2。我要做两件事:创建VLAN10和VLAN20,然后让连接PC的接口以Access方式加入对应VLAN,连接核心交换机的接口以Trunk方式放通这两个VLAN。
接入交换机配置命令如下:
system-view sysname SW2 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 interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 quit这里有个细节:华为交换机接口默认是Hybrid口,和思科的默认VLAN1有区别,所以每个接口都要显式指定链路类型。PC口用Access没争议,但连接核心的接口,有些同学会顺手也配成Access,这样VLAN10和VLAN20的报文在Trunk上都会被剥掉标签,VLAN隔离就失效了。所以连接交换机之间的接口,必须配置为Trunk并放通需要的VLAN。
核心交换机SW1的配置麻烦一些。它既要承担二层转发,又要承担三层网关。先看二层部分:
system-view sysname SW1 vlan batch 10 20 30 interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 30 quit注意我在核心交换机上创建了VLAN30,服务器区需要在这里划VLAN,再通过三层接口让办公区访问它。如果漏了VLAN30,后面配置VLANIF30的时候会发现接口根本不存在,只能回头补一条vlan 30,虽然不难,但容易打断思路。
3.2 网关与DHCP:让办公和财务自动获取地址
VLAN划好之后,接下来的重点是让VLAN有网关,还要让终端自动获取地址。这两个在第一次作业里经常被合并成一个环节,因为网关要配在VLANIF接口上,DHCP地址池里的网关地址也必须指向这个VLANIF。
在核心交换机SW1上,先创建各VLAN的三层接口:
interface Vlanif10 ip address 192.168.10.1 255.255.255.0 quit interface Vlanif20 ip address 192.168.20.1 255.255.255.0 quit interface Vlanif30 ip address 192.168.30.1 255.255.255.0 quitAD地址池用全局方式,我更喜欢全局地址池,因为可维护性更好。用接口地址池的话,改网关地址时还要记得同步改池子,全局池集中管理更方便。
创建DHCP地址池的命令如下:
ip pool vlan10 network 192.168.10.0 mask 255.255.255.0 gateway-list 192.168.10.1 dns-list 223.5.5.5 lease day 1 hour 0 minute 0 quit ip pool vlan20 network 192.168.20.0 mask 255.255.255.0 gateway-list 192.168.20.1 dns-list 223.5.5.5 lease day 1 hour 0 minute 0 quit然后让对应VLANIF接口启用DHCP服务:
interface Vlanif10 dhcp select global quit interface Vlanif20 dhcp select global quit这里有个特别容易踩的坑:DNS地址我用223.5.5.5,这是国内公共DNS,属于可以用但不依赖具体运营商的环境。有的同学图省事不配DNS,结果PC能Ping通网关但Ping不通域名,交作业时被问一句“PC能上外网吗”,就只能尴尬地说“能上IP但上不了网”。DHCP发出的DNS配置,在验证时一定要检查。
服务器区VLANIF30不需要启用DHCP,因为服务器的地址要手工指定。在第一次作业里,服务器地址设成192.168.30.2/24,网关指向192.168.30.1,这就够了。
3.3 出口路由器:静态路由与NAT
交换机这边的默认网关和DHCP都解决了,接下来要让办公区能访问外网。出口路由器AR1上要做三件事:给互联接口和外网接口配IP、配置回程路由、配置NAT。
先看接口配置:
system-view sysname AR1 interface GigabitEthernet0/0/0 ip address 192.168.100.2 255.255.255.252 quit interface GigabitEthernet0/0/1 ip address 203.0.113.1 255.255.255.0 quit互联地址192.168.100.0/30网段里,核心交换机用的是192.168.100.1,路由器用的是192.168.100.2,这样不会冲突。外网接口203.0.113.1模拟公网地址。
路由器要回内网的静态路由,因为办公区和财务区的网段都在核心交换机后面,路由器默认不知道这些内网地址该怎么走:
ip route-static 192.168.10.0 255.255.255.0 192.168.100.1 ip route-static 192.168.20.0 255.255.255.0 192.168.100.1 ip route-static 192.168.30.0 255.255.255.0 192.168.100.1这三条静态路由可以合并写法,比如ip route-static 192.168.0.0 255.255.0.0 192.168.100.1,但作业里不建议这么写。因为汇总路由会让调试时难以区分具体流量走向,而且如果以后某个网段要做策略控制,明细路由更清晰。
NAT方面,我想让办公区能访问外网,财务区不能访问外网,所以NAT只匹配办公区网段。可以定义一个ACL作为NAT匹配条件:
acl number 2001 rule 5 permit source 192.168.10.0 0.0.0.255 quit interface GigabitEthernet0/0/0 nat outbound 2001 quit这条命令翻译成人话就是:从内网接口出去的流量,只要源地址是办公区网段,就自动转换成路由器外网接口的公网地址。然后核心交换机上还要有一条默认路由指向路由器,不然办公区的PC拿到网关IP之后,不知道该把去外网的包交给谁。
回到核心交换机SW1上加一条默认路由:
ip route-static 0.0.0.0 0.0.0.0 192.168.100.2这里的192.168.100.2是路由器与核心交换机互联的那个接口地址。加上之后,办公区PC访问外网数据包的转发路径才是完整的:PC -> 核心交换机VLANIF10 -> 默认路由 -> 路由器 -> NAT -> 外网。
3.4 ACL访问控制:财务区限制上网的落地
NAT配置完成后,办公区理论上可以访问外网了,但财务区也能访问外网,这就不符合题目要求。所以接下来要做访问控制,让财务区网段不能出去,同时还要保证办公区和服务器区不受影响。
ACL可以放在多个位置,常见的选择有两种:一种放在核心交换机上,一种放在路由器上。我的做法是放路由器AR1的入接口方向,也就是从内网进入路由器的方向。这样财务区访问外网的包在还没进路由器之前就被丢弃了,省掉了后续NAT和转发的开销。
配置如下:
acl number 3001 rule 5 deny source 192.168.20.0 0.0.0.255 rule 10 permit source 192.168.10.0 0.0.0.255 rule 15 deny quit interface GigabitEthernet0/0/0 traffic-filter inbound acl 3001 quit为什么用3001而不是2001?2001是基本ACL,只能匹配源地址;3001是高级ACL,还能匹配协议、端口、目的地址。虽然这里只需要匹配源地址,但用3001的好处是以后如果想精确限制财务区只能访问某台服务器、不能访问其他地址,规则扩展起来不用重配接口方向。
规则顺序也要注意。华为ACL匹配遵循“先命中先生效”的原则,所以必须把deny写在permit前面,最后加一条deny兜底。实战里很多同学把permit写在前面,导致ACL永远允许流量通过,看起来“配置成功”,实际上ACL没生效。
ACL配置完,建议顺手验证一下,尽量不要跳过了验证。在路由器上执行display traffic-filter applied-record查看接口上生效的ACL编号和方向,确认是3001、方向是inbound,这样配置才是真正挂上了。
3.5 配置保存与版本整理
所有配置完成后,最后一步容易让人觉得无关紧要,其实特别重要:保存配置和导出配置文件。在eNSP里如果你只是敲完命令不保存,下次启动设备后配置全部丢失,作业白做。
设备上执行保存命令:
save系统会提示是否确认保存,输入Y回车就行。路由器、核心交换机、接入交换机都要做这个操作。
我还会另外做一件事:把每台设备的配置都导出成文本文件,命名带上设备名和日期。例如:
- SW1_20250130.cfg
- SW2_20250130.cfg
- AR1_20250130.cfg
这样交作业时可以直接把配置贴给老师或者同事看,也方便自己回滚对比。我第一次做作业时只保存了eNSP工程文件,后来想改某个错误配置却找不到原始版本,只能重新敲一遍,教训很深刻。
4. 排错、自检与常见坑
4.1 ping不通时的排查顺序
第一次做HCSA作业,你一定会遇到ping不通的情况。这太正常了,关键是建立一套固定的排查顺序,不要瞎猜。
我的排查顺序是从物理层一路向上看,先看端口状态和VLAN,再看ARP、路由、ACL。
第一步,在PC上Ping网关。如果PC能Ping通自己的网关,说明二层和VLAN这部分基本正常。如果Ping不通,先去交换机上执行display port vlan查看接口VLAN是否包含正确,再查display mac-address看有没有学到PC的MAC。学不到MAC基本就是接口类型或VLAN配置错了。
第二步,Ping核心交换机的VLANIF网关,然后Ping路由器的互联地址。办公区PC去Ping 192.168.100.2,如果通,说明默认路由和三层转发基本正确;如果不通,在核心交换机上看display ip routing-table,确认默认路由是否存在,下一跳是否写到192.168.100.2。
第三步,Ping外网服务器地址203.0.113.2。如果到这一步不通,问题大概率出在NAT或路由器回程路由。在路由器上执行display nat session all看有没有对应NAT会话,如果没有,说明NAT匹配的ACL可能有问题,或者接口应用位置不对。
这里有一个很容易让人迷惑的细节:办公区PC能Ping通外网IP,但财务区PC还是能Ping通外网IP,这种情况大概率是ACL没生效。检查顺序是先看ACL是否定义了deny规则,再看ACL是否绑定在正确的接口和方向。很多人在路由器上用traffic-filter outbound acl 3001,方向搞反了。内网访问外网的流量在AR1的GE0/0/0接口上是“进入”路由器的方向,所以必须是inbound。
4.2 eNSP实验环境的几个经典“坑”
eNSP是模拟环境,有些问题不是配置错误,但会让配置无法生效,这属于工具层面的坑,也得知道。
第一个坑:AR路由器启动慢或者卡在“启动中”。这多半是VirtualBox进程被防火墙拦截,或者电脑内存不够。我自己的经验是关掉Windows防火墙对VirtualBox的拦截,另外保证至少8GB内存,AR设备启动才会顺畅。
第二个坑:设备接口没有线缆但显示“up”。eNSP里有时你只拖了设备没连线,接口状态却显示up,这是模拟器显示问题。做验证前先看一眼拓扑图,确认所有线缆连接完整,避免在没连线的状态下排查半天。
第三个坑:PC网卡配置好后无法DHCP获取地址。eNSP的PC上默认没有启动DHCP客户端,需要手动选择DHCP方式;另外PC和交换机之间连线后必须等接口状态变为up,再重新获取地址。我遇到过一次PC一直获取不到地址,后来发现是PC连到了交换机的错误接口上,查了接口状态才发现连到的是GigabitEthernet0/0/3而不是规划好的0/0/1。
第四个坑:配置命令打了没报错,但save之后重启配置还在,只是接口还是起不来。这种情况检查一下接口是否被shutdown了。华为设备接口默认是开启的,但eNSP里偶尔会因为之前做过链路测试把接口手动shutdown,排查时记得看一眼display interface brief。
4.3 交作业前的自检清单
交作业之前不要光看“PC能上网”就收工,建议按下面这个清单逐项过一遍:
| 检查项 | 验证方法 | 预期结果 |
|---|---|---|
| VLAN划分 | display vlan | VLAN10、20、30均存在 |
| 接口类型 | display port vlan | PC口为Access,级联口为Trunk且放通对应VLAN |
| VLANIF网关 | ping 192.168.10.1 | 办公区PC能Ping通 |
| DHCP分配 | PC上执行ipconfig | 获取到192.168.10.x或192.168.20.x,且网关正确 |
| 路由表 | display ip routing-table | 核心交换机有默认路由,路由器有内网明细路由 |
| NAT转换 | display nat session all | 办公区访问外网时有NAT会话 |
| ACL生效 | display traffic-filter applied-record | 3001已绑定在GE0/0/0的inbound方向 |
| 财务区隔离 | 财务区PC Ping外网地址 | 不通,Ping网关和办公区地址正常 |
最后一项特别说明一下:财务区不能访问外网,但财务区Ping办公区和服务器还是要通的。如果ACL把财务区到所有地址都deny了,就会出现“网络全断”的现象,这也不符合题目要求。所以ACL规则要精准匹配外网,而不是盲目deny所有流量。我在配置里只针对财务区网段做了deny,其余流量放行,这样财务区仍然可以访问办公区和服务器,只是不能出外网。
5. 第一次作业后我想说的
做完第一次HCSA作业,最大的感受是:HCSA考的并不是“会不会敲命令”,而是“遇到问题能不能有理有据地把网络搭起来”。配置命令背得再熟,不理解VLAN、三层网关、路由和NAT之间的关系,作业做起来依然一头雾水。
交完作业后,我保留了当时的拓扑图和配置文件,后来又抽时间重新把相同需求用“单臂路由”的方式做了一遍。同一道作业,用两种不同方案实现,对理解三层转发和VLAN间路由帮助很大。如果你想再往上考HCSP甚至HCIE,这种“换方案重做”的习惯建议尽早养成。
最后分享一个小技巧:HCSA作业里H3C模拟器也能做,但命令风格略有不同。如果你确定走华为方向,不要混用模拟器,更不要拿着思科的习惯套华为。每一个配置挨个敲一遍,然后自己画一张“数据包从终端出发,经过哪些设备,转换什么地址”的流程图,这张图才是你交作业时最值钱的东西。