地址服务与设备管理

DHCP 为什么存在,DORA 四步发生了什么

本课问题:新终端不知道自己的地址时,怎样自动获得网络参数? 学完你能:画出 Discover、Offer、Request、Ack 的消息往返并读取租约。

进阶20 分钟作者:课程内容组核验:内容技术审核组 · 2026/8/7
正在读取学习状态...

前置知识

  • 能够规划地址、配置 VLANIF 与静态/默认路由,并逐层验证双向通信。
课堂开场

本课问题:新终端不知道自己的地址时,怎样自动获得网络参数?

学完结果:画出 Discover、Offer、Request、Ack 的消息往返并读取租约。

预计时间:20 分钟。前置课:让不同网段互相通信。

范围控制:本课不配置地址池。

今天只记 1:Discover 寻找可用服务器,Offer 提供候选参数。
今天只记 2:Request 表达客户端选择,Ack 确认租约生效。
今天只记 3:四步可能跨越 Relay,但客户端最终仍从服务器获得租约。

02基础知识讲解

新电脑接入办公 VLAN 后没有 IP 地址,需要沿 Discover、Offer、Request、Ack 四步判断消息停在哪里。

本课最小拓扑或状态图:Client VLAN10 ⇄ Access/Core ⇄ DHCP Server;D → O → R → A

直觉解释:客户端先公开喊“有没有服务器”,服务器报价,客户端公开选择,服务器最后确认;缺少任何一封消息都不能形成有效租约。

正式定义:DHCP DORA 是客户端首次获取 IPv4 租约时的 Discover、Offer、Request、Acknowledgement 四阶段交互;Ack 携带最终地址、掩码、网关、DNS 和租期。

判断依据:四步可能跨越 Relay,但客户端最终仍从服务器获得租约。

重点你要理解判断依据
重点 1Discover 寻找可用服务器,Offer 提供候选参数。统计中 Discover、Offer、Request、Ack 都增加 1,租约表出现客户端 MAC 与 BOUND 地址。
重点 2Request 表达客户端选择,Ack 确认租约生效。Request 与 Ack 也同为 18、Nak 为零,证明客户端选择已获服务器确认。
重点 3四步可能跨越 Relay,但客户端最终仍从服务器获得租约。无 Discover 时检查终端、接入口 VLAN 和客户端状态。

03正确理解与常见误解

正确示例:统计中 Discover、Offer、Request、Ack 都增加 1,租约表出现客户端 MAC 与 BOUND 地址。

错误示例:只看到 Offer 就认为地址已分配;客户端可能没有 Request,服务器也尚未 Ack。

  • 术语与判断:Discover 寻找可用服务器,Offer 提供候选参数。
  • 术语与判断:Request 表达客户端选择,Ack 确认租约生效。
  • 术语与判断:四步可能跨越 Relay,但客户端最终仍从服务器获得租约。

04老师演示

演示环境:设备 SW1,华为 S5735-L24T4X-A,VRP V200R022C00SPC500,当前提示符 <SW1>,隔离课程网络。教师准备执行只读命令:

  1. 前检核对 SW1、目标对象、当前状态、带外路径和变更前业务基线。
  2. 只读核验(查看 DHCP 租约与地址使用率)display ip pool name OFFICE used第 1 步:在目标设备上执行并核对命令作用范围
  3. 只读核验(查看 DHCP 租约与地址使用率)display ip pool name OFFICE读取实际状态或计数器,确认“确认地址池已分配、空闲和过期租约数量”已经满足

安全说明:命令来自“查看 DHCP 租约与地址使用率”华为实现,用于华为VRP 中用于查看 DHCP 租约与地址使用率的最小操作与核验方法。 执行前已确认当前设备、版本、视图、影响对象、停止条件和输出脱敏范围。

脱敏真实输出:

<SW1>display ip pool name OFFICE
DHCP Server statistics: Discover 18  Offer 18
Request 18  Ack 18  Nak 0
00e0-fc12-3401  192.168.10.42  BOUND  Lease 23:41:08

异常输出:

Discover 25  Offer 0  Request 0  Ack 0
客户端保持 0.0.0.0,租约表中没有其 MAC
差异说明:Discover 增加而后三步均为零,说明故障在服务器响应前;下一步检查 DHCP 服务、地址池匹配和 Relay 转发。
此时不能套用正常结论;先保存采集时间,再执行“查看 DHCP 租约与地址使用率”对应的最小只读检查。

