DHCP协议学习笔记
一、基本概念
✅ 定义:动态主机配置协议(Dynamic Host Configuration Protocol)
- 应用层协议(UDP 67/68端口)
- 自动为网络设备分配IP地址及其他配置参数
✅ 核心功能:
- IP地址动态分配
- 配置参数传递
- 地址回收与重用
二、工作原理
1. 四步交互流程(DORA过程)
1 2 3 4 5
| sequenceDiagram 客户端->>DHCP服务器: DHCP Discover(广播) DHCP服务器->>客户端: DHCP Offer(单播) 客户端->>DHCP服务器: DHCP Request(广播) DHCP服务器->>客户端: DHCP Ack(单播)
|
2. 报文类型
报文类型 |
方向 |
作用 |
DHCP Discover |
客户端→服务器 |
寻找可用DHCP服务器 |
DHCP Offer |
服务器→客户端 |
提供IP配置提案 |
DHCP Request |
客户端→服务器 |
确认接受配置 |
DHCP Ack/Nak |
服务器→客户端 |
最终确认/拒绝分配 |
三、关键技术特性
1. 租约管理
- 租约时长:默认8天(可配置)
- 续租流程:
- T1时间(50%租期):单播续租原IP
- T2时间(87.5%租期):广播请求新服务器
- 到期后释放IP并重启DORA过程
2. 地址池类型
类型 |
特点 |
适用场景 |
动态分配 |
临时IP,租期结束后回收 |
普通用户设备 |
静态绑定 |
MAC-IP固定映射 |
服务器/打印机 |
自动分配 |
长期保留首次分配的IP |
移动设备优化体验 |
四、安全注意事项
⚠️ 常见攻击:
- DHCP饥饿攻击:伪造大量请求耗尽地址池
- 恶意服务器注入:伪造DHCP服务器分配错误配置
🛡️ 防护措施:
1 2 3
| switch(config-if)# ip dhcp snooping switch(config-if)# ip dhcp snooping limit rate 10
|
五、实践命令
1. Windows客户端操作
1 2 3 4 5 6 7 8
| ipconfig /release
ipconfig /renew
ipconfig /all | findstr "Lease"
|
2. Linux服务器配置(isc-dhcp-server)
1 2 3 4 5 6 7 8
| subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.200; option routers 192.168.1.1; option domain-name-servers 8.8.8.8; default-lease-time 86400; max-lease-time 172800; }
|