打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
DHCP协议超详细解读(基于接口)

什么是DHCP

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),前身是BOOTP协议,是一个局域网的网络协议,使用UDP协议工作,统一使用两个IANA分配的端口:67(服务器端),68(客户端)。DHCP通常被用于局域网环境,主要作用是集中的管理、分配IP地址,使client动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。简单来说,DHCP就是一个不需要账号密码登录的、自动给内网机器分配IP地址等信息的协议。

   原理:

抓包:

             

Dhcp协议的工作流程:

1.发送阶段:因为刚接入网络中的客户端并不知道DHCP服务器的地址,所以使用泛洪的方式广播Discovery请求报文来发现网络中的DHCP服务器。

  1. 提供阶段:DHCP服务器收到Discovery请求报文后就会在自己的地址池中寻找一个合法地址并加上相应的租约期限和其他的配置信息来构造成一个Offer报文,发送给DHCP客户端,告知本DHCP服务器可以为其提供ip地址。(由于Discover请求报文是泛洪方式发送,所以往往会有多个DHCP服务器相应并回送offer报文,具体取决于网络具体条件)注意:offer报文回送为单播方式,因为DHCP从Discover那里获知了客户端的mac地址,由下图offer报文抓包可以看出:

  1. 请求阶段:DHCP客户端可能收到多个offer请求报文,所以必须在这些应答中选择一个,通常是选择第一个。然后广播Requst请求报文,用来告知DHCP服务器选择结果,希望获得所分配的ip地址。

Requst报文抓包如图:

Requst报文极为重要,它还事关地址续租问题:

  当租期时间剩下50%时,DHCP客户端发送Requst(单播)给当初获取地址的DHCP服务器;

  1. :若DHCP服务器回应请求:DHCP服务器单播给DHCP客户端一个ACK报文,DHCP客户端收到后会刷新租期时间
  2. :若DHCP服务器未响应,接下来:

    当租期时间只剩下12.5%时,DHCP客户端再次发送Requst(注意这次是广播)泛洪

如果原来的服务器回复了则继续用

如果原来的服务器因为各种原因崩溃了没法回复ACK,而网络中的其他服务器(或者是原来的服务器没有崩溃)收到客户端的request发现你的租期与它记录的不一样,给客户端会回复一个NAK报文,客户端收到后就会重新发送discovery报文,重新在网络中请求地址

如果在租期内没有收到服务器的回复,租期满了,停止使用地址,重新发送discovery

  1. 确认阶段:最后,DHCP服务器会对Requst报文进行回应,如果一切正常,那么就会回应一个DHCP ACK确认报文来确认分配的ip地址

此过程完成才算真正获取到ip地址了

一旦获取到ip地址将立即进行地址冲突检测:

       若发生地址重复,两个重复的客户端将进行反复争用:

此时,新配置的DHCP客户端将发送DHCP decline 报文告诉服务器地址冲突

原因分析:地址池没有排除掉,已经分配的地址

解决方案:dhcp配置排除列表 

注:原文档私信我将无偿分享

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
局域网协议DHCP应用及安全防护
DHCP协议原理及报文分析
DHCP的基本实现原理
计算机网络基础知识——面试收藏必备
DHCP Option60
DHCP Option 82详细讲解
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服