DHCP抓包分析

DHCP动态路由配置协议,是C/S架构,由DHCP服务器为客户端动态分配IP信息。

DHCP客户端首次接入网络数据交互过程:

如何解决IP地址的冲突:
▫ DHCP服务器端:收到DHCP DISCOVER报文时,给客户端分配IP地址前会发送Ping探测,
如果能Ping通则标识该地址不可用,记录进conflict池并选择其他IP地址分配给客户端。
▫ DHCP客户端:获取IP地址成功后,会立即发送免费ARP报文,如果收到响应,则发送
DHCP DECLINE报文通知DHCP服务器该IP地址冲突,DHCP服务器标识该地址不可用,
客户端发送DHCP DISCOVER报文重新申请IP地址。 

 DHCP 客户端重用曾经使用过的地址数据包交互过程:

DHCP客户端非首次接入网络时,可以重用曾经使用过的地址。例如,电脑之前在此环境下获取过IP,现关机再开机,则可以请求分配曾经使用过的IP地址。是否支持重用曾经使用过的IP地址,因不同客户端而异。

▫ 客户端广播发送包含前一次分配的IP地址的DHCP REQUEST报文,报文中的Option 50(请求的IP地址选项)字段填入曾经使用过的IP地址。

▫ DHCP服务器根据收到的DHCP REQUEST报文中携带的MAC地址来查找有没有相应的租约记录。如果有则返回DHCP ACK报文,通知DHCP客户端可以继续使用这个IP地址,如果没有租约记录,则不响应。

DHCP地址续租

DHCP客户端根据IP地址的剩余租期的不同而产生不同形式的续租请求。

• 当租期达到50%(T1)时,DHCP客户端会自动以单播的方式向DHCP服务器发送DHCP REQUEST报文,请求更新IP地址租期。如果收到DHCP服务器回应的DHCP ACK报文,
则租期更新成功。
• 当租期达到87.5%(T2)时,如果仍未收到DHCP服务器的应答,DHCP客户端会自动以广播的方式向DHCP服务器发送DHCP REQUEST报文,请求更新IP地址租期。如果收到DHCP服务器回应的DHCP ACK报文,则租期更新成功。
• 如果租期时间到时都没有收到服务器的回应,客户端停止使用此IP地址,重新发送DHCP DISCOVER报文请求新的IP地址。

DHCP续租的几种情况:

• DHCP服务器给每个分配给客户端的IP地址定义一个使用期限,该使用期限被称为租期。在
租期到期前,DHCP客户端如果仍需要使用该IP地址,可以请求延长租期;如果不需要,可
以主动释放该IP地址。在没有其他空闲地址可用的情况下,DHCP服务器会把客户端主动释
放的IP地址分配给其他客户端。
• DHCP客户端无论在T1还是T2时刻发送DHCP REQUEST报文后,如果收到DHCP NAK报文,
则重新发送DHCP DISCOVER报文请求新的IP地址。
• 客户端在租期时间到之前,如果用户不想使用分配的IP地址(例如客户端网络位置需要变
更),会触发DHCP客户端向DHCP服务器发送DHCP RELEASE报文,通知DHCP服务器释
放IP地址的租期。DHCP服务器会保留这个DHCP客户端的配置信息,将IP地址列为曾经分
配过的IP地址中,以便后续重新分配给该客户端或其他客户端。客户端可以通过发送DHCP
INFORM报文向服务器请求更新配置信息。

DHCP分配IP地址顺序:

已使用过的IP:客户端以前曾经使用过的IP地址,即客户端发送的请求报文中请求IP地址选项的地址。

查看DHCP POOL状态

Statstic 含义
Total DHCP池总的IP数
Used 已分配给终端正常使用的IP
Idle 空闲的IP,等待被分配的IP
Expired 已经分配出去,已经过期,但还未回收的地址,如电脑ipconfig /release
Conflict 冲突IP
Disable 禁用IP,DHCP服务器池配置的excluded-ip-address IP段

DHCP配置命令: 

 #
dhcp enable                 
#
ip pool dhcppool
 gateway-list 192.168.0.1 
 network 192.168.0.0 mask 255.255.255.0 
 excluded-ip-address 192.168.0.2 
 excluded-ip-address 192.168.0.248 192.168.0.249 
 excluded-ip-address 192.168.0.251 192.168.0.254 
 lease day 0 hour 1 minute 0 
 dns-list 192.168.0.1 

#
interface GigabitEthernet0/0/0
 ip address 192.168.0.1 255.255.255.0 
 dhcp select global
#
 

相关推荐

  1. Python wireshark分析

    2024-04-11 22:30:01       22 阅读
  2. 分析工具的小米加步枪版本

    2024-04-11 22:30:01       19 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-11 22:30:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-11 22:30:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-11 22:30:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-11 22:30:01       20 阅读

热门阅读

  1. spring

    spring

    2024-04-11 22:30:01      18 阅读
  2. 计算机网络⑨ —— TCP粘包与拆包

    2024-04-11 22:30:01       16 阅读
  3. 前端数组常用方法以及解释(手动整理)

    2024-04-11 22:30:01       13 阅读
  4. 汽车传感器介绍

    2024-04-11 22:30:01       13 阅读
  5. 深入理解C语言:函数栈帧的秘密

    2024-04-11 22:30:01       17 阅读
  6. Spring的Bean标签配置IOC和依赖注入详解

    2024-04-11 22:30:01       14 阅读