一、什么是 DHCP?
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一种应用层网络协议,用于在局域网中自动为客户端设备分配 IP 地址及相关网络配置参数,无需用户手动设置。它基于 UDP 协议工作(服务器端口 67,客户端端口 68),是现代 TCP/IP 网络中实现“即插即用”联网的关键技术。
二、DHCP 的核心作用
自动分配 IP 地址
避免手动配置错误和地址冲突。
集中管理网络参数
统一配置网关、DNS、域名等信息。
高效利用 IP 资源
通过“租约”机制回收不再使用的 IP 地址。
简化设备接入
新设备(如手机、笔记本)接入网络后可立即通信。
三、DHCP 工作流程(DORA 四步交互)
DHCP 使用 广播 + 单播 相结合的方式完成地址分配:
1. Discover(发现)
客户端启动后,发送 广播 报文 DHCP Discover(源 IP: 0.0.0.0,目标 IP: 255.255.255.255)
目的:寻找网络中的 DHCP 服务器
2. Offer(提供)
DHCP 服务器收到 Discover 后,从地址池中选择一个可用 IP
发送 单播或广播 的 DHCP Offer 报文,包含:IP 地址,子网掩码,租期,其他可选参数(如网关、DNS)
说明:可能有多个服务器响应,客户端通常选择第一个收到的 Offer
3. Request(请求)
客户端广播 DHCP Request,声明接受某个服务器的 Offer
同时通知其他服务器:“我不需要你们的 IP 了”
4. Acknowledge(确认)
被选中的服务器回复 DHCP ACK
正式确认 IP 分配,客户端开始使用该 IP
若 IP 冲突或不可用,则回复 DHCP NAK(否定应答)
总结:此过程称为 DORA(Discover → Offer → Request → Ack)
#dhcp enable(开启DHCP服务)#vlan 10(创建用户VLAN)#dhcp server ip-pool 1(配置DHCP地址池)gateway-list 192.168.1.254(网关地址)network 192.168.1.0 mask 255.255.255.0(子网网段)expired day 10 hour 12(租期)#interface Vlan-interface10(创建SVI接口,配置网关地址)ip address 192.168.1.254 255.255.255.0#interface GigabitEthernet1/0/1(配置连接用户PC机接口)port link-mode bridgeport access vlan 10combo enable copper#
1. DHCP Discover(发现)
客户端广播发送 Discover,寻找 DHCP 服务器
源 IP:0.0.0.0(未分配 IP)
目标 IP:255.255.255.255(广播地址)
说明:客户端正在尝试获取网络配置,多次重复发送 Discover,可能是重传机制(超时未收到响应)
注释:
网络层(Internet Protocol)
源 IP:0.0.0.0 → 客户端尚未获得 IP
目标 IP:255.255.255.255 → 广播地址
协议:UDP
传输层(User Datagram Protocol)
源端口:bootpc (68) → DHCP 客户端端口
目的端口:bootps (67) → DHCP 服务器端口
长度:308 字节
校验和:0x36bf(验证已禁用)
应用层(Bootstrap Protocol - BOOTP)
消息类型:Boot Request (1) → 表示是客户端请求
硬件类型:Ethernet(以太网)
硬件地址长度:6 字节(MAC 地址)
跳数(Hops):0 → 未经过中继
事务 ID(Transaction ID):0xd4ab3f1c → 标识本次 DHCP 会话
经过时间(Seconds elapsed):0 → 刚发起请求
BOOTP 标志:0x8000 → 广播标志位被置位(即广播报文)
客户端 IP 地址:0.0.0.0 → 无有效 IP
你的(客户端)IP 地址:0.0.0.0 → 尚未分配
下一跳服务器 IP:0.0.0.0 → 未知
中继代理 IP:0.0.0.0 → 无中继
客户端 MAC 地址:8e:4b:1a:a5:06:06
DHCP 选项(Options)
Option 53 (t=53,l=1) 内容:DHCPMessageType = DHCP Discover描述:表明这是 DHCP 发现报文(Discover),用于查找服务器
Option 55 (t=55,l=12) 内容:Parameter Request List 描述:客户端请求以下参数:子网掩码,默认网关,DNS 服务器,域名,租期等(共 12 个)
Option 57 (t=57,l=2) 内容:Maximum DHCP Message Size = 1152描述:客户端支持的最大 DHCP 报文大小为 1152 字节
Option 60 (t=60,l=8) 内容:Vendor Class Identifier = "H3C. H3c"描述:客户端设备厂商标识,表明是 H3C 设备(如交换机、路由器)
Option 61 (t=61,l=23) 内容:Client Identifier 描述:客户端唯一标识符(通常为 MAC 地址)
2. DHCP Offer(提供)
源 IP:192.168.1.254 → 这是 DHCP 服务器的 IP 地址
目标 IP:255.255.255.255(广播)
说明:服务器已响应客户端请求,提供了 IP 配置,服务器向客户端提供一个可用 IP 地址。
注释:
网络层(Internet Protocol)
源 IP:192.168.1.254 → DHCP 服务器地址
目标 IP:255.255.255.255 → 广播地址
协议:UDP (17)
传输层(User Datagram Protocol)
源端口:bootps (67) → DHCP 服务器端口
目的端口:bootpc (68) → DHCP 客户端端口
长度:308 字节
校验和:0x4ec2(验证已禁用)
应用层(Bootstrap Protocol - BOOTP)
消息类型:Boot Reply (2) → 表示是服务器响应
硬件类型:Ethernet(以太网)
硬件地址长度:6 字节
跳数(Hops):0 → 未经过中继
事务 ID(Transaction ID):0xd4ab3f1c → 与客户端请求一致,表示是对应回复
经过时间(Seconds elapsed):0 → 快速响应
BOOTP 标志:0x8000 → 广播标志位被置位(即广播发送)
客户端 IP 地址:0.0.0.0 → 客户端尚未分配 IP
你的(客户端)IP 地址:192.168.1.1 → 服务器提供的 IP 地址
下一跳服务器 IP:0.0.0.0
中继代理 IP:0.0.0.0
客户端 MAC 地址:8e:4b:1a:a5:06:06 → 与之前 Discover 报文一致
DHCP 选项(Options)
Option 53 (t=53,l=1) 内容:DHCP Message Type = DHCP Offer描述:这是一条 DHCP 提供报文(Offer),表示服务器愿意分配 IP
Option54(t=54,l=4) 内容:DHCPServerIdentifier = 192.168.1.254 描述:提供服务的 DHCP 服务器 IP 地址
Option 51 (t=51,l=4) 内容:IP Address Lease Time = 10 days, 12 hours 描述:租期为 10 天 12 小时,客户端需在此时间内续租
Option 58 (t=58,l=4) 内容:Renewal Time Value = 5 days, 6 hours时间点:租期过半时尝试续租(5天6小时后)
Option 59 (t=59,l=4) 内容:Rebinding Time Value = 9 days, 4 hours, 30 minutes 描述:时间点:租期 87.5% 时广播续租(9天4小时30分钟后)
Option 1 (t=1,l=4) 内容:Subnet Mask = 255.255.255.0描述:子网掩码为 /24
Option 3 (t=3,l=4) 内容:Router = 192.168.1.254 描述:默认网关为 192.168.1.254(与服务器 IP 相同)
3. DHCP Request(请求)
客户端再次广播 Request,表示接受该 Offer
交易 ID 与 Offer 一致,确认选择该服务器
注释:
网络层(Internet Protocol)
源 IP:0.0.0.0 → 客户端尚未获得有效 IP
目标 IP:255.255.255.255 → 广播地址
协议:UDP (17)
传输层(User Datagram Protocol)
源端口:bootpc (68) → DHCP 客户端端口
目的端口:bootps (67) → DHCP 服务器端口
长度:317 字节
校验和:0xdbc0(验证已禁用)
应用层(Bootstrap Protocol - BOOTP)
消息类型:Boot Request (1) → 表示是客户端请求
硬件类型:Ethernet(以太网)
硬件地址长度:6 字节
跳数(Hops):0 → 未经过中继
事务 ID(Transaction ID):0xd4ab3f1c → 与之前 Offer 报文一致,表示是对应响应
经过时间(Seconds elapsed):0 → 刚发起请求
BOOTP 标志:0x8000 → 广播标志位被置位(即广播发送)
客户端 IP 地址:0.0.0.0 → 无有效 IP
你的(客户端)IP 地址:0.0.0.0 → 尚未分配
下一跳服务器 IP:0.0.0.0
中继代理 IP:0.0.0.0
客户端 MAC 地址:8e:4b:1a:a5:06:06
DHCP 选项(Options)
Option 53 (t=53,l=1) 内容:DHCPMessageType = DHCP Request描述:这是一条 DHCP 请求报文(Request),表示客户端接受某个 Offer
Option 54 (t=54,l=4) 内容:DHCP Server Identifier = 192.168.1.254 描述:客户端明确请求来自 192.168.1.254 的服务器提供的 IP
Option 50 (t=50,l=4) 内容:Requested IP Address = 192.168.1.1描述:客户端请求的具体 IP 地址为 192.168.1.1
Option 55 (t=55,l=12) 内容:Parameter Request List 描述:客户端请求以下参数:子网掩码,默认网关,DNS 服务器,域名等(共 12 个)
Option 57 (t=57,l=2) 内容:Maximum DHCP Message Size = 1152 描述:客户端支持的最大 DHCP 报文大小为 1152 字节
Option 60 (t=60,l=8) 内容:Vendor Class Identifier = "H3C. H3c" 描述:客户端设备厂商标识,表明是 H3C 设备(如交换机、路由器)
Option 61 (t=61,l=23) 内容:Client Identifier 描述:客户端唯一标识符(通常为 MAC 地址)
4. DHCP ACK(确认)
服务器回复 ACK,正式确认 IP 分配成功
客户端可以使用该 IP 地址进行通信
注释:
网络层(Internet Protocol)
源 IP:192.168.1.254 → DHCP 服务器地址
目标 IP:255.255.255.255 → 广播地址
协议:UDP (17)
传输层(User Datagram Protocol)
源端口:bootps (67) → DHCP 服务器端口
目的端口:bootpc (68) → DHCP 客户端端口
长度:308 字节
校验和:0x4bc2(验证已禁用)
应用层(Bootstrap Protocol - BOOTP)
消息类型:Boot Reply (2) → 表示是服务器响应
硬件类型:Ethernet(以太网)
硬件地址长度:6 字节
跳数(Hops):0 → 未经过中继
事务 ID(Transaction ID):0xd4ab3f1c → 与客户端 Request 报文一致,表示是对应回复
经过时间(Seconds elapsed):0 → 快速响应
BOOTP 标志:0x8000 → 广播标志位被置位(即广播发送)
客户端 IP 地址:0.0.0.0 → 客户端尚未分配 IP
你的(客户端)IP 地址:192.168.1.1 → 服务器正式分配的 IP 地址
下一跳服务器 IP:0.0.0.0
中继代理 IP:0.0.0.0
客户端 MAC 地址:8e:4b:1a:a5:06:06 → 与之前请求一致
DHCP 选项(Options)
Option 53 (t=53,l=1) 内容:DHCP Message Type = DHCP ACK描述:这是一条 DHCP 确认报文(ACK),表示服务器同意分配 IP
Option 54 (t=54,l=4) 内容:DHCP Server Identifier = 192.168.1.254描述:提供服务的 DHCP 服务器 IP 地址
Option 51 (t=51,l=4) 内容:IP Address Lease Time = 10 days, 12 hours 描述:租期为 10 天 12 小时,客户端需在此时间内续租
Option 58 (t=58,l=4) 内容:Renewal Time Value = 5 days, 6 hours描述:时间点:租期过半时尝试续租(5天6小时后)
Option 59 (t=59,l=4) 内容:Rebinding Time Value = 9 days, 4 hours, 30 minutes描述:时间点:租期 87.5% 时广播续租(9天4小时30分钟后)
Option 1 (t=1,l=4) 内容:Subnet Mask = 255.255.255.0 描述:子网掩码为 /24
Option 3 (t=3,l=4) 内容:Router = 192.168.1.254 描述:默认网关为 192.168.1.254(与服务器 IP 相同)
公众号:老五说网络
长按左侧二维码关注
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……




还没有评论,来说两句吧...