ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

华为eNSP从零开始:依赖安装、VLAN配置与三层互通实战

2026/10/6 17:54:40 拓冰建站 浏览量
华为eNSP从零开始:依赖安装、VLAN配置与三层互通实战 简介华为ENSP是华为官方的网络模拟平台这份配置文档围绕其常用网络技术整理尤其适合网络初学者、备考华为认证或需要进行协议实验复现的工程师。内容以设备配置流程为主线系统覆盖VLAN划分与trunk放行、VLAN间路由单臂路由和VLANIF、静态路由与OSPF动态路由、ACL访问控制、Eth-Trunk链路聚合、DHCP自动分配以及静态/动态NAT等典型实验每个模块都配有CLI命令、接口划分示例、验证方式和常见注意事项可帮助读者快速搭建拓扑在仿真环境中理解配置原理并掌握排错思路。压缩包内为1个docx文档约680KB排版紧凑章节按协议模块组织便于对照学习或在实训中随时查阅。目前已有339人学习下载整套内容可作为ENSP从入门到进阶的配置速查手册对系统梳理网络基础命令和提升实验操作能力很有帮助。1. 华为ENSP基本配置先把它跑起来再谈命令华为eNSPEnterprise Network Simulation Platform是华为官方推出的网络模拟平台绝大多数接触华为设备的人第一课都是在eNSP里学着配路由器、交换机、防火墙和PC。基本配置这四个字听着平淡实际卡住最多的地方往往不是命令本身而是设备启动失败、拓扑连不上、CLI没反应这类环境问题。很多新手第一周就把时间耗在“AR1起不来”“点了没反应”上真正的VLAN配置反而一行都没敲。这篇文章不按说明书讲而是按我平时带新人上手eNSP的路径走一遍依赖安装、最小拓扑、VLAN与三层互通、常见翻车点最后用一个DHCP场景把整条链路串起来验证。读完你能独立搭出一张两台交换机的互通拓扑并且知道出了问题该从哪查。2. 从零跑通eNSP依赖组件、拓扑搭建与首次启动2.1 eNSP的三个依赖组件VirtualBox、WinPcap、Wireshark先装好eNSP并不是一个独立运行的模拟器它把虚拟设备跑在 VirtualBox 里用 WinPcap 处理虚拟网卡的报文捕获用 Wireshark 做抓包分析。这三者之间还有依存关系装错顺序或者版本冲突最直接的症状就是设备启动卡在“正在启动”或者干脆报错。常见的做法是先装 VirtualBox再装 WinPcap再装 Wireshark最后装 eNSP 本体。安装时选管理员权限运行安装路径不要带中文和特殊字符。装完后第一次启动 eNSP 时它会在 VirtualBox 里创建一批名如“AR_Base”或“eNSP”的虚拟机模板这个过程需要等待不要反复点击启动按钮。如果你在 VirtualBox 管理器里看到了这些名字的虚拟机说明 eNSP 已经成功接管了虚拟化层。提示Windows 系统如果开启了 Hyper-V 或内核隔离VirtualBox 的虚拟机可能无法正常启动。碰到这类问题的机器一般先关掉相关功能再重启eNSP 就能正常跑了。这个坑在 Win10/Win11 上非常常见。装完之后检查 Three 个条件VirtualBox 服务是否启动、WinPcap 是否被 eNSP 识别、设备区里能否正常拖出设备。eNSP 界面上如果设备图标能拖到画布说明图形界面没问题真正的问题往往出现在点“启动”之后。2.2 eNSP界面讲解设备区、拓扑画布与CLI窗口打开 eNSP左侧是设备面板按类型分成路由器、交换机、防火墙、无线、终端等大类。路由器下常见的是 AR 系列交换机下是 S 系列例如 S5700 就是模拟中最常用的三层交换机。终端里有两类东西最容易混淆一个是 PC一个是 ServerPC 上能配 IP 和运行 ping 命令Server 在实验里常用来搭 FTP 和 Web 服务。把设备拖到中间的拓扑画布后用工具栏里的“连接”图标去连设备。连接时点一下源设备再点一下目标设备eNSP 会默认选用合适的接口。如果你需要指定接口可以先右键设备选择“查看接口”确认端口编号后再手动连接对应的端口。连接完成后要做的不是马上去敲命令而是先把设备启动起来。启动顺序一般建议先启动交换机再启动 PC原因后面第 4 章会细说。启动完成的标志在设备图标左下角变成绿色小三角设备运行时双击图标才会弹出命令行窗口窗口里是华为 VRP 的操作界面。2.3 搭一张最小拓扑一台交换机和两台PC我们先用一台 S5700 加两台 PC 搭出 eNSP 里最小可用的网络。这个拓扑虽然简单却是后面所有 VLAN 和三层配置的基础。在设备区拖一台 S5700 到画布再拖两台 PC 出来分别命名 PC1 和 PC2。用连接工具把 PC1 连到交换机的 GigabitEthernet0/0/1PC2 连到 GigabitEthernet0/0/2。连好线后分别右键两台 PC进入“配置”窗口在 IPv4 设置里给 PC1 一个地址例如 192.168.10.2掩码 255.255.255.0网关先留空给 PC2 设 192.168.20.2掩码同样 255.255.255.0网关也先留空。PC1 ipconfig这是 PC 命令行里的查看命令确认刚才设置的 IP 是否生效。eNSP 里 PC 的命令行是独立的终端窗口右键 PC 选择“命令行”就能打开里面支持 ipconfig、ping、tracert 这些基础命令。交换机这一侧暂时不需要配置默认所有端口都在 VLAN 1 里。此时如果强行 ping 对端会因为 IP 不在同一网段而不通这是正常的。我们要的只是验证设备能启动、接口状态是 UP、PC 和交换机能识别到链路。在交换机的 CLI 窗口里敲 display interface brief能看到端口物理状态全部是 up这就说明环境本身是好的。2.4 设备启动后先做一次保存很多人第一次用 eNSP 时不知道“配置是存在设备里的而不是存在工程图里的”。关闭工程再打开拓扑还在但所有设备配置变成出厂状态就是因为没有执行 save。在交换机命令行里执行SW1 save The current configuration will be written to the device. Are you sure to continue? (y/n)[n]:y这条命令把当前配置写入设备的虚拟存储文件。注意 这个提示符表示用户在用户视图save 命令必须在用户视图执行。如果提示符是 [SW1] 则表示在系统视图需要先按 quit 退回。养成“配置一个阶段就 save 一次”的习惯比任何时候都重要。特别是后面配置 VLAN、三层网关之后一旦 eNSP 崩溃或者电脑断电没有 save 的话一切重来。这在真实设备上也成立只是真实设备一般有独立电源和配置文件备份机制eNSP 里更脆弱。3. 三层交换机互通配置VLAN划分、Trunk中继模式与VLANIF网关3.1 先把端口角色分清Access口与Trunk口华为设备上接口有两种最常见的链路类型access 和 trunk。新手经常会问为什么有的配置写 port link-type access有的写 port link-type trunk直接照抄又会出问题。其实用途很简单access 口通常接终端比如 PC、打印机、服务器它只允许一个 VLAN 的流量通过trunk 口用来连接交换机、路由器它能同时承载多个 VLAN 的流量并且会在帧上打上 802.1Q 标签来区分不同 VLAN。比如 PC1 接在 SW1 的 GigabitEthernet0/0/1 上我们想把 PC1 划进 VLAN 10配置是SW1 system-view [SW1] vlan batch 10 20 [SW1] interface GigabitEthernet0/0/1 [SW1-GigabitEthernet0/0/1] port link-type access [SW1-GigabitEthernet0/0/1] port default vlan 10vlan batch 10 20 是一次性创建 VLAN 10 和 VLAN 20如果 VLAN 很多建议用 batch 批量创建避免逐条创建的低效。port link-type access 把端口设为 access 模式port default vlan 10 表示该端口划分给 VLAN 10。这里需要注意的是access 口的逻辑里并没有“允许哪些 VLAN”这个概念它就是属于某一个 VLAN。同样的方式把 PC2 所在的交换机端口划进 VLAN 20。这样两台 PC 就处在不同的广播域里了它们之间默认是不能通信的。这个“不同广播域不能直接通信”是 VLAN 设计的目的但我们要在后面的步骤里让它们通过三层网关互通。3.2 华为设备如何将接口配置为中继模式Trunk链路配置两台交换机之间要传输多个 VLAN 的流量就必须用 trunk 链路。很多人在 eNSP 里犯的错是把交换机间链路也配成 access结果 VLAN 10 的 PC 和 VLAN 20 的 PC 永远 ping 不通原因是 access 口直接把 VLAN 标签剥掉了。把 SW1 接 SW2 的接口改成 trunk[SW1] interface GigabitEthernet0/0/2 [SW1-GigabitEthernet0/0/2] port link-type trunk [SW1-GigabitEthernet0/0/2] port trunk allow-pass vlan 10 20在华为设备里trunk 默认只放行 VLAN 1必须用 port trunk allow-pass vlan 10 20 显式放行 VLAN 10 和 VLAN 20。如果漏掉这条链路虽然 UP但 VLAN 10 和 VLAN 20 的帧根本不会跨交换机传播。对端 SW2 的对应接口也要做相同配置。验证 trunk 是否放行正确看这条命令的输出[SW1] display port vlan输出里会列出每个接口的链路类型以及通过该接口允许的 VLAN。如果看到 GigabitEthernet0/0/2 是 trunk并且 VLAN 列表里包含 10、20就说明配置生效。trunk 配置里还有一个 pvid 的概念默认是 VLAN 1一般不需要改但如果你发现交换机间流量带上了错误的 VLAN 标签大概率就是 pvid 配置被改过。3.3 VLANIF接口华为三层交换机上的网关配置VLAN 隔离了广播域跨 VLAN 通信需要三层路由。这时一台支持三层功能的交换机比如 eNSP 里的 S5700可以给每个 VLAN 创建一个虚拟三层接口这就是 VLANIF。VLANIF 接口的 IP 地址就是该 VLAN 内 PC 的网关地址。在 SW1 上创建 VLANIF 并加上网关地址[SW1] interface Vlanif10 [SW1-Vlanif10] ip address 192.168.10.1 24 [SW1-Vlanif10] quit [SW1] interface Vlanif20 [SW1-Vlanif20] ip address 192.168.20.1 24ip address 后面跟的 24 是简写等于 255.255.255.0。这两个 VLANIF 接口一旦配置了 IPSW1 就自动有了连接 192.168.10.0/24 和 192.168.20.0/24 的直连路由不需要再写静态路由。这就是三层交换机和二层交换机最大的区别。此时回到 PC 上把网关配置好PC1 的网关填 192.168.10.1PC2 的网关填 192.168.20.1。网关地址就是 VLANIF 的地址不能随便填否则数据包会被发到一个不存在的下一跳结果就是 ping 不通。在 PC1 命令行执行PC1 ping 192.168.20.2正常情况下会看到 Reply from 192.168.20.2: bytes32 time1ms TTL127。如果 TTL 是 127 说明中间跨了一次路由转发这也从侧面验证了三层转发路径是通的。如果 TTL 是 64 且来自其他网段基本可以判断中间接了三层设备。3.4 用 display 命令确认每一步配置状态交换机配置完成后可以用几条 display 命令做体检。这些命令在华为设备上通用eNSP 里也完全一致。display current-configuration 查看全量配置重点看接口段落里的 port link-type、port default vlan、port trunk allow-pass 是否和预期一致。因为 eNSP 里可能因为某次保存错误残留旧配置全量浏览是最稳妥的做法。display vlan 输出更人性化能看到 VLAN 列表和端口归属[SW1] display vlan如果 VLAN 10 下面显示的端口包括 GigabitEthernet0/0/1而该接口状态是 UP说明 PC 已经成功划入了 VLAN 10。display ip interface brief 查看三层接口[SW1] display ip interface brief输出里应该包含 Vlanif10 和 Vlanif20 两行状态是 upIP 地址正确。如果 Vlanif 显示 down多半是对应 VLAN 里没有任何物理端口 UP此时先去检查物理接口。3.5 只有路由器时怎么配基于华为路由器的单臂路由如果你手里只有 AR 路由器而没有三层交换机想让两个 VLAN 互通就要用单臂路由。做法是在路由器物理接口上创建子接口每个子接口对应一个 VLAN并命令路由器剥掉 VLAN 标签后再转发。在 AR 的 GigabitEthernet0/0/0 上配置两个子接口[AR] interface GigabitEthernet0/0/0.10 [AR-GigabitEthernet0/0/0.10] dot1q termination vid 10 [AR-GigabitEthernet0/0/0.10] ip address 192.168.10.1 24 [AR-GigabitEthernet0/0/0.10] arp broadcast enable [AR-GigabitEthernet0/0/0.10] quit [AR] interface GigabitEthernet0/0/0.20 [AR-GigabitEthernet0/0/0.20] dot1q termination vid 20 [AR-GigabitEthernet0/0/0.20] ip address 192.168.20.1 24 [AR-GigabitEthernet0/0/0.20] arp broadcast enabledot1q termination vid 10 让子接口识别 VLAN 10 的标签帧arp broadcast enable 是华为路由器子接口上必须配置的命令否则 AR 不会响应 VLAN 内 PC 的 ARP 请求。这两个参数缺一个单臂路由都会出现“配了 ping 不通”的典型症状。交换机侧只需要把连接路由器的接口配成 trunk并允许 VLAN 10 和 VLAN 20 通过。这个场景在 eNSP 综合实验里经常出现尤其是华为 ICT 大赛类的拓扑里单臂路由几乎是必考项。4. 华为ENSP配置排查与避坑启动失败、点不通、命令不生效4.1 启动设备AR1失败错误代码40现象路由器或交换机点击启动后过一会儿弹出提示“启动设备AR1失败”错误码 40设备图标变红或灰色无法进入命令行。原因最常见的是 VirtualBox 没有装好或者 eNSP 与 VirtualBox 版本不兼容。eNSP 的设备本质上是 VirtualBox 虚拟机它在启动时会调用 VirtualBox 的底层接口调用失败就返回错误码 40。另外Windows 的 Hyper-V 和 VirtualBox 冲突也会导致同样问题。解决先检查 VirtualBox 是否能手动打开并使用。如果在 VirtualBox 管理器里能看到 eNSP 自动创建的虚拟机模板说明仓库能识别。此时尝试“右键 eNSP 以管理员身份运行”再启动设备。如果还是失败卸载 VirtualBox 和 eNSP确认删除干净后重新按顺序安装。系统开了 Hyper-V 的进入“启用或关闭 Windows 功能”里关掉 Hyper-V重启后再试。还有一个容易被忽略的点某些杀毒软件会拦截 VirtualBox 创建虚拟网卡的动作需要在杀毒软件里把 eNSP 安装目录和 VirtualBox 目录都加入白名单。4.2 PC ping网关都不通先查PC配置再查交换机端口现象VLAN 和 VLANIF 都配好了PC 上 ping 自己网段的网关地址却超时。原因可能有三处按概率排是 PC 的 IP/网关配置错误、PC 连接的交换机端口没有划到对应 VLAN、交换机端口物理状态没有起来。很多时候新手会在 PC 的 IPv4 配置里只填 IP 和掩码网关留空以为“反正现在还不需要网关”结果 ping 网关当然不通还有人是 VLAN 配在了 SW2 上但 PC 插的是 SW1 的端口两个交换机之间的 trunk 又没放行对应 VLAN。排查顺序是PC 上 ipconfig 看地址和网关交换机 display port vlan 看端口归属display interface brief 看端口是否 UP。如果交换机端口处于 DOWN大概率是拓扑连线没连到位或者连接的是错误的接口编号重新连接一下。如果端口是 UP 但 VLAN 不对重新执行 port default vlan 命令。4.3 跨交换机 VLAN ping 不通trunk 链路是重灾区现象SW1 和 SW2 之间的链路状态正常但 VLAN10 的 PC ping 不到 VLAN20 的 PC或者两台交换机上不同 VLAN 的终端互相不通。原因trunk 端口没有放行对应 VLAN。华为交换机 trunk 口默认只允许 VLAN 1 通过如果 port trunk allow-pass vlan 命令里只写了 VLAN 10那么 VLAN 20 的帧会在对端交换机被丢弃。另一种情况是两台交换机上 VLAN 编号不一致比如 SW1 里的 VLAN 10 实际是 PC1 所在 VLAN而 SW2 里 PC2 划分到的却是 VLAN 100两边对不上。解决在两边交换机都执行 display port vlan确认 trunk 端口允许的 VLAN 集合一致。华为的命令是 port trunk allow-pass vlan 10 20一次允许多个 VLAN 用空格分隔。如果你看到 VLAN 列表里有奇怪的编号多半是之前实验残留的 VLAN可以执行 undo vlan 清理但要注意先确认没有端口在使用。跨交换机调试时不要只看本端状态两端都看一遍再下结论这是网络工程师的基本素养。4.4 命令提示 Error: Unrecognized command视图和命令集不匹配现象在交换机上敲了一段命令系统直接提示 Error: Unrecognized command或者提示“Incomplete command”命令根本没生效。原因最常见的是视图不对。华为 VRP 命令是分区视图的system-view 进入系统视图后才能配置 VLAN 和接口如果在用户视图 下直接敲 interface GigabitEthernet0/0/1系统不认识。另一个原因是设备类型不对比如在交换机上敲路由器的 dot1q termination vid或者在路由器上敲交换机的 port link-type都会报错。还有一种情况是命令拼写习惯不对例如把 port default vlan 写成 port default-vlanVRP 会把两个词解析成一个不存在的命令。解决看提示符。提示符是尖括号 就在用户视图方括号 [SW1] 在系统视图[SW1-GigabitEthernet0/0/1] 在接口视图。命令出错时先按一次退格检查拼写再按 ? 键查看当前视图支持的命令列表输入到一半时按 Tab 可以自动补全。实在不确定命令格式就用 display this 查看当前视图下已有的配置照着已有的写法改比盲猜可靠。4.5 保存配置没用对地方重启工程后配置全部丢失现象昨天辛苦配了一整个 VLAN 互通和三层网关今天重新打开 eNSP 工程文件拓扑还在但所有设备都变成出厂状态命令行里一片空白。原因只保存了工程文件没保存设备配置。eNSP 的工程文件拓扑存档里包含设备摆放、连线等绘图信息但设备内部的 running-config 需要单独用 save 命令写入虚拟磁盘。不少新人以为关闭时点保存全部弹窗就万事大吉结果弹窗问的是工程文件配置根本不在里面。解决在每台设备命令行里执行 save确认提示“The current configuration will be written to the device”后输入 y。养成一个习惯每完成一个配置段落比如 VLAN 划分配完、VLANIF 配置完、trunk 放行完就 save 一次。这个习惯在真实设备上也适用毕竟真实设备断电丢配置的教训不比 eNSP 少。eNSP 环境下关闭工程前再逐个设备确认一遍 save是最稳的收尾操作。5. 把基本配置串成一次完整验证DHCP自动分配与跨VLAN互通前面几章把静态配置链路跑通了最后这一步我们把它升级成更接近真实网络的场景在三层交换机上开启 DHCP让 PC 自动获取 IP再验证跨 VLAN 通信。在 SW1 上开启 DHCP并在 VLANIF 接口上启用接口地址池[SW1] dhcp enable [SW1] interface Vlanif10 [SW1-Vlanif10] dhcp select interface [SW1-Vlanif10] dhcp server dns-list 223.5.5.5 [SW1-Vlanif10] quit [SW1] interface Vlanif20 [SW1-Vlanif20] dhcp select interface [SW1-Vlanif20] dhcp server dns-list 223.5.5.5dhcp select interface 让 VLANIF10 接口直接使用自身 IP 所在的 192.168.10.0/24 网段作为地址池不需要再手动指定 range。如果你希望地址池的分配范围固定可以在系统视图配置 ip pool 并绑定接口但接口模式下配置最简单也最容易排错。PC 侧的操作是把 IPv4 配置从静态改成 DHCP 模式eNSP 的 PC 右键配置里选择 DHCP 后重启或者等待自动获取。在 PC 命令行输入 ipconfig能看到自动获取的地址PC1 ipconfig Link local IPv6 address......: ::1 IPv4 address.................: 192.168.10.11 Subnet mask...................: 255.255.255.0 Default gateway..............: 192.168.10.1IP 网段和网关都正确说明 DHCP 分配链路完整。这时候再执行 ping 192.168.20.2如果两台 PC 都在 DHCP 模式下工作正常跨 VLAN 的 ICMP 报文就能走通。这个验证的价值在于DHCP 依赖广播、交换机依赖 VLAN 放行、三层依赖 VLANIF 路由环环相扣任何一环断裂都会体现在 ping 结果上。我在带人的时候最常强调的习惯是配置完成后把 PC 的 IP 改成 DHCP 再改回来如果两次都能通说明链路没有静态错配然后把设备 save导出工程备份最后再关掉 eNSP。很多人只做一次静态 ping 通就宣布完成恰恰漏掉了验证链路对变化的适应性。eNSP 这个平台的价值就在于此你可以大胆地改配置、试命令把翻车的代价留在虚拟环境里而不是真实机房。多花十分钟做一轮重启验证收获的确定性远大于多敲十行命令。希望帮到你。本文还有配套的精品资源点击获取