这次我们来看一个非常典型的网络工程实验:交换机 VLAN 间通信与 DHCP 基于接口地址池的联合配置。实验目标很直接:在同一个园区网络里划分 VLAN 隔离广播域,再让三层交换机做网关实现 VLAN 间互访,最后用交换机自带的 DHCP 功能,为不同 VLAN 的主机自动分配对应网段的 IP 地址。
很多人在单独配置 VLAN 或单独配置 DHCP 时都能跑通,但把两者放一起就容易出事。比如 PC 能拿到地址但 VLAN 间 ping 不通,或者地址能拿到却是错误的网段。这篇文章会从拓扑设计、命令细节、验证方法和排错思路四个方向完整过一遍,保证你照着敲完能自己验证结果。
先说这个实验能验证什么:VLAN 划分和 Trunk 链路放通、三层交换机 VLANIF 网关、接口地址池与全局地址池的区别、DHCP 分配与租约查看、跨 VLAN ping 通。适合正在学交换技术、备考相关认证,或者做园区网开局的朋友参考。所有配置基于华为 eNSP 模拟器,设备型号以 S5700 交换机和 AR 路由器为例,命令基于 VRP5 平台,和真实设备差别不大。
1. 核心能力速览
| 能力项 | 说明 |
|---|---|
| 实验平台 | 华为 eNSP 模拟器 |
| 涉及设备 | S5700 三层交换机、S3700 二层交换机、PC 终端 |
| 核心功能 | VLAN 划分、Trunk 放通、VLANIF 三层网关、DHCP 接口地址池分配 |
| IP 地址规划 | VLAN 10 使用 192.168.10.0/24,VLAN 20 使用 192.168.20.0/24 |
| DHCP 模式 | 接口地址池(dhcp select interface) |
| 验证目标 | PC 自动获取正确网段地址、跨 VLAN ping 通 |
| 适合场景 | 园区网入门、VLAN 间路由配置、DHCP 服务本地化、模拟器实验练习 |
这个实验不需要外部 DHCP 服务器,三层交换机同时承担网关和 DHCP Server 两个角色。接口地址池的意思很明确:DHCP 地址池绑定在某个三层接口(VLANIF)下,这个接口收到 DHCP 请求,就从对应网段分配 IP,天然隔离了不同 VLAN 的地址范围。
2. 适用场景与使用边界
VLAN 间通信加 DHCP 接口地址池这个组合,实际项目里非常常见。比如一个写字楼里划分了办公 VLAN、访客 VLAN、监控 VLAN,每层楼一台接入交换机,核心交换机做网关。如果没有专门的 DHCP 服务器,直接在核心交换机上按接口划分地址池,每类终端自动获取各自网段的 IP,管理起来非常清晰。
这个实验比较适合三类人:
第一类是刚开始学交换机配置的学生,需要理解 VLAN 是二层隔离技术,VLAN 间通信必须要三层设备提供网关。第二类是做网络运维的工程师,在开局调试或改造网络时,需要知道如何在现有 VLAN 架构上快速启用 DHCP 服务。第三类是准备华为相关认证的考生,VLAN 配置和 DHCP 配置都是高频考点,接口地址池的细节也常被拿来出题。
当然这个方案也有边界。接口地址池只适合终端网关就在本机的情况,如果 DHCP 客户端跨网段访问 DHCP 服务器,就必须用 DHCP 中继,而不是接口地址池。另外,模拟器和真实设备存在差异,真实交换机上还需要确认 VRP 版本是否支持相关命令,以及 IP 地址池和路由表是否冲突。在真实环境中操作前,必须先在模拟器里完整验证,再结合现网设备配置做调整。
3. 环境准备与前置条件
这个实验只要有一台安装了 eNSP 的电脑就能完成。软件环境上,eNSP 依赖 VirtualBox,安装时要注意先装 VirtualBox 再装 eNSP,否则设备可能无法正常启动。如果启动设备时报错,优先检查 VirtualBox 的版本和兼容性。
拓扑设计部分,我建议用一台三层交换机 SW1 作为核心,两台二层交换机 SW2 和 SW3 作为接入设备。SW2 下一台 PC,属于 VLAN 10;SW3 下一台 PC,属于 VLAN 20。三台交换机之间通过 Trunk 链路互联,所有 VLAN 都允许通过。这样拓扑简洁,又能完整演示 VLAN 透传和三层网关的转发流程。
设备选型上要注意 eNSP 里的交换机型号差异。S5700 系列支持 VLANIF 三层接口,可配置 DHCP,而 S3700 一般是二层交换机,不能配置 VLANIF,所以三层和 DHCP 相关命令必须放在 S5700 上。拓扑中 SW1 选 S5700,SW2 和 SW3 用 S3700 或 S5700 都可以。做题时常常有人把三层接口配在了二层交换机上,命令行直接报错,这是第一个容易踩的坑。
IP 规划推荐如下:
| 设备 | VLAN | 接口 | IP 地址 | 网关 |
|---|---|---|---|---|
| PC1 | VLAN 10 | E0/0/1 | DHCP 获取 | 192.168.10.1 |
| PC2 | VLAN 20 | E0/0/1 | DHCP 获取 | 192.168.20.1 |
| SW1 | VLAN 10 | Vlanif 10 | 192.168.10.1/24 | 无 |
| SW1 | VLAN 20 | Vlanif 20 | 192.168.20.1/24 | 无 |
PC1 和 PC2 的 IP 地址全部由 SW1 通过 DHCP 分配,不需要手动配置 IP 地址、子网掩码和网关。
4. 网络拓扑设计与实验原理
先画出一个标准的实验拓扑图:
[SW1] S5700 三层交换机 / \ / \ [SW2] [SW3] S3700 二层交换机 | | [PC1] [PC2] VLAN 10 VLAN 20SW1 是三层交换机,SW2 和 SW3 是二层交换机。SW1 分别与 SW2、SW3 通过 Trunk 链路连接,SW2 下接 PC1,SW3 下接 PC2,PC 与交换机之间使用 Access 接口。
VLAN 间通信的原理:二层交换机只根据 MAC 地址表转发数据帧,不同 VLAN 的端口默认不能二层互通。要打通 VLAN 10 和 VLAN 20,必须在三层交换机上分别创建 VLANIF 10 和 VLANIF 20,作为两个 VLAN 的网关。PC1 发送数据给 PC2 时,先判断目标地址不在本地子网,于是把数据发给自己的网关 192.168.10.1,也就是 SW1 的 Vlanif 10;SW1 收到后,再根据路由表判定目标网段 192.168.20.0/24 直连在 Vlanif 20,于是从 VLAN 20 转发出去。这个过程中,SW2 和 SW3 只需要透传 VLAN 帧即可。
DHCP 基于接口地址池的原理:SW1 开启 DHCP 服务后,在 Vlanif 10 和 Vlanif 20 接口下分别执行 dhcp select interface,等于告诉交换机:从哪个接口收到的 DHCP Discover 请求,就从绑定在该接口的地址池里挑一个地址分配。接口地址池的网段自动取接口的主 IP 网段,网关也自动取接口 IP,不需要像全局地址池那样必须指定 network 和 gateway-list。但要注意,地址池的 DNS、租期、排除地址等参数仍需单独配置,并且接口地址池不绑定地址池名称,直接以接口网段为准。
这个组合实验为什么值得做?因为很多实际网络里的故障并不在于单个功能本身,而是功能叠加后的交互逻辑。VLAN 配好了不代表 DHCP 能正常交互,DHCP 通了也不代表 VLAN 间能 ping 通。把两个实验合在一起,能真正验证三层交换机的数据平面和控制平面的配合情况。
5. 核心配置步骤与命令解析
下面进入实验主体。我会按二层交换机配置、三层交换机配置、DHCP 配置、PC 验证四部分展开。所有命令以华为 VRP5 平台为例,在 eNSP 中可直接复制使用。
5.1 二层交换机 SW2 配置
SW2 负责接入 PC1,端口规划为:GE0/0/1 连接 PC1,GE0/0/2 连接 SW1。
<Huawei>system-view [Huawei]sysname SW2 # 创建 VLAN 10 [SW2]vlan 10 # 连接 PC 的接口划入 VLAN 10 [SW2]interface GigabitEthernet0/0/1 [SW2-GigabitEthernet0/0/1]port link-type access [SW2-GigabitEthernet0/0/1]port default vlan 10 [SW2-GigabitEthernet0/0/1]quit # 上联 SW1 的接口配置为 Trunk,放通 VLAN 10 [SW2]interface GigabitEthernet0/0/2 [SW2-GigabitEthernet0/0/2]port link-type trunk [SW2-GigabitEthernet0/0/2]port trunk allow-pass vlan 10 [SW2-GigabitEthernet0/0/2]quit如果实机上默认放通 vlan 1,这里会有两条显示:vlan 1 allowed and vlan 10 allowed,不影响实验。也可以手动执行 port trunk allow-pass vlan 10,再手动放通 VLAN 1,但模拟器里通常不需要。
5.2 二层交换机 SW3 配置
SW3 的配置与 SW2 基本一致,只是把 VLAN 换成 20。
<Huawei>system-view [Huawei]sysname SW3 # 创建 VLAN 20 [SW3]vlan 20 # 连接 PC 的接口划入 VLAN 20 [SW3]interface GigabitEthernet0/0/1 [SW3-GigabitEthernet0/0/1]port link-type access [SW3-GigabitEthernet0/0/1]port default vlan 20 [SW3-GigabitEthernet0/0/1]quit # 上联 SW1 的接口配置为 Trunk,放通 VLAN 20 [SW3]interface GigabitEthernet0/0/2 [SW3-GigabitEthernet0/0/2]port link-type trunk [SW3-GigabitEthernet0/0/2]port trunk allow-pass vlan 20 [SW3-GigabitEthernet0/0/2]quit这里有个细节值得注意:SW1 和 SW2 之间的 Trunk 只放通 VLAN 10,SW1 和 SW3 之间的 Trunk 只放通 VLAN 20。如果想在 SW1 上统一管理,也可以两边都放通 VLAN 10 和 VLAN 20,但在真实环境中,按业务需求最小化放通 VLAN 是更安全、更清晰的配置习惯。
5.3 三层交换机 SW1 配置
SW1 是整个实验的核心设备,既要配置 VLANIF 作为网关,又要开启 DHCP 服务。
第一步先创建 VLAN,再把两个下行接口配置为 Trunk,放通对应 VLAN。
<Huawei>system-view [Huawei]sysname SW1 # 创建 VLAN [SW1]vlan batch 10 20 # 配置与 SW2 的 Trunk 链路 [SW1]interface GigabitEthernet0/0/1 [SW1-GigabitEthernet0/0/1]port link-type trunk [SW1-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 [SW1-GigabitEthernet0/0/1]quit # 配置与 SW3 的 Trunk 链路 [SW1]interface GigabitEthernet0/0/2 [SW1-GigabitEthernet0/0/2]port link-type trunk [SW1-GigabitEthernet0/0/2]port trunk allow-pass vlan 20 [SW1-GigabitEthernet0/0/2]quit第二步配置 VLANIF 接口地址。这里就是 VLAN 间通信的网关,地址必须和后续 DHCP 地址池所在网段一致。
[SW1]interface Vlanif 10 [SW1-Vlanif10]ip address 192.168.10.1 255.255.255.0 [SW1-Vlanif10]quit [SW1]interface Vlanif 20 [SW1-Vlanif20]ip address 192.168.20.1 255.255.255.0 [SW1-Vlanif20]quit此时 VLAN 间通信的基础已经完成。可以先在 SW1 上执行 display ip interface brief 来检查 VLANIF 接口的 IP 是否生效。如果接口状态显示 down,说明对应的 VLAN 内没有物理接口加入,或者 Trunk 没有放通对应 VLAN。
5.4 DHCP 接口地址池配置
DHCP 配置分为两步:全局开启 DHCP 服务,然后在 VLANIF 接口下选择 interface 模式。
先全局开启 DHCP 服务。
[SW1]dhcp enable然后在 Vlanif 10 接口下配置接口地址池。
[SW1]interface Vlanif 10 [SW1-Vlanif10]dhcp select interface [SW1-Vlanif10]dhcp server dns-list 8.8.8.8 114.114.114.114 [SW1-Vlanif10]dhcp server lease day 1 [SW1-Vlanif10]quit接着在 Vlanif 20 接口下配置接口地址池。
[SW1]interface Vlanif 20 [SW1-Vlanif20]dhcp select interface [SW1-Vlanif20]dhcp server dns-list 8.8.8.8 114.114.114.114 [SW1-Vlanif20]dhcp server lease day 1 [SW1-Vlanif20]quit到这里需要停下来重点理解接口地址池和全局地址池的区别。接口地址池模式下,不需要配置 network 和 gateway-list,因为这两项分别从接口 IP 和接口协议地址自动继承。地址范围默认是整个接口所在子网,如果想避免把网关和部分保留地址分配出去,需要配置排除地址。
建议在实机或模拟器中验证一个场景:不配置排除地址,PC 获取到的地址可能是 192.168.10.2 到 192.168.10.254 的任一地址,而网关始终是 192.168.10.1,两者不会冲突。但如果网络里已经有人手动分配了 192.168.10.2,DHCP 服务器没有排除这个地址,就可能造成地址冲突。所以真实项目中要在接口地址池下增加排除配置:
[SW1-Vlanif10]dhcp server excluded-ip-address 192.168.10.2 192.168.10.10这个命令的含义是保留 192.168.10.2 到 192.168.10.10 这段地址,不参与自动分配。可以把网络设备、打印机、服务器等固定 IP 地址设备放在这段范围内,既能满足手动配置需求,又避免 DHCP 冲突。
5.5 PC 终端设置
配置完交换机后,双击 PC1 进入配置面板,在 IP 配置处选择 DHCP 方式,网关和 DNS 不需要手动填写。
PC1 配置为 DHCP 获取模式后,等待几秒钟,状态栏会显示获取到的 IP 地址。正常情况下 PC1 应获取到 192.168.10.x 网段的地址,网关为 192.168.10.1。PC2 应获取到 192.168.20.x 网段的地址,网关为 192.168.20.1。
如果 PC 一直没有获取到地址,最可能的原因是 DHCP 服务没有开启,或者交换机接口没有放通相应 VLAN,再或者 PC 与交换机之间连接的接口类型不对。后面在排错部分会详细说明。
6. 功能测试与效果验证
配置完成不代表实验成功,必须做完整的连通性和 DHCP 功能验证。下面按验证维度展开。
6.1 验证 VLAN 与 Trunk 配置
在 SW2 上执行 display vlan 查看 VLAN 信息。
[SW2]display vlan关注点有四个:VLAN 10 是否存在;VLAN 10 下关联的物理接口是否是 GE0/0/1;GE0/0/2 是否为 Trunk 类型并且允许 VLAN 10 通过;VLAN 描述是否和业务对应。
在 SW1 上执行 display port vlan 可以查看所有接口的 VLAN 属性,包括 PVID、允许通过的 VLAN、接口类型等信息。
[SW1]display port vlan输出结果中可以看到 GigabitEthernet0/0/1 的链路类型是 trunk,PVID 是 1,允许通过的 VLAN 包含 10;GigabitEthernet0/0/2 是 trunk,允许通过的 VLAN 包含 20。确认无误后继续下一步。
6.2 验证 DHCP 地址池分配
在 SW1 上执行 display ip pool 或 display dhcp server ip-pool 查看地址池信息。
[SW1]display ip pool这个命令会显示两个地址池的信息。接口地址池模式下,地址池名称通常显示为 Vlanif10 或 Vlanif20,网段、网关、租期都会列出来。如果什么都没显示,说明 DHCP 没有生效,需要回到接口下检查 dhcp select interface 是否配置成功。
再执行 display dhcp server statistics 可以查看 DHCP 交互报文的数量。
[SW1]display dhcp server statistics重点关注字段有:Server 发送的 OFFER/ACK 数量,Client 发送的 DISCOVER/REQUEST 数量。如果 DISCOVER 数量一直在增长,但 OFFER 或 ACK 没有增长,说明交换机收到了请求但分配失败,需要检查地址池是否耗尽或接口 IP 是否配置正确。
6.3 验证 PC 是否获取到正确网段地址
在 PC 命令行窗口执行 ipconfig 命令。PC1 的 IP 地址应处于 192.168.10.0/24 网段,PC2 应处于 192.168.20.0/24 网段。子网掩码应为 255.255.255.0,默认网关应指向对应 VLANIF 接口地址。
如果 PC1 获取到了 169.254.x.x 地址,说明 DHCP 请求没有得到响应,PC 进入了自动私有地址模式。这时候优先检查 SW1 上是否执行了 dhcp enable,其次检查 Vlanif 接口是否 up,最后检查 PC 和交换机之间的链路是否正常。
6.4 验证 VLAN 间通信
这是整个实验最重要的验证。在 PC1 上 ping PC2 的 IP 地址,如果能 ping 通,说明 VLAN 间路由生效。
PC>ping 192.168.20.2正常情况下,前两个包可能有超时,因为 ARP 表项和 MAC 地址表需要时间学习,后面几个包应该连续回复。如果全部超时,需要逐层排查。
先检查 PC1 能否 ping 通自己的网关。
PC>ping 192.168.10.1如果能通,说明 PC1 到 SW1 的链路没问题,VLAN 10 和 Trunk 放通都没问题。然后再在 SW1 上 ping PC2 的网关 192.168.20.1,确认 SW1 到 VLAN 20 的路径没问题。
[SW1]ping 192.168.20.1如果 SW1 能 ping 通自己的 Vlanif20,但 PC1 ping 不通 PC2,问题很可能出在 PC1 的网关设置上。有些初学者在 PC 上手动填写了 IP 但没有填写网关,导致数据包发出后不知道往哪走。本次实验采用 DHCP 方式自动获取,网关由 DHCP 服务器下发,一般不会出现这种问题,但如果 DHCP 分配的是全局地址池且没有设置 gateway-list,就会出现能获取地址但不能跨网段通信的怪现象。
6.5 验证地址池排除配置
如果配置了排除地址,可以验证排除段是否不会分配出去。反复在 PC 上释放和重新获取 IP 地址,优先使用 ipconfig /release 和 ipconfig /renew 组合命令。
PC>ipconfig /release PC>ipconfig /renew执行几次后检查 PC 获取到的地址,如果永远不落在排除段内,说明排除配置生效。注意 eNSP 的 PC 命令行窗口和 Windows 命令行的 ipconfig 参数稍有差异,以模拟器自带命令为准。
7. 接口 API 与批量任务
本实验是纯交换机配置场景,不涉及 API 接口服务和批量任务队列。但如果你在真实环境中需要批量配置多台接入交换机,可以采用以下方式提高效率。
华为 VRP 支持通过 STelnet 或 Console 口登录设备后执行配置命令。在模拟器中可以先把二层交换机基础配置封装成脚本,然后分台执行。脚本模板如下:
sysname SW2 vlan 10 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 quit interface GigabitEthernet0/0/2 port link-type trunk port trunk allow-pass vlan 10 quit return真实网络中如果需要批量下发配置,可以借助华为的 eSight、iMaster NCE 等网管平台,或者通过 Python 的 Paramiko、Netmiko 库连接设备执行配置。比如使用 Python 脚本向交换机批量下发 VLAN 配置:
import paramiko devices = [ {"host": "192.168.100.1", "username": "admin", "password": "admin123"}, {"host": "192.168.100.2", "username": "admin", "password": "admin123"}, ] commands = [ "system-view", "vlan 10", "quit", "interface GigabitEthernet0/0/1", "port link-type access", "port default vlan 10", "quit", "return", ] for device in devices: ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(device["host"], username=device["username"], password=device["password"]) for cmd in commands: ssh.exec_command(cmd) ssh.close()脚本需要在有 Python 和 Paramiko 库的环境中运行,正式使用前建议先在一台设备上测试,再批量执行。网络设备的账号口令是敏感信息,生产环境中不建议直接在脚本中明文写入,应使用密钥认证或加密配置文件。
8. 资源占用与性能观察
交换机配置实验不涉及 GPU 显存这类资源,但依然有性能观察的角度。在模拟器中可以关注设备 CPU 利用率和 DHCP 交互频率。
启动 DHCP 服务后,每台终端发起的 DHCP Discover 请求都会经过交换机 CPU 处理。如果模拟器中有多台设备同时获取 IP 地址,可以在 SW1 上执行 display cpu-usage 查看 CPU 占用率,正常情况下应该在较低水平,如果飙升到 80% 以上,可能是模拟器资源分配不足或者网络中有 DHCP 广播风暴。
[SW1]display cpu-usage真实交换机上则要关注 DHCP 报文是否超过了设备处理能力。在接入层交换机上,DHCP Snooping 可以限制非法 DHCP 服务器,只信任连接合法 DHCP 服务器的端口,防止用户私自搭建 DHCP 服务器导致地址分配错误。不过 DHCP Snooping 超出了本实验的范围,在此不展开。
显存和 CPU 等资源占用,在实际的交换机和模拟器中都没有必要精确计算。真正需要关注的是:DHCP 的分配速率、PC 获取地址的耗时、VLAN 间转发延迟是否满足业务要求。实验中我们用 ping 的时延和丢包率来做基本判断。
如果后续扩展到大量终端场景,比如一个 VLAN 下有 200 台 PC,接口地址池需要规划足够的地址空间,还要考虑租期设置。租期太长会导致地址回收不及时,租期太短会增加 DHCP 交互频率。常用做法是办公网络租期 1 到 3 天,访客网络租期 4 到 6 小时,具体以实际业务需求为准。
9. 常见问题与排查方法
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| PC 获取不到 IP 地址 | 交换机未开启 DHCP 服务 | 在 SW1 执行 display dhcp server statistics | 执行 dhcp enable 开启 DHCP 服务 |
| PC 获取到的 IP 是 169.254.x.x | DHCP 服务器未响应或链路故障 | 检查 PC 与交换机链路、交换机 VLANIF 接口状态 | 确认 VLANIF 接口 up,接口地址正确,dhcp select interface 已配置 |
| PC 获取到错误网段地址 | 接口地址池绑定的接口错误 | 在 SW1 执行 display this 查看 Vlanif 下的配置 | 检查 Vlanif 接口是否对应正确 VLAN,地址池网段是否匹配 |
| PC 能获取 IP 但无法 ping 通网关 | 网关地址和 DHCP 下发的网关不一致 | 在 PC 上执行 ipconfig 查看网关字段 | 接口地址池模式下检查 Vlanif 接口 IP 是否与网关一致 |
| 不同 VLAN 的 PC 互相 ping 不通 | 交换机未配置 VLANIF 或 VLANIF 接口 down | 在 SW1 执行 display ip interface brief | 创建 VLANIF 并配置 IP,确认 Trunk 放通对应 VLAN |
| 配置 Trunk 后 VLAN 不通 | Trunk 未放通 VLAN 或 PVID 不匹配 | 在 SW1 执行 display port vlan | 使用 port trunk allow-pass vlan 命令放通 VLAN,确保两端一致 |
| 使用了端到端的 VLAN1 | 默认 VLAN 1 不可删除,Trunk 默认放通 VLAN1 | 在接入接口配置 default vlan 后确认 | 将连接终端的接口划入指定 VLAN,Trunk 只放通业务 VLAN |
| 交换机配置保存后重启丢失 | 未执行 save 命令 | 检查启动配置文件 | 执行 save 并确认文件保存路径 |
上表中,最容易踩的坑是:在二层交换机上配置 IP 地址作为网关。S3700 等二层交换机不支持 VLANIF 路由转发,如果在上面配置 Vlanif 并希望它转发跨 VLAN 数据包,实际是无法实现的。三层 VLAN 间路由必须依赖三层交换机或路由器。
另一个常见的失败原因是 Trunk 链路 VLAN 放通不一致。SW1 放通了 VLAN 10 和 20,但 SW2 只放通了 VLAN 1,PC 发过来的带 VLAN 10 标签的帧会被 SW2 丢弃,导致终端获取不到 IP。配置 Trunk 后一定要用 display port vlan 检查两端放通情况。
还有一类问题是模拟器本身导致的。eNSP 中某些设备型号不支持 DHCP 服务,比如 S3700 上即使执行 dhcp select interface 也会提示命令错误或不生效。所以在组网时必须把 DHCP 服务放在支持该功能的设备上,优先选择 S5700 系列。
模拟器里如果两台 PC 都获取不到 IP,可以先在两台交换机上分别执行 display vlan 检查 VLAN 是否创建成功,再执行 display interface 检查端口状态是否 up。eNSP 中设备启动需要时间,刚启动完成时,接口可能还没进入 up 状态,可以稍等几秒再验证。
10. 常见配置错误示例
下面列出两个典型的错误配置案例,方便对照理解。
10.1 错误一:在二层交换机上创建 VLANIF
很多初学者会把网关配置在接入交换机上,比如在 SW2 上输入:
[SW2]interface Vlanif 10 [SW2-Vlanif10]ip address 192.168.10.1 255.255.255.0在部分二层交换机上,该命令可能被接受,但 VLANIF 接口会保持 down,无法实现跨 VLAN 转发。因为二层交换机没有三层转发能力,VLANIF 只能用于管理,不能承担网关功能。正确做法是将 VLANIF 配置在三层核心交换机上。
10.2 错误二:接口地址池和全局地址池混用
假设在 S5700 上同时配置了全局地址池和接口地址池:
[SW1]dhcp server ip-pool vlan10 [SW1-ip-pool-vlan10]network 192.168.10.0 mask 255.255.255.0 [SW1-ip-pool-vlan10]gateway-list 192.168.10.1 [SW1-ip-pool-vlan10]quit [SW1]interface Vlanif 10 [SW1-Vlanif10]dhcp select global [SW1-Vlanif10]quit如果 Vlanif 接口选择了 global 模式,且全局地址池存在同名或同网段地址池,DHCP 会使用全局地址池分配。如果后续又修改为 interface 模式,两次配置可能冲突,导致终端获取到意料之外的地址。建议在一个接口上只使用一种 DHCP 模式,要么 interface,要么 global,不要混用。
10.3 错误三:忘记配置 DNS 或网关
接口地址池模式下,网关默认是接口 IP,不会漏配。但如果使用了全局地址池,必须显式配置 gateway-list 和 dns-list,否则 PC 获取到 IP 后可能无法访问外部网络,或者不能解析域名。这个区别在做实验时容易被忽略,实际配置时一定要根据 DHCP 模式补充参数。
11. 最佳实践与使用建议
11.1 先写 VLAN 再写 DHCP
配置顺序直接决定问题的排查方向。建议严格按照 VLAN 创建、接口划分、Trunk 透传、VLANIF 地址、DHCP 开启、地址池配置的顺序进行。每一步做完,都用 display 命令验证一次。不要一次性复制所有配置,否则出错时定位成本很高。
11.2 分清全局地址池和接口地址池
接口地址池的最大优点是配置简单、天然隔离,适合 VLAN 网段规划清晰的小型网络。全局地址池的优点是可以在多个接口共同引用同一个地址池,适合 DHCP 集中管理的场景。两者不冲突但也不能乱用。本文重点演示的是接口地址池方式,考试和实际项目中经常要求对比两者差异。
11.3 模拟器配置要保存
eNSP 中设备配置默认不会自动保存,关闭后所有配置会丢失。完成实验后,在每台设备上执行 save 命令,并输入文件名,比如 vlan_dhcp.cfg。保存时设备会询问是否覆盖,输入 y 确认即可。
11.4 生产环境必须规划地址池
真实交换机上配置接口地址池,要专门规划好服务器、打印机、网络设备使用的保留地址段,用 dhcp server excluded-ip-address 排除。否则 DHCP 随机分配地址可能和手动配置的设备冲突,造成网络故障。
11.5 涉及真实设备时注意授权和合规
在真实交换机上执行配置前,必须确认该设备的使用权限。如果是在公司或学校网络中操作,需要获得相关管理员的授权。DHCP 服务一旦开启,会直接影响整个网段内的终端地址分配,操作前要充分评估影响范围,准备回退方案。在模拟器上验证通过后,再在业务低峰期进行真实设备配置。
12. 总结
这个实验把 VLAN 间通信和 DHCP 接口地址池两个知识点串在了一起,做完以后能理解三层交换机在园区网中的核心作用。最值得先验证的是两个点:PC 能否通过 DHCP 获取到各自 VLAN 网段的地址,以及跨 VLAN 的 ping 是否通畅。前者验证 DHCP 服务与接口地址池的关联,后者验证 VLANIF 网关的转发能力。
最容易踩的坑集中在二层交换机和三层交换机的职责混淆,以及 Trunk 放通不一致导致 VLAN 标签被丢弃。建议在实验时每配置一步就检查一步,多用 display vlan、display port vlan、display ip interface brief、display dhcp server statistics 这几个命令看结果。
这个实验还可以继续扩展。比如加入 DHCP 中继,让终端跨网段从专用 DHCP 服务器获取地址;或者加入 DHCP Snooping 防止私接 DHCP 服务器;再或者增加 OSPF、静态路由实现多交换机之间的三层互通。掌握本文的配置思路后,后续无论使用华为、华三还是其他厂商设备,核心概念都是相通的,差别只在命令风格上。