华为eNSP综合组网实验:VLAN、NAT、ACL、OSPF与DHCP全网互通实战
简介这份资源是面向网络技术初学者与华为认证备考者的综合组网实验指导文档基于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/24192.168.10.1192.168.10.100-200VLAN 20服务器区192.168.20.0/24192.168.20.1静态分配VLAN 30访客区192.168.30.0/24192.168.30.1192.168.30.100-200VLAN 99管理区192.168.99.0/24192.168.99.1静态分配出口互联网关到 ISP10.0.0.0/3010.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 10PC 发出的无标签帧进入交换机后被打上 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应用后立刻测试。翻车最多的就是规则顺序和应用方向这两个地方多花两分钟能省一晚上排查时间。希望帮到你。本文还有配套的精品资源点击获取