DHCP报文及工作流程

Wesley13
• 阅读 681

DHCP定义

    DHCP,Dynamic Host Configuration Procotol动态主机配置协议。是应用层协议,能够让设置自动获取IP地址以及其他重要网络资源。

    DHCP使用UDP协议工作,DHCP有3个端口,其中UDP67和UDP68为正常的DHCP端口服务端口,分别作为DHCP Server和DHCP Client的服务端口。546号端口用于DHCPv6 Client,而不用于DHCPv4,是为DHCP failover服务,该服务是需要特别开启的服务,用来做双机热备的。

DHCP的作用

    DHCP主要作用如下:

      1、保证任何IP地址在同一时刻只能由一台DHCP客户机所使用。

      2、DHCP可以给用户分配永久固定的IP地址。

      3、DHCP允许用其他方法获得IP地址的主机共存,如手机配置IP地址的主机。

      4、DHCP服务器向现有的BOOTP客户端提供服务。

    DHCP有3种分配IP地址方式,分别是自动分配、动态分配、手工配置:

      自动分配Automatic Allocation:DHCP给客户端分配永久性IP地址

      动态分配Dynamic Allocation:DHCP给客户端分配的IP地址,过一段时间后会过期,或者客户端可以主动释放该地址。

      手动配置Manual Allocation:由用户手动为客户端指定IP地址。

DHCP获取IP流程

     DHCP报文及工作流程

    (1)发现阶段。即DHCP客户端寻找DHCP服务器的阶段。

        DHCP客户端以广播方式发送DHCP Discover包,来寻找DHCP服务器,即向地址255.255.255.255发送特定的广播信息。

        网络上每一台安装了TCP/IP协议的主机都会接收到该广播信息,但只有DHCP服务器才会做出相应。

    (2)提供阶段。即DHCP服务器提供IP地址的阶段。

        在网络中接收到DHCP Discover包的DHCP服务器,都会做出响应。这些DHCP服务器从尚未出租的IP地址中挑选一个给客户端,向客户端发送一个包含IP地址和其他设置的DHCP Offer包

    (3)选择阶段。即DHCP客户机选择某台DHCP服务器提供的IP地址阶段。

        DHCP客户端只接收第一个收到的DHCP Offer包信息。然后以广播方式回答一个DHCP Request请求信息。该信息中包含向它所选定的DHCP服务器请求IP地址的内容。

        这里使用广播方式,就是通知所有DHCP服务器,它选择了某台DHCP服务器所提供的IP地址。局域网中所有DHCP服务器都会收到客户端发送的DHCP Request信息,通过查看包信息,可以确定客户端释放选择了自己提供的IP地址。如果选择的是自己的,则会发送一个确认包。否则,不进行响应。

    (4)确认阶段。即DHCP服务器确认所提供的IP地址阶段。

        当DHCP服务器收到客户端发送的DHCP Request请求信息后,便向DHCP客户端发送一个包含它所提供的IP地址和其他设置的DHCP Ack信息,告诉DHCP客户端可以使用它所提供的IP

DHCP报文格式

    DHCP报文总共8种类型,每种报文的格式相同,只是某些字段的取值不同

      DHCP报文及工作流程

      op:报文的操作类型。分为请求报文和响应报文,1为请求报文,2为响应报文。具体报文类型在option字段中标识

       htype:DHCP客户端的硬件地址类型。1表示ethernet地址

       hlen:DHCP客户端的硬件地址长度。Ethernet地址为6

       hops:DHCP报文经过的DHCP中继的数目。初始为0,报文每经过一个DHCP中继,该字段就会增加1

       xid:客户端发起一次请求时选择的随机数,用来标识一次地址请求过程。

      secs:DHCP客户端开始DHCP请求后所经过的时间。目前尚未使用,固定取0

      flags:DHCP服务器响应报文是采用单播还是广播方式发送。只使用第0比特位,0表示采用单播方式,1表示采用广播港式,其余比特保留不用。

      ciaddr:DHCP客户端的IP地址

      yiaddr:DHCP服务器分配给客户端的IP地址

      siaddr:DHCP客户端获取IP地址等信息的服务器IP地址

      giaddr:DHCP客户端发出请求报文后经过的第一个DHCP中继的IP地址。

      chaddr:DHCP客户端的硬件地址。

      sname:DHCP客户端获取IP地址等信息的服务器名称。

      file:DHCP服务器为DHCP客户端指定的启动配置文件名称及路径信息。

      option:可选变长选项字段,包含报文的类型、有效租期、DNS服务器的IP地址和WINS服务器的IP地址等配置信息。

