理论课40分钟

29课:DHCP动态主机配置

自动获取IP地址

教学目标

1理解DHCP的工作流程
2掌握DORA四步过程
3了解DHCP中继的作用

📖 课前导入

你连WiFi后手机自动就有了IP地址——你从没手动配置过。但在一个1000人的企业网络中,如果每台电脑都需要IT管理员手动配置IP,那不仅耗时巨大,还极容易出现IP地址冲突

DHCP就是解决这个问题的"IP地址自动管家"。它不仅自动分配IP,还能统一管理网关、DNS等配置,是每个网络的基础设施。

🎯 本课目标:理解DHCP的DORA四步过程,掌握租约机制与续租流程,了解DHCP中继的作用,能用命令排查DHCP问题,认识DHCP安全威胁与防护。

📚 一、DHCP协议概述

什么是DHCP?

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)自动为设备分配IP地址和网络配置。使用UDP端口67(服务器)和68(客户端)

为什么用UDP不用TCP?因为客户端还没有IP地址,无法建立TCP连接(TCP需要IP地址来三次握手)。

DHCP分配的信息

🔢

IP地址

如 192.168.1.100

🎭

子网掩码

如 255.255.255.0

🚪

默认网关

如 192.168.1.1

📖

DNS服务器

如 8.8.8.8

还可以分配:租约时间、域名后缀、NTP时间服务器、WINS服务器等。

静态IP vs DHCP对比

对比项静态IP(手动配置)DHCP(自动分配)
配置方式管理员逐台手动设置自动获取,即插即用
管理成本高,设备多时不可行低,统一管理
IP冲突风险高,容易手误重复低,服务器统一分配
适用场景服务器、打印机、网关等员工电脑、手机、访客设备

最佳实践:服务器/网络设备用静态IP(地址不能变),终端设备用DHCP(灵活管理)。

📚 二、DHCP工作过程——DORA四步 ⭐核心

DORA = Discover → Offer → Request → Acknowledge

全程使用广播通信(因为客户端最初没有IP地址,无法单播)。

D

1. Discover(发现)——客户端广播寻找服务器

"网络中有DHCP服务器吗?我需要一个IP地址!"

源IP: 0.0.0.0 → 目的IP: 255.255.255.255(广播)

源MAC: 客户端MAC → 目的MAC: FF:FF:FF:FF:FF:FF

O

2. Offer(提供)——服务器回应可用IP

"我这里有IP 192.168.1.100给你用,网关是.1,DNS是114.114.114.114,租期24小时。"

包含:可用IP、子网掩码、网关、DNS、租约时间。如果有多台DHCP服务器,每台都会发Offer。

R

3. Request(请求)——客户端选择并确认

"我接受服务器A提供的192.168.1.100!"(仍然是广播,这样其他服务器也知道它被拒绝了)

客户端通常选择最先收到的Offer。其他服务器看到Request后收回自己的Offer。

A

4. Acknowledge(确认)——服务器最终确认

"确认!192.168.1.100从现在起是你的了,租期24小时。"

客户端收到ACK后配置IP地址,发送免费ARP检测地址冲突,正式开始使用网络。

🌐 DHCP DORA四步过程

① Discover广播② Offer: .100
新设备(无IP)
交换机
DHCP服务器192.168.1.1

📚 三、DHCP租约与续租

租约生命周期

时间轴(假设租期24小时):

0h 获得IP地址(DORA完成)

|=========|=========|=========|=========|

12h T1=50% → 向原服务器单播续租(Request)

| |=========|=========|

21h T2=87.5% → 续租失败,向所有服务器广播续租

| |=========|

24h 租约到期 → 释放IP,重新DORA

T1续租(50%时)——单播

客户端向原DHCP服务器发送Request。服务器正常则回ACK,租期重新计时。

✅ 最常见的情况,用户无感知。

T2重绑定(87.5%时)——广播

如果T1续租失败(原服务器宕机),客户端广播Request,请求任何DHCP服务器续租。

⚠️ 说明原DHCP服务器可能出了问题。

