C114门户论坛百科APPEN| 举报 切换到宽版

亚星游戏官网

 找回密码
 注册

只需一步,快速开始

短信验证,便捷登录

搜索
查看: 3605|回复: 1

[原理资料] DHCP协议原理及抓包分析 [复制链接]

军衔等级:

亚星游戏官网-yaxin222  新兵

注册:2016-5-261
发表于 2019-9-17 23:45:45 |显示全部楼层
DHCP的作用:
DHCP 全称Dynamic Host configuration protocol,动态主机配置协议。它可以为客户机自动分配IP地址、子网掩码以及缺省网DNS服务器的IP地址等TCP/IP参数,简单来说,就是在DHCP服务器上有一个数据库,存放着IP地址、网关、DNS等参数。当客户端请求使用时,服务器则负责将相应的参数分配个客户端,避免客户端手动指定IP地址等。特别是在一些大规模的网络中。客户端数目较多,使用DHCP可以方便对这些机器进行管理,为客户机提供TCP/IP参数配置,如IP地址、网关地址和DNS服务器等,不仅效率高,而且不存在IP地址冲突的情况现在的无线路由器默认都带有DHCP功能,也就是说一个无线路由器同时也是一个DHCP服务器。
DHCP的工作过程
DHCP的大致流程下图所示
亚星游戏官网-yaxin222

DHCP DISCOVER: 寻找服务器
当DHCP客户端第一次登录网络的时候或者是开机的时候,此设备发本机上没有任何IP设定,就会网络广播寻找DHCP服务器。由于客户端此时还不知道自己属于哪一个网路﹐所以封包的来源地址会为0.0.0.0目的地址则为255.255.255.255,然后再附上DHCP discover的信息﹐向网路进行广播。 网络上每一台安装了TCP/IP协议的主机都会接收到这种广播信息,但只有DHCP服务器才会做出响应。
DHCP OFFER分配IP地址
DHCP服务器监听到客户端发出的DHCP Discover广播后,会针对这个客户端的硬件地址 (MAC)与本身的设定数据来进行下列工作:
1 到服务器的登录文件中寻找该用户之前是否曾经用过某个IP ,若有且该IP 目前无人使用,则提供此IP 给客户机;
2若配置文件针对该 MAC提供额外的固定 IP (static IP)时,则提供该固定 IP给客户机;
3若不符合上述两个条件, 则随机取用目前没有被使用的IP 参数给客户端,并记录下来。回应给客户端一个DHCP OFFER封包,由于客户端在开始的时候还没有IP地址﹐所以在其DHCP Discover封包内会带有其MAC地址信息﹐并且有一个XID编号来辨别该封包﹐DHCP服务器回应的DHCP Offer封包则会根据这些资料传递给要求租约的客户。根据服务器端的设定﹐DHCP Offer封包会包含一个租约期限的信息。但这里仅仅是分配,客户端还没有真正的使用
DHCP REQUEST 请求使用
如果客户端收到网路上多台DHCP服务器的回应﹐只会挑选其中一个DHCP Offer(通常是最先抵达的那个)并且向网路发送一个DHCP Request广播封包,告诉所有DHCP服务器它将指定接受哪一台服务器提供的IP位址。之所以要以广播方式回答,是为了通知所有的DHCP服务器,他将选择某台DHCP服务器所提供的IP地址, 同时,客户端还会发送一个ARP封包,查询网上有没有其他机器使用该IP地址,如果发现该IP被占用,客户端会发送一个DHCP Decline封包DHCP服务器,拒绝接受其DHCP Offer,并重开始发送DHCP Discover信息
DHCP ACK  IP地址分配确认
DHCP服务器收到DHCP客户机回答的DHCP Request请求信息之后, 它便向DHCP客户机发送一个包含它提供的IP地址和其他设置的DHCP Ack确认信息。以确认IP地址的正式生效。然后DHCP客户机便将其TCP/IP协议与网卡绑定,另外,除DHCP客户机选中的服务器外,其他的DHCP服务器都将收回曾提供的IP地址
重新登录
当DHCP客户机分配到IP后每次DHCP客户重新登录登录时,则不需要发送DHCP Discover信息了,而是直接发送包含前一次所分配的IP地址的DHCP Request请求信息。当DHCP服务器收到这一信息后,它会尝试DHCP客户机继续使用原来的IP地址,并回答一个DHCP Ack确认信息。如果此IP地址无法继续在分配给原来的DHCP客户机使用时(比如此IP地址以分配给其他DHCP客户机)则DHCP服务器DHCP客户机回答一个DHCP NAck否认信息。当原来的DHCP客户机收到此DHCP NAck否认信息后,它必须重新发送DHCP Discover信息来重新请求信的IP地址
更新租约
DHCP服务器向DHCP客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址,如果DHCP客户机要延长其IP租约,则必须更新其IPDHCP客户机启动时和IP租约期限一半时, DHCP客户机都会自动向DHCP服务器发送其IP租约的信息。 DHCP客户机除了在开机的时候发出DHCP Request请求在外,在使用租期超过50%时刻处,DHCP客户机会以单播形式向DHCP Server发送DHCP Request报文来续租IP地址。如果DHCP客户机成功收到DHCP服务器发送的DHCP ACK报文,则按相应时间延长IP地址租期;如果没有收到DHCP服务器发送的DHCP ACK报文,则DHCP客户机继续使用这个IP地址。在使用租期超过87.5%时刻处,DHCP客户机会以广播形式向DHCP Server发送DHCP Request报文来续租IP地址。如果DHCP客户机成功收到DHCP服务器发送的DHCP ACK报文,则按相应时间延长IP地址租期;如果没有收到DHCP服务器发送的DHCP ACK报文,则DHCP客户机继续使用这个IP地址,直到IP地址使用租期到期时,DHCP Client才会向DHCP Server发送DHCPRelease报文来释放这个IP地址客户端想提前退,可以随时发送DHCPRelease命令解约
亚星游戏官网-yaxin222


举报本楼

本帖有 1 个回帖,您需要登录后才能浏览 登录 | 注册
您需要登录后才可以回帖 登录 | 注册 |

手机版|C114 ( 沪ICP备12002291号-1 )|联系大家 |网站地图  

GMT+8, 2024-11-15 23:24 , Processed in 0.574786 second(s), 15 queries , Gzip On.

Copyright © 1999-2023 C114 All Rights Reserved

Discuz Licensed

回顶部
XML 地图 | Sitemap 地图