05逐行读懂输出

结论:当前输出可以支持“画出 Discover、Offer、Request、Ack 的消息往返并读取租约。”中的基础判断,但仍要完成跟做任务和业务验收,不能把单份输出当作全部证明。

  • 第 1 行“DHCP Server statistics: Discover 18 Offer 18”:Discover 和 Offer 计数同为 18,证明服务器已收到请求并给出报价。
  • 第 2 行“Request 18 Ack 18 Nak 0”:Request 与 Ack 也同为 18、Nak 为零,证明客户端选择已获服务器确认。
  • 第 3 行“00e0-fc12-3401 192.168.10.42 BOUND Lease 23:41:08”:该 MAC 的租约状态 BOUND 且给出地址和剩余租期,证明具体客户端已获得有效地址。

06学员跟做

起始状态:使用隔离课程环境,SW1 当前配置保持阶段基线,学员已登录但尚未执行本课检查。目标状态:画出 Discover、Offer、Request、Ack 的消息往返并读取租约。

操作步骤:①在纸面拓扑标出四条消息的发送方、接收方和广播/单播方向;②让实验终端释放并重新申请地址;③读取服务器统计与租约,按时间记录四步计数变化;④指出最后成功步骤和第一处缺失步骤,再进入 DORA 闯关;⑤进入“引导:跟踪 DHCP DORA”独立完成相同目标。

成功标准:输出与规划一致,立即闯关全部目标通过,并能用自己的话说明三个重点。失败检查顺序:①无 Discover 时检查终端、接入口 VLAN 和客户端状态;②有 Discover 无 Offer 时检查服务器、地址池和 Relay;③有 Offer 无 Ack 时检查客户端选择、冲突检测和 Request 是否返回。

  • 保存教师演示命令和本次学员输出,文件名含设备、日期和课次。
  • 步骤标题只提示检查对象,不复制最终答案。
  • 失败时一次只验证一个假设,不连续粘贴未知命令。

07安全、验证与回滚

本课以只读观察为主。只读命令仍可能暴露资产信息,保存输出前要替换序列号、真实公网地址、账号和其他敏感字段;任何清表、重启、删除或配置动作都不属于本课。

验证必须同时回答:配置或输入是否正确、设备状态是否符合预期、真实任务“画出 Discover、Offer、Request、Ack 的消息往返并读取租约。”是否完成。

08本课关联资源

按顺序完成:先看命令 → 立即闯关 → 可选加练 → 案例步骤 → 返回本页复盘。

  • 必学命令:查看 DHCP 租约与地址使用率打开资源 →目标:核对本课涉及的华为主线命令及四厂商差异|完成标准:能解释用途、视图、版本范围、验证和回滚。
  • 立即闯关:引导:跟踪 DHCP DORA打开资源 →目标:独立完成“画出 Discover、Offer、Request、Ack 的消息往返并读取租约。”对应的最小任务|完成标准:规则引擎全部目标通过并保存关键输出。

09自测一:概念判断

先判断对错,再写出为什么。

  • 判断 1:以下做法是正确的——只看到 Offer 就认为地址已分配;客户端可能没有 Request,服务器也尚未 Ack。
  • 判断 2:以下做法是正确的——统计中 Discover、Offer、Request、Ack 都增加 1,租约表出现客户端 MAC 与 BOUND 地址。

10自测二:输出解读

重新阅读老师演示的第 2 行输出:它能直接证明什么?还不能证明“画出 Discover、Offer、Request、Ack 的消息往返并读取租约。”中的哪一部分?请写出下一条最小验证证据。

11自测三:小型操作

在隔离环境或纸面拓扑中完成:画出 Discover、Offer、Request、Ack 的消息往返并读取租约。 保存关键输出,按“现象—证据—结论—下一步”写四行记录;不得复制本页最终结论。

答案与复盘

13下一课

下一课:地址池、租约、网关、DNS 和排除地址。你已经能“画出 Discover、Offer、Request、Ack 的消息往返并读取租约。”,下一课将用这项能力继续回答“一个可用 DHCP 地址池必须提供哪些参数?”。

DHCP 为什么存在,DORA 四步发生了什么|vlanif.cn