Windows DHCP管理命令
// 模拟终端 - 点击"执行下一条"或按回车运行命令
// 共 3 条命令,已执行 0
C:\>

📚 四、DHCP中继——跨子网分配IP

问题:广播包过不了路由器

DHCP Discover是广播包,而路由器默认不转发广播。如果DHCP服务器在另一个子网,客户端的Discover永远到不了服务器。

解决:DHCP中继代理(Relay Agent)

在路由器上配置ip helper-address,路由器收到DHCP广播后,转为单播转发给指定的DHCP服务器。

// 路由器配置DHCP中继

Router(config)# interface GigabitEthernet0/1

Router(config-if)# ip helper-address 10.0.0.100

↑ DHCP服务器的IP地址

🌐 DHCP中继跨子网工作流程

① 广播Discover② 转为单播转发③ Offer回复④ 转回广播
新设备子网A: 192.168.1.0/24
路由器(中继)ip helper-address
DHCP服务器子网B: 10.0.0.100

优势:一台DHCP服务器可以为多个子网分配IP,集中管理,无需每个子网都部署DHCP服务器。

🔧 五、DHCP安全威胁与排错

🔴 DHCP饥饿攻击

攻击者伪造大量MAC地址发送Discover,耗尽DHCP服务器的所有IP,导致正常用户无法获得IP。

防御:交换机启用端口安全(Port Security),限制每个端口的MAC地址数量。

🟠 DHCP欺骗攻击

攻击者搭建假DHCP服务器,给用户分配错误的网关IP(指向攻击者),从而截获所有流量(中间人攻击)。

防御:交换机启用DHCP Snooping,只允许信任端口发送Offer/ACK。

小贴士

DHCP排障步骤

1. 确认DHCP启用ipconfig /all看"DHCP已启用"是否为"是"。

2. 释放并重获ipconfig /releaseipconfig /renew,万能重置操作。

3. 检查获得的IP:如果IP是169.254.x.x(APIPA地址),说明没有找到DHCP服务器。检查网线/WiFi连接、DHCP服务器状态。

4. 检查网关可达ping 网关IP,不通则检查物理连接。

5. 检查DNSnslookup www.baidu.com,失败则DNS服务器配置有误。

DHCP工作过程与配置演示

在Packet Tracer中演示DHCP的DORA四步抓包分析,配置DHCP服务器地址池和中继代理,演示DHCP Snooping防护

15:00
DHCP工作过程与配置演示推荐视频15:00

在Packet Tracer中演示DHCP的DORA四步抓包分析,配置DHCP服务器地址池和中继代理,演示DHCP Snooping防护

✅ 课堂小测

随堂测验

1/7

DHCP的四步过程DORA分别代表什么?

📋 本课小结

1

DHCP:自动分配IP、掩码、网关、DNS。UDP 67/68。服务器/网络设备用静态IP,终端用DHCP。

2

DORA四步:Discover(广播找)→Offer(服务器应答)→Request(客户端选择)→ACK(最终确认)。

3

租约续租:50%时单播续租,87.5%时广播续租,到期则释放IP重新DORA。

4

DHCP中继:路由器上配ip helper-address,一台DHCP服务器可为多个子网服务。

5

安全防护:DHCP Snooping防假服务器,端口安全防饥饿攻击。169.254.x.x = 找不到DHCP。

🤔 课后思考与实践

动手实验

  1. ipconfig /all 查看你电脑的DHCP信息:获得的IP、网关、DNS、租约起止时间。
  2. 执行 ipconfig /releaseipconfig /renew,观察IP是否变化(通常不会变,因为DHCP会优先分配之前使用的IP)。
  3. 登录你家路由器管理页面,找到DHCP设置,看看地址池范围和租约时间。

思考题

  1. 为什么DHCP Request(第三步)要用广播而不是直接单播给选中的服务器?
  2. 如果网络中有两台DHCP服务器,会发生什么?这是好事还是坏事?
  3. 为什么服务器和打印机应该用静态IP而不是DHCP?如果它们用DHCP会有什么问题?