DHCP报文类型

    DHCP Discover:DHCP客户端请求地址时,并不知道DHCP服务器的位置,因此DHCP客户端会再本地网络内以广播方式发送请求报文。这个报文成为Discover报文,目的是发现网络中得DHCP服务器。所有收到Discover报文的DHCP服务器都会发送回应报文,DHCP客户端据此可以知道网络中存在的DHCP服务器的位置。

    DHCP Offer:DHCP服务器在收到Disover报文后,就会在所配置的地址池中查找一个合适的IP地址,加上相应地租约期限和其他配置信息,如网关、DNS服务器等,构造一个Offer报文,发送给用户,告知用户服务器可以为其提供IP地址(只是告诉Client可以提供,是预分配,还需要Client通过arp检测该IP是否重复。)

    DHCP Request:DHCP客户端只接收第一个收到的DHCP Offer包信息。然后以广播方式回答一个DHCP Request请求信息,通告选择的服务器。DHCP客户端成功获取IP地址后,在地址使用租期过去1/2时,会向DHCP服务器发送单播Request报文延续租期,如果没有收到DHCP ACK报文,在租期过去3/4时,发送广播Request报文延续租期。

    DHCP ACK:DHCP服务器收到Request报文后,根据Request报文中携带的用户MAC来查找有没有相应地租期记录,如果有则发送ACK报文作为回应,通知用户可以使用分配的IP地址。

    DHCP NAK:如果DHCP服务器收到Request报文后,没有发现有相应地租约记录或者由于某些原因,无法正常分配IP地址,则发送NAK报文作为回应,通知用户无法分配合适的IP地址

    DHCP Release:当用户不再需要使用分配IP地址时,就会主动向DHCP服务器发送Release报文,告知服务器用户不再需要分配IP地址,DHCP服务器会释放被绑定的租约。

    DHCP Decline:DHCP客户端厚底啊DHCP服务器回应的ACK报文后,通过地址冲突检测发现服务器分配的地址冲突或由于其他原因导致不能使用,则发送Decline报文,通知服务器所分配的IP地址不可用。

    DHCP Inform:DHCP客户端如果需要从DHCP服务器获取更为详细的配置信息,则发送Inform报文向服务器请求,服务器收到该报文后,将根据租约进行查找,找到相应的配置信息后,发送ACK报文回应DHCP客户端

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
HCNA实验
HCNA实验配置基于接口地址池的DHCPDHCP动态主机配置协议DHCP协议采用客户端/服务器的方式工作与DHCP服务器建立连接的4个阶段发现阶段:DHCP客户端寻找DHCP服务器的阶段,客户端以广播的方式发送DHCP\_Disco
Stella981 Stella981
3年前
Linux系统——DHCP
DHCP定义DHCP服务是负责IP、掩码、网关地址、DNS地址等自动分发的软件服务DHCP的分配方式(1)自动分配:分配到一个IP地址后永久使用(2)手动分配:由DHCP服务器管理员专门指定IP地址(3)动态分配:使用完后释放该IP,供其他客户机使用DHCP的租约过程(客户机从DHCP服务器获取IP地址的过程)(1)
Wesley13 Wesley13
3年前
DHCP 服务
\TOC\DHCP服务了解DHCP服务的工作原理能够配置简单的DHCP服务器一、DHCP服务介绍DHCP(DynamicHostConfigurationProtocol,动态主机配置协议)是一个局域网的网络协议,UDP协议,67端口主要用于动态管理分配IP地址
Wesley13 Wesley13
3年前
DHCP服务配置之主服务器配置
1.DHCP简介:DHCP(DynamicHostConfigurationProtocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。2.DHCP服务器简介:DHCP服务器指的是由服务器控
Wesley13 Wesley13
3年前
DHCP协议分析
实验环境•操作机:WindowsXP实验目的1、熟悉DHCP协议的基本概念2、学会利用wireshark捕获含有DHCP协议的数据包3、在wireshark中分析DHCP协议提供IP地址的四个步骤实验工具owireshark实验步骤DHCP的工作原理DHCP的前身:BOOTP
Stella981 Stella981
3年前
Debian9.5系统DHCP服务器ISC DHCP软件配置说明
DHCP 全称DynamicHostconfigurationprotocol,动态主机配置协议。是一个局域网的网络协议,使用UDP协议工作,它可以为客户机自动分配IP地址、子网掩码以及缺省网关、DNS服务器的IP地址等TCP/IP参数, 简单来说,就是在DHCP服务器上有一个数据库, 存放着IP地址、网关、DNS等参数。 当客户端请求使用时, 服
Stella981 Stella981
3年前
Centos8 如何配置DHCP服务器
DHCP(动态主机配置协议)用于自动为PC和其他网络设备分配IP地址,以便它们进行通信。它使用UDP协议的67端口,对客户端使用UDP端口68。DHCP操作分为四个阶段:服务器发现,IP租约报价,IP租约请求和IP租约确认。这些阶段通常缩写为DORA,用于发现,提供,请求和确认。系统环境Centos(https://www.osc
Stella981 Stella981
3年前
DHCP snooping(DHCP监听)
DHCP监听可以防范利用DHCP发起的多种攻击行为,如DHCP中间人攻击,伪造多台设备耗尽地址池DHCP监听允许可信端口上的所有DHCP消息,但是却过滤非可信端口上的DHCP消息,DHCP监听还会在非可信端口上检查DHCP客户端消息ip dhcp snooping vlan 为一个或多个vlan启用DHCP监听ip dhcp snooping 
Wesley13 Wesley13
3年前
DHCP服务器
什么是DHCP服务器?  DHCP服务器(动态主机配置协议)指的是:由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。首先,DHCP服务器必须是一台安装有Windows2000Server/AdvancedServer系统的计算机;其次,担任DHCP服务器的计算机需要安装TCP/IP协议,并为其
Wesley13 Wesley13
3年前
DHCP服务搭建(1)
一、DHCP概述DHCP(DynamicHostConfigurationProtocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。DHCP协议采用客户端/服务器模型,主机地址的动态分