简介:这份资源是面向网络技术初学者与华为认证备考者的综合组网实验指导文档,基于eNSP虚拟环境模拟学校实验室网络,帮助读者掌握VLAN划分、VLAN间通信、静态与动态路由、链路聚合、NAT地址转换、ACL访问控制及DHCP等核心配置技能。资源包内含1个PDF文件,约140KB,以图文与命令配置说明为主,涵盖实验拓扑、实验分析及LSW1等设备的详细配置步骤,便于对照实操。目前已有9997人学习下载,说明其内容在同类实验资料中认可度较高。读者可从中获得完整的组网实验流程、关键命令示例与排错思路,适合需要系统练习华为设备配置、理解VLAN与路由综合应用的中级学习者参考。
1. 综合组网实验到底在练什么:从一台交换机到全网互通
很多人第一次打开 eNSP,拖出两台 S5700、几台 PC,配完 VLAN 发现 PC 之间 ping 不通,就开始怀疑模拟器有问题。其实综合组网实验练的不是某一个协议,而是把 VLAN 划分、VLAN 间通信、NAT 地址转换、ACL 访问控制、DHCP 自动分配、OSPF 动态路由这几块拼成一张能跑通的网。它解决的核心问题是:当网络被切成多个广播域之后,怎么让该通的通、不该通的隔离、内网能出去、外网进不来。适合正在准备华为 HCIA/HCIP 实验考试的人,也适合需要快速验证企业网拓扑的运维和售前工程师。eNSP 的价值在于,你可以在笔记本上把园区网、出口网关、ISP 模拟全部跑起来,翻车了直接重置,不用等机架。
2. 拓扑设计与地址规划:先把这张网画清楚
2.1 三层架构在 eNSP 里怎么落地
综合组网实验最常见的拓扑是「接入-汇聚-核心」三层结构,出口再挂一台路由器模拟 ISP。接入层用 S5700 做 VLAN 划分和端口隔离,汇聚层做 VLAN 间路由或单臂路由,核心层跑 OSPF 打通全网,出口路由器做 NAT 和 ACL。我一般会这样分配设备角色:两台 S5700 分别作为接入和汇聚,一台 AR2220 作为出口网关,另一台 AR2220 模拟运营商,PC 和 Server 若干。
选 S5700 而不是 S3700,是因为 S5700 支持完整的 VLAN、ACL、DHCP Snooping 和 OSPF,在 eNSP 里稳定性也更好。AR2220 支持 NAT、ACL、OSPF、DHCP,作为出口设备足够用。如果你用的是 eNSP Pro 离线版,设备型号会更全,但基础实验用经典版就够。
拓扑确定后,地址规划必须先行。我习惯用一张表把 VLAN、网段、网关、DHCP 池全部列清楚,避免配到一半发现网段冲突。
| VLAN ID | 用途 | 网段 | 网关 | DHCP 池 |
|---|---|---|---|---|
| VLAN 10 | 办公区 | 192.168.10.0/24 | 192.168.10.1 | 192.168.10.100-200 |
| VLAN 20 | 服务器区 | 192.168.20.0/24 | 192.168.20.1 | 静态分配 |
| VLAN 30 | 访客区 | 192.168.30.0/24 | 192.168.30.1 | 192.168.30.100-200 |
| VLAN 99 | 管理区 | 192.168.99.0/24 | 192.168.99.1 | 静态分配 |
| 出口互联 | 网关到 ISP | 10.0.0.0/30 | 10.0.0.1 | 无 |
这张表看起来简单,但实际配的时候,VLAN 99 管理区经常被忽略,导致后面想远程登录设备时发现没有可达路径。建议一开始就把管理 VLAN 规划进去,所有设备的 VTY 接口都绑定管理网段。
2.2 端口类型与 PVID 的配置逻辑
端口类型是 VLAN 实验里最容易翻车的地方。Access 口用于连接终端,Trunk 口用于交换机之间,Hybrid 口在华为设备上可以灵活控制带标签和不带标签的流量。我一般这样配:
# 接入交换机:创建 VLAN <Huawei> system-view [Huawei] sysname ACC-SW [ACC-SW] vlan batch 10 20 30 99 # 配置连接 PC 的 Access 口 [ACC-SW] interface GigabitEthernet 0/0/1 [ACC-SW-GigabitEthernet0/0/1] port link-type access [ACC-SW-GigabitEthernet0/0/1] port default vlan 10 [ACC-SW-GigabitEthernet0/0/1] quit # 配置上行 Trunk 口,放通所有业务 VLAN [ACC-SW] interface GigabitEthernet 0/0/24 [ACC-SW-GigabitEthernet0/0/24] port link-type trunk [ACC-SW-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20 30 99 [ACC-SW-GigabitEthernet0/0/24] port trunk pvid vlan 99 [ACC-SW-GigabitEthernet0/0/24] quit这里有几个参数需要说清楚。port default vlan 10把 Access 口划入 VLAN 10,PC 发出的无标签帧进入交换机后被打上 VLAN 10 的标签。port trunk allow-pass vlan决定 Trunk 口允许哪些 VLAN 通过,没放通的 VLAN 流量会被丢弃。port trunk pvid vlan 99设置 Trunk 口的默认 VLAN,当收到无标签帧时归入 VLAN 99,这个配置在管理流量和某些厂商互通场景下很关键。
注意:Trunk 口的 PVID 和 allow-pass 是两回事。PVID 只影响无标签帧的归属,allow-pass 决定带标签帧能不能过。很多人配了 PVID 但忘了放通对应 VLAN,结果管理流量不通,排查半天。
3. VLAN 间通信与 DHCP:让该通的通起来
3.1 单臂路由与三层交换的选型对比
VLAN 间通信有两种主流做法:单臂路由和三层交换。单臂路由用路由器的一个物理接口划分子接口,每个子接口对应一个 VLAN 网关,成本低但性能受限于路由器转发能力。三层交换在交换机上直接起 VLANIF 接口,转发性能高,是企业网的主流选择。
在 eNSP 里,如果你用 S5700 做汇聚,直接起 VLANIF 最省事:
# 汇聚交换机:配置 VLANIF 作为网关 [AGG-SW] interface Vlanif 10 [AGG-SW-Vlanif10] ip address 192.168.10.1 24 [AGG-SW-Vlanif10] quit [AGG-SW] interface Vlanif 20 [AGG-SW-Vlanif20] ip address 192.168.20.1 24 [AGG-SW-Vlanif20] quit [AGG-SW] interface Vlanif 30 [AGG-SW-Vlanif30] ip address 192.168.30.1 24 [AGG-SW-Vlanif30] quit [AGG-SW] interface Vlanif 99 [AGG-SW-Vlanif99] ip address 192.168.99.1 24 [AGG-SW-Vlanif99] quitVLANIF 接口的 IP 就是对应 VLAN 的网关地址。配完之后,VLAN 10 和 VLAN 20 的 PC 就能互相 ping 通,因为三层交换机内部会做路由转发。如果你用的是单臂路由,配置逻辑类似,只是把 VLANIF 换成路由器的子接口:
# 路由器单臂路由配置 [AR-GW] interface GigabitEthernet 0/0/0.10 [AR-GW-GigabitEthernet0/0/0.10] dot1q termination vid 10 [AR-GW-GigabitEthernet0/0/0.10] ip address 192.168.10.1 24 [AR-GW-GigabitEthernet0/0/0.10] arp broadcast enable [AR-GW-GigabitEthernet0/0/0.10] quitdot1q termination vid 10表示这个子接口处理 VLAN 10 的标签,arp broadcast enable必须开,否则 ARP 请求无法从子接口广播出去,PC 学不到网关 MAC,表现就是 ping 不通网关。
选型建议:如果实验里 VLAN 数量少、流量不大,单臂路由够用;如果要做 ACL 和 DHCP 集中管理,三层交换更顺手。我一般用三层交换做 VLAN 间路由,出口路由器只负责 NAT 和默认路由。
3.2 DHCP 池的配置与中继
DHCP 可以让 PC 自动获取 IP,省去手工配置的麻烦。在汇聚交换机上配 DHCP 池:
# 开启 DHCP 服务 [AGG-SW] dhcp enable # 配置 VLAN 10 的地址池 [AGG-SW] ip pool vlan10 [AGG-SW-ip-pool-vlan10] network 192.168.10.0 mask 24 [AGG-SW-ip-pool-vlan10] gateway-list 192.168.10.1 [AGG-SW-ip-pool-vlan10] dns-list 114.114.114.114 [AGG-SW-ip-pool-vlan10] excluded-ip-address 192.168.10.1 192.168.10.99 [AGG-SW-ip-pool-vlan10] quit # 在 VLANIF 接口上启用 DHCP [AGG-SW] interface Vlanif 10 [AGG-SW-Vlanif10] dhcp select global [AGG-SW-Vlanif10] quitnetwork指定地址池网段,gateway-list是网关,excluded-ip-address排除静态地址范围,dhcp select global表示接口使用全局地址池。如果 DHCP 服务器和客户端不在同一个网段,需要在网关接口上配dhcp select relay并指定服务器地址。
注意:eNSP 里 PC 默认是 DHCP 模式,配好地址池后在 PC 上执行ipconfig /renew就能拿到地址。如果拿不到,先检查 VLANIF 接口状态是不是 up,再检查 DHCP 池的网段和网关是否匹配。
4. NAT 与 ACL:出口控制和访问隔离
4.1 NAT 地址转换的三种模式
NAT 解决的是内网私有地址访问外网的问题。华为设备上常见三种模式:Easy IP、NAPT、NAT Server。Easy IP 最常用,直接用出口接口的 IP 做转换:
# 出口路由器:配置 NAT [AR-GW] acl 2000 [AR-GW-acl-basic-2000] rule permit source 192.168.0.0 0.0.255.255 [AR-GW-acl-basic-2000] quit [AR-GW] interface GigabitEthernet 0/0/1 [AR-GW-GigabitEthernet0/0/1] nat outbound 2000 [AR-GW-GigabitEthernet0/0/1] quitacl 2000是基本 ACL,匹配内网源地址。nat outbound 2000表示匹配 ACL 2000 的流量做 Easy IP 转换。如果要做 NAT Server,把内网服务器映射到公网:
[AR-GW] interface GigabitEthernet 0/0/1 [AR-GW-GigabitEthernet0/0/1] nat server protocol tcp global current-interface 8080 inside 192.168.20.100 80 [AR-GW-GigabitEthernet0/0/1] quit这条命令把公网接口的 8080 端口映射到内网 192.168.20.100 的 80 端口。current-interface表示使用当前接口 IP,也可以写具体公网地址。
4.2 ACL 实现 VLAN 间单向访问
ACL 在综合组网实验里通常用来做访问控制,比如允许办公区访问服务器区,但禁止访客区访问服务器区。华为交换机支持高级 ACL,可以匹配源、目的 IP 和端口:
# 禁止 VLAN 30 访问 VLAN 20,但允许其他流量 [AGG-SW] acl 3000 [AGG-SW-acl-adv-3000] rule deny ip source 192.168.30.0 0.0.0.255 destination 192.168.20.0 0.0.0.255 [AGG-SW-acl-adv-3000] rule permit ip [AGG-SW-acl-adv-3000] quit # 在 VLANIF 30 入方向应用 ACL [AGG-SW] interface Vlanif 30 [AGG-SW-Vlanif30] traffic-filter inbound acl 3000 [AGG-SW-Vlanif30] quitrule deny ip拒绝 VLAN 30 到 VLAN 20 的所有流量,rule permit ip放行其他流量。ACL 规则是按顺序匹配的,所以拒绝规则必须写在放行规则前面。traffic-filter inbound表示在接口入方向过滤,也就是流量进入 VLANIF 30 时检查。
注意:ACL 应用方向很关键。如果应用在 outbound,匹配的是从该接口出去的流量,逻辑容易搞反。我一般习惯在靠近源地址的入方向做过滤,减少无效流量转发。
5. OSPF 与全网互通:动态路由打通出口
5.1 OSPF 区域划分与邻居建立
OSPF 用来打通汇聚交换机、出口路由器和 ISP 模拟路由器之间的路由。在 eNSP 里,我一般把内网设备放在 Area 0,出口和 ISP 之间也用 Area 0,简化配置:
# 汇聚交换机:启用 OSPF [AGG-SW] ospf 1 router-id 2.2.2.2 [AGG-SW-ospf-1] area 0 [AGG-SW-ospf-1-area-0.0.0.0] network 192.168.10.0 0.0.0.255 [AGG-SW-ospf-1-area-0.0.0.0] network 192.168.20.0 0.0.0.255 [AGG-SW-ospf-1-area-0.0.0.0] network 192.168.30.0 0.0.0.255 [AGG-SW-ospf-1-area-0.0.0.0] network 192.168.99.0 0.0.0.255 [AGG-SW-ospf-1-area-0.0.0.0] quit [AGG-SW-ospf-1] quit # 出口路由器:启用 OSPF 并宣告互联接口 [AR-GW] ospf 1 router-id 3.3.3.3 [AR-GW-ospf-1] area 0 [AR-GW-ospf-1-area-0.0.0.0] network 10.0.0.0 0.0.0.3 [AR-GW-ospf-1-area-0.0.0.0] quit [AR-GW-ospf-1] default-route-advertise always [AR-GW-ospf-1] quitrouter-id是 OSPF 的唯一标识,一般用 Loopback 地址或手动指定。network命令宣告参与 OSPF 的网段,注意反掩码的写法。default-route-advertise always让出口路由器向 OSPF 域内下发默认路由,内网设备就能通过默认路由访问外网。
5.2 路由验证与排错命令
配完 OSPF 后,用display ospf peer检查邻居状态,Full 表示邻接关系建立成功。用display ip routing-table查看路由表,确认内网设备学到了默认路由,出口路由器学到了内网明细路由。
如果邻居起不来,常见原因有:接口未宣告、区域 ID 不匹配、Hello 时间不一致、网络类型不匹配。在 eNSP 里,串口默认是 PPP 封装,如果要用 OSPF 跑在串口上,需要改成 HDLC 或 PPP 并确保两端一致。以太网口一般没问题。
# 查看 OSPF 邻居 [AGG-SW] display ospf peer brief # 查看路由表 [AGG-SW] display ip routing-table # 查看 OSPF 接口状态 [AGG-SW] display ospf interface GigabitEthernet 0/0/24这些命令在排错时按顺序执行,先看邻居,再看路由,最后看接口。如果邻居 Full 但路由表没有对应条目,检查 network 宣告是否包含了正确的网段。
6. 综合组网避坑与排查:那些让我熬夜的瞬间
6.1 坑一:Trunk 口 PVID 配错导致管理流量不通
现象:交换机之间 Trunk 配好了,业务 VLAN 能通,但 Telnet 管理地址 ping 不通。
原因:Trunk 口的 PVID 设置成了某个业务 VLAN,管理 VLAN 99 的流量被错误地打上了业务 VLAN 标签,或者管理 VLAN 没有放通。
解决:检查port trunk pvid vlan是否和管理 VLAN 一致,确认port trunk allow-pass vlan包含了管理 VLAN。我一般把 PVID 设为管理 VLAN,避免无标签帧乱跑。
6.2 坑二:ACL 规则顺序写反导致全通或全断
现象:配了 ACL 想禁止访客访问服务器,结果访客能访问,或者所有流量都断了。
原因:ACL 是顺序匹配的,如果rule permit ip写在rule deny ip前面,拒绝规则永远不会生效。如果只写了拒绝规则没写放行规则,华为设备默认拒绝所有,导致全断。
解决:拒绝规则在前,放行规则在后。配完后用display acl 3000查看规则顺序,确认匹配计数。
6.3 坑三:NAT 没配 ACL 导致内网出不去
现象:内网 PC 能 ping 通网关,但 ping 不通外网地址。
原因:nat outbound后面没跟 ACL,或者 ACL 没有匹配内网源地址。有些设备上nat outbound不跟 ACL 表示所有流量都转换,但华为设备需要明确指定。
解决:确认 ACL 规则匹配了内网网段,nat outbound绑定了正确的 ACL 编号。用display nat session all查看 NAT 会话表,确认流量是否被转换。
6.4 坑四:DHCP 池网段和 VLANIF 不匹配
现象:PC 获取不到 IP,或者获取到错误网段的 IP。
原因:DHCP 池的network命令写的网段和 VLANIF 接口不在同一个网段,或者gateway-list写错了。
解决:DHCP 池的网段必须和对应 VLANIF 接口的网段一致,网关地址必须是 VLANIF 的 IP。用display ip pool查看地址池状态,确认可用地址数量。
6.5 坑五:OSPF 宣告了错误的网段导致路由黑洞
现象:路由表里有默认路由,但 ping 外网时通时不通。
原因:OSPF 宣告了不存在的网段,或者default-route-advertise没加always,导致默认路由没有下发。
解决:检查network命令宣告的网段是否和接口实际网段一致,出口路由器上确认default-route-advertise always已配置。用display ospf lsdb查看链路状态数据库,确认 LSA 是否正常。
7. 进阶技巧:用 ACL 做单向访问和流量统计
综合组网实验做到最后,最值得花时间打磨的是 ACL 的精细控制。比如实现「办公区可以访问服务器区,但服务器区不能主动访问办公区」这种单向访问,单纯用拒绝规则做不到,因为 ACL 无法区分方向。常见做法是用高级 ACL 匹配源和目的,配合established关键字或者反射 ACL。
在华为设备上,可以用rule permit tcp source 192.168.20.0 0.0.0.255 destination 192.168.10.0 0.0.0.255 established来实现:服务器区只能回应办公区发起的 TCP 连接,不能主动发起。established匹配 TCP 的 ACK 或 RST 标志位,表示这是回应包。
另一个实用技巧是用 ACL 做流量统计。在 ACL 规则后面加counting参数,然后用display acl查看匹配计数:
[AGG-SW] acl 3001 [AGG-SW-acl-adv-3001] rule permit ip source 192.168.10.0 0.0.0.255 destination 192.168.20.0 0.0.0.255 counting [AGG-SW-acl-adv-3001] quit配完后display acl 3001会显示每条规则匹配了多少报文。这个功能在排查「到底哪个网段在访问服务器」时特别有用,比抓包快得多。
验证方法:在 PC 上持续 ping 服务器,然后查看 ACL 计数是否增长。如果计数不增长,说明流量没有匹配到规则,检查 ACL 应用方向和接口是否正确。
我自己的习惯是,每配完一个 ACL,先用display acl确认规则顺序,再用traffic-filter应用后立刻测试。翻车最多的就是规则顺序和应用方向,这两个地方多花两分钟,能省一晚上排查时间。希望帮到你。
本文还有配套的精品资源,点击获取