精华内容
下载资源
问答
  • dhcp协议
    2022-07-21 13:07:42

    一、DHCP定义

    DHCP(动态主机配置协议):是一个应用层的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。当我们将客户主机ip地址设置为动态获取方式时,DHCP服务器就会根据DHCP协议给客户端分配IP,使得客户机能够利用这个IP上网。

    DHCP前身是BOOTP,在Linux的网卡配置中也能看到显示的是BOOTP,DHCP引进一个bootp没有的概念:租约。bootp分配的地址是永久的而dhcp分配的地址是可以有期限的

    DHCP分为二个部分:一个服务器端,另一个是客户端(通常为网络中的PC、打印机等终端设备)。

    二、DHCP作用及特点

    1、DHCP可以自动分配IP、子网掩码、网关、DNS。

    2、DHCP客户端使用的端口是68,服务端端口是67,使用的UDP应用层的协议。

    3、DHCP一般不为服务器分配IP,因为它们要使用固定IP,所以DHCP一般只为办公环境的主机分配IP

    4、DHCP服务器和客户端需要在一个局域网内,在为客户端分配IP的时候需要进行多次广播,但DHCP也可以为其它网段内的主机分配IP,只要连接二个网段中间的路由器能转发DHCP配置请求即可,但这要求路由器配置中继功能。

    三、DHCP服务器IP分配三种方式

    1、自动分配方式,DHCP服务器为主机指定一个永久性的IP地址,一旦DHCP客户端第一次成功从DHCP服务器端租用到IP地址后,就可以永久性的使用该地址,

    2、动态分配方式,DHCP服务器给主机指定一个具有时间限制的IP地址,时间到期或主机明确表示放弃该地址时,该地址可以被其他主机使用。

    3、手工分配方式,客户端的IP地址是由网络管理员指定的,DHCP服务器只是将指定的IP地址告诉客户端主机

    第三种是最常见的使用形式,地址的有效使用时间段称为租约期,租约期满之前,客户端必须向服务器请求继续租用。服务器接受请求后才能继续使用,否则无条件放弃。

    四、DHCP中继

    默认情况下,路由器隔离官博包,不会将接收到的广播包从一个子网发送到另外一个子网。当DHCP服务器和客户端不在同一个子网时,充当客户端默认网关的路由器将广播包发送到DHCP所在的子网,这一功能就称为DHCP中继。

    DHCP中继代理,就是在DHCP服务器和客户端之间转发DHCP数据包。当DHCP客户端于服务器端不在同一个子网上,就必须有DHCP中继代理DHCP请求和应答消息,DHCP中继代理的数据的数据转发,与通常路由器转发不同的,通常的路由转发相对来说是透明传输的,设备一般不会修改IP包内容,而DHCP中继代理接收到DHCP消息后,重新生成一个DHCP消息,然后转发出去

    DHCP中继主机必须自己具有路由能力,且双方的数据报互传对方。如果不使用中继,也可以在每个网络中安装DHCP服务器,但这样的话,一来设备成本会增加,而且管理上面也比较分散,当然,如果在大型网络中,这样的均衡式架构还是可取的。

     五、DHCP服务工作流程

    第一步:搜索阶段

    当DHCP客户端第一次登陆网络的时候,计算机发现本机上没有任何IP地址设定,将以广播方式发送DHCP discover发现信息来寻找DHCP服务器,即向255.255.255.255发送特定的广播信号,网络上每一台安装了TCP/IP协议的主机都会接收这个广播信息,但只有DHCP服务器才会做出响应。(dhcp discover)

    第二步:提供阶段

    在网络中接收到DHCP discover发现信息的DHCP服务器就会做出相应,它从尚未分配的IP地址池中挑选一个分配给DHCP客户机,向DHCP客户机发送一个包含分配的IP地址和其它设置的DHCP offer提供信息,因为此时客户端还没有IP,所以返回也是以广播的方式返回的。(dhcp offer)

    第三步:选择阶段

    DHCP客户端接受到DHCP offer提供信息之后,选择第一个接收到的提供信息,然后以广播的方式回答一个DHCP request请求信息,该信息包含向它所选定的DHCP服务器请求IP地址的内容。(DHCP REQUEST

    第四步:确认阶段

    当DHCP服务器收到DHCP客户端回答的DHCP request请求信息之后,便向DHCP客户端发送一个包含它所提供的IP地址和其他设置的DHCP ack确认信息,确认租约,并指定租约时长。告诉DHCP客户端可以使用它提供的IP地址。然后,DHCP客户机便将其TCP/IP协议与网卡绑定,另外,除了DHCP客户机选中的DHCP服务器外,其他的DHCP服务器将收回曾经提供的IP地址。(DHCP ACK)

     以后DHCP客户端每次重新登录网络时,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCP ack确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时,则DHCP服务器给DHCP客户机回答一个DHCP nack否认信息。当原来的DHCP客户机收到此DHCP nack否认信息后,它就必须重新发送DHCP discover发现信息来请求新的IP地址。


    DHCP续租

    1、在使用租期过去50%时刻处, 客户端向服务器发送单播DHCP REQUEST报文续延租期。
    2、如果收到服务器的DHCP ACK报文,则租期相应向前延长,续租成功。如果没有收到DHCP ACK报文,则客户端继续使用这个IP地址。在使用租期过去**87.5%**时刻处,向服务器发送广播DHCP REQUEST报文续延租期。
    3、如果收到服务器的DHCP ACK报文,则租期相应向前延长,续租成功。如果没有收到DHCP ACK报文,则客户端继续使用这个IP地址。在使用租期到期时,客户端自动放弃使用这个IP地址,并开始新的DHCP过程。
     

    更多相关内容
  • DHCP协议是目前应用比较广泛的一个协议,详细的了解该协议对于问题的处理是有好处的。本文是对IP网络中的DHCP协议(动态主机配置协议)一个比较全面的培训材料,详细的介绍了DHCP协议的框架结构,报文格式和实现机理...
  • DHCP协议详解PDF文档

    2020-11-19 20:38:11
    DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下,DHCP作为Windows Server的一个服务组件不会被...
  • DHCP协议解析.doc

    2020-04-24 17:29:24
    DHCP,动态主机配置协议,前身是BOOTP协议,是一个局域网的网络协议,使用UDP协议工作,常用的2个端口:67(DHCP server),68(DHCP client)。DHCP通常被用于局域网环境,主要作用是集中的管理、分配IP地址,使client...
  • DHCP协议 详解,DHCP协议的功能,DHCP协议的工作原理

    万次阅读 多人点赞 2022-01-10 10:03:23
    DHCP协议分配方式,DHCP协议的工作流程,DHCP协议租约

    「作者主页」:士别三日wyx
    「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
    「专栏简介」:此文章已录入专栏《计算机网络零基础快速入门》


    计算机想要 「通信」必须要有一个IP地址,IP协议只是提供了IP,想要使用IP,你得自己配,而DHCP就是用来分配IP的协议。

    一、简介

    DHCP也叫动态主机配置协议,负责「管理」「分配」IP。

    安装了DHCP协议的主机被称为DHCP服务器,服务器控制一段IP地址范围,其他主机可以从DHCP服务器自动获取IP地址、默认网关、DNS服务器地址等信息。

    提示:DHCP协议是Windows Server 系统的一个服务组件,需要管理员手动安装和配置。

    二、分配方式

    管理员可以配置DHCP分配IP地址的方式:

    1)自动分配

    ​ DHCP服务器为第一次连接的客户端分配一个「永久」性的IP地址,客户端多次连接时,IP地址不会变化。

    2)手工分配

    ​ 管理员在服务器配置好客户端的IP地址,类似静态配置。

    3)动态分配

    ​ DHCP服务器给客户端分配一个「限时」的IP,IP到期后可以被其他客户端使用。

    三、工作原理

    1)需要IP的客户端,广播一条发现报文( DHCP Discover )。

    2)所有DHCP服务器都会收到发现报文,并向客户端发送一个响应报文( DHCP Offer ),响应报文中携带服务器自己的IP和可以分配给客户端的IP;

    3)客户端收到第一个响应后,会广播一个请求报文( DHCP Request ),并将响应报文中的服务器IP和可以分配的IP放到报文里。

    4)所有DHCP服务器都会收到请求报文,并判断报文里的服务器IP是不是自己:

    • ​ 如果不是自己,就收回刚才分配的IP;
    • ​ 如果是自己,就向客户端发送一个响应报文( DHCP ACK ),并在报文里提供IP地址的租期。

    5)客户端收到响应报文后,检查分配的IP是否可用:

    • 如果可用,就使用IP;
    • ​如果不可用,比如IP已经被别人使用,就向DHCP服务器发送拒绝报文,通知服务器禁用这个IP,让后重新申请IP(回到第一步)。

    6)客户端可以随时发送释放报文,释放IP地址,服务器收到释放报文后,会回收IP地址并重新分配。

    在这里插入图片描述


    DHCP的工作流程可以简化为4步:

    DHCP Discover:客户端 “谁是DHCP服务器,我需要IP地址!”
    DHCP Offer:DHCP服务器们 “我有IP地址!”,“我也有IP地址”,“……”
    DHCP Request:客户端 “我要使用这个DHCP服务器提供的IP地址。”
    DHCP ACK:被使用IP的服务器 “好的,你用吧,租期是8个小时。”,没被使用IP的服务器 “不用拉到(小声哔哔)”

    四、抓包分析

    重启网卡,抓取DHCP协议的数据包:

    在这里插入图片描述
    第一个包是关闭网卡时,客户端发送的释放IP的数据包。

    剩下的四个包,是开启网卡时,客户端获取IP地址的数据包,和前面提到的四个步骤一一对应。

    五、租约

    DHCP给分配的IP设置一个租期;

    当租期超过 50% 时,客户端会向服务器发送请求报文(DHCP Request)来续租IP地址:

    • 如果服务端收到,就延长租期;
    • ​ 如果没收到,则什么也不做。

    当租期超过 87.5% 时,客户端会广播请求报文来续租IP:

    • 如果服务端收到,就延长租期;
    • ​ 如果没收到,则什么也不做,直到租期结束,客户端向服务端发送释放报文,然后重新广播发现报文,申请IP地址。
    展开全文
  • DHCP协议.pptx

    2019-08-29 15:44:47
    dhcp relay 讲解的ppt。
  • DHCP协议说明书

    2018-05-02 16:40:18
    DHCP协议说明书DHCP协议说明书DHCP协议说明书DHCP协议说明书
  • DHCP协议运行的过程中引入心跳机制,从心跳包的设计、心跳机制的触停机制、“休克期”的设定方面做了尝试,在无可分配IP地址时,强制释放用户列表中因连接中断等原因造成的活跃度较低但租赁期限未到的客户端IP资源,...
  • DHCP协议抓包分析

    2015-11-03 15:53:21
    通过DHCP抓包详细分析DHCP协议的详尽内容
  • 一文了解什么是DHCP协议

    千次阅读 2022-05-23 17:13:23
    我们平时用电脑上网时,只要随手插入网线,就可以联网通信。我们知道主机通信需要IP地址,但是...DHCP协议的前身是BOOTP协议,DHCP协议引入了“租约”的概念 DHCP协议由两部分组成: 将特定于主机的配置参数从DHCP.

    我们平时用电脑上网时,只要随手插入网线,就可以联网通信。我们知道主机通信需要IP地址,但是我们却很少主动配置IP地址就可以上网,这是为什么?这是因为有一个叫DHCP服务器的东西给你的电脑自动配置了一个IP地址

    什么是DHCP

    什么叫DHCP?

    Dynamic Host Configuration Protocol,动态主机配置协议,为网络上的主机提供配置参数和网络地址

    DHCP协议的前身是BOOTP协议,DHCP协议引入了“租约”的概念

    DHCP协议由两部分组成:

    • 特定于主机的配置参数从DHCP服务器传送到主机的协议
    • 将网络地址分配给主机的机制

    这里的特定于主机,指的应该是满足这个主机的配置参数,这些配置参数在这个主机中能够起作用

    DHCP基于C/S模型,也就是客户端-服务器模式

    这里的“服务器”是指通过DHCP提供初始化参数的主机,而“客户端”是指从DHCP服务器请求初始化参数的主机

    所以DHCP的工作模式就是:指定的DHCP服务器主机分配网络地址并将配置参数传递给动态配置的客户端

    DHCP有三种IP地址分配机制:

    • 自动分配

    在“自动分配”中,DHCP为客户端分配一个永久IP地址

    • 动态分配

    在“动态分配”中,DHCP将IP地址分配给客户端一段有限的时间(或直到客户端明确放弃该地址)

    • 手动分配

    在“手动分配”中,客户端的IP地址由网络管理员分配,而DHCP仅用于将分配的地址传达给客户端

    细品下这句话,“而DHCP仅用于将分配的地址传达给客户端”,也就是说在手动分配中,虽然网络管理员手动配置了客户端的IP地址,但是DHCP还是会分配IP地址并传达给客户端,只是客户端并不使用DHCP服务器分配的地址而已

    原来手动配置IP地址也属于DHCP的分配机制,这是我没想到的

    在这三种分配机制中,“动态分配”是唯一一种自动分配重用的不再需要的地址给客户端的机制

    这里要如何理解?

    如果某客户端A选择了动态分配,那么当它停用分配的IP地址时,此IP地址将被回收,且可以分配给选择动态分配的客户端B使用

    因此,动态分配对于那些临时的客户端,或者IP地址资源比较有限需要共享的客户端来说,是一个很好的选择。对于那些永久连接到网络的新客户端,也可能是一个不错的选择

    在某些IP地址资源稀缺的网络中,当旧的客户端停用时回收它们很重要

    注意,DHCP不适用于配置路由器

    DHCP协议

    每一种协议的实现都是通过协议消息,那么DHCP消息格式如何呢

    DHCP消息格式

    DHCP消息的所有字段描述如下:

    字段大小描述
    op1字节消息类型:1=BOOTREQUEST,2=BOOTREPLY
    htype1字节硬件地址类型:对于以太网来说,该值为1
    hlen1字节硬件地址长度:对于以太网来说,该值为6
    hops1字节客户端设置为0,该字段是中继代理使用
    xid4字节事务ID,客户端选择的随机数,客户端和服务器使用它来关联客户端和服务器之间的消息和响应
    secs2字节由客户端填写,自客户开始地址获取或更新过程以来经过的秒数
    flags2字节Flags
    ciaddr4字节客户端IP地址;仅当客户端处于BOUND、RENEW或REBINDING状态并且可以响应ARP请求时才填写
    yiaddr4字节‘your’(客户端)IP地址
    siaddr4字节要在引导程序中使用的下一个服务器的IP地址;由服务器在DHCPOFFER、DHCPACK中返回
    giaddr4字节中继代理IP地址,用于通过中继代理启动
    chaddr16字节客户端硬件地址
    sname64字节可选的服务器主机名,以空字符结尾的字符串
    file128字节引导文件名,以空字符结尾的字符串;DHCPDISCOVER中的“通用”名称或null,DHCPOFFER中的完全限定目录路径名称
    options可变可选参数字段

    “flags”字段的格式如下:

    “flags”字段格式

    配置参数存储库

    这是DHCP提供的第一个服务,为客户端提供网络参数的持久存储。DHCP持久存储的模型是DHCP服务为每个客户端存储一个key-value条目,其中key是一些唯一标识符(例如,IP子网号和子网内的唯一标识符),value包含配置客户端的参数

    进一步的解释就是:

    DHCP服务器存储着许多客户端的配置参数,每个客户端的配置参数是以一个键-值对的形式存储,其中键是能代表这个客户端的唯一标识符,值是这个客户端的配置参数

    动态分配网络地址

    这是DHCP提供的第二个服务,为客户端分配临时或永久的IP地址。动态分配的基本机制是:客户端请求使用某个地址一段时间。分配机制(DHCP服务器的集合)保证不会在请求的时间内重新分配该地址,并在每次客户端请求地址时尝试返回相同的网络地址

    进一步的解释就是:

    客户端向DHCP服务器请求使用某个IP地址一段时间,DHCP服务器的分配机制收到该请求后,不会把该地址重新分配给其他客户端,且此客户端每次请求该地址,都能返回相同的地址

    这里的一段时间,就称为“租约”。而且客户端可以通过后续请求来延长租约

    当客户端不再需要该地址时,客户端可能会发出消息将地址释放回服务器

    客户可以通过请求无限租约来请求永久分配。即使在分配“永久”地址时,服务器也可能会选择提供冗长但非无限的租约,以允许检测客户端已退休的事实

    上面这句话要怎么理解?

    假如服务器提供无限租约,那么当客户端停用该地址时,服务器也不会检测客户端是否停用。因为提供无限租约就意味着服务器认为客户端会“永久”使用,虽然事实上客户端不大可能永远只用一个IP地址。所以服务器宁愿提供冗长但非无限的租约,这样服务器在租约结束时就可以检测客户端的状态,来确定客户端是否已退休,进而回收IP地址

    Client-Server协议

    上面提到,DHCP分配机制基于C/S模式,那么客户端和服务器在分配网络地址时的交互过程是什么样的呢?

    客户端-服务器交互—分配网络地址


    1. 客户端在其本地物理子网上广播DHCPDISCOVER消息。DHCPDISCOVER 消息可以包含建议网络地址和租用期限的值的选项。BOOTP中继代理可能会将消息传递到不在同一物理子网上的DHCP服务器

    客户端因为没有IP地址,需要向服务器发送请求IP地址的DHCP消息。但是向哪个DHCP服务器发送,它不知道,所以需要先通过发送DHCPDISCOVER消息发现DHCP服务器。然而由于客户端本身就没有IP地址,而且不知道服务器的IP地址,所以要如何让DHCPDISCOVER消息被服务器接收呢,就可以通过广播的方式,把DHCPDISCOVER消息发送给广播域内的所有主机。但是如果广播域内没有DHCP服务器呢,就需要向外寻找,这时候就可以让BOOTP中继代理把消息转发到其他广播域的DHCP服务器上。那么DHCPDISCOVER消息里应该包含的内容有哪些,肯定要有IP地址,还有这个IP地址要租用的时间

    1. 每个服务器都可以响应DHCPOFFER消息,该消息在’yiaddr’字段中包含可用的网络地址(以及DHCP选项中的其他配置参数)。当分配一个新地址时,服务器应该检查提供的网络地址是否已经被使用,例如,服务器可以使用ICMP Echo Request探测提供的地址。服务器将DHCPOFFER消息发送到客户端,如果需要,使用BOOTP中继代理

    所有接收到DHCPDISCOVER消息的服务器,都会发送DHCPOFFER消息给客户端来响应。DHCPOFFER消息里的‘yiaddr’字段就是分配给客户端的IP地址,当然DHCPOFFER消息里还会携带一些其他配置参数。但是,DHCP服务器在分配这个IP地址前,需要确认这个地址是否被其他主机使用,可以使用ICMP Echo Request消息里探测。如果是广播域外的服务器,它的DHCPOFFER消息需要经过BOOTP中继代理转发

    1. 客户端收到服务器发送的DHCPOFFER消息后,根据DHCPOFFER消息中提供的配置参数选择一台服务器来请求配置参数。客户端广播一个DHCPREQUEST消息,该消息必须包含“服务器标识符”选项以指示它选择了哪个服务器,并且可能包含指定所需配置值的其他选项。'requested IP address’选项必须设置为来自服务器的DHCPOFFER消息中的’yiaddr’值。如果客户端没有收到DHCPOFFER消息,则客户端超时并重新传输DHCPDISCOVER消息

    DHCPOFFER消息提供的网络地址和配置参数,只是供客户端参考和选择,不是让客户端直接使用。客户端根据多个服务器提供的信息,选择其中的一个服务器,发送DHCPREQUEST消息来请求网络地址和配置参数。服务器提供了一个IP地址,客户端觉得可以,就请求这个IP地址,所以客户端的DHCPREQUEST消息里的‘requested IP address’选项必须是DHCPOFFER中的‘yiaddr’值。客户端是通过广播发送的DHCPREQUEST消息,这样可以确保它选择的服务器接收到,但是其他未被选择的服务器也能接收到,必须保证只有客户端选择的服务器接收并响应DHCPREQUEST消息,怎么办呢?就可以在这条消息里设置一个“服务器标识符”选项,这个选项就是客户端选择的服务器的标识符

    1. 服务器接收到广播DHCPREQUEST消息后,那些未被选择的服务器把此消息当成拒绝的通知,被选择的服务器用包含配置参数的DHCPACK消息进行响应。“客户端标识符”或“chaddr”和分配的网络地址的组合构成了客户端租约的唯一标识符,客户端和服务器都使用它来标识任何DHCP消息中引用的租约。DHCPACK消息中的任何配置参数都不应与DHCPOFFER消息中的配置参数冲突。服务器此时不应检查提供的网络地址。DHCPACK消息中的’yiaddr’字段填充了所选的网络地址。如果选择的服务器不能满足DHCPREQUEST消息(例如,请求的网络地址已经分配),服务器应该用DHCPNAK消息响应。服务器可以选择将在DHCPOFFER消息中提供给客户端的地址标记为不可用。如果服务器没有收到来自客户端的DHCPREQUEST消息,服务器应该将在DHCPOFFER消息中提供给客户端的地址标记为可用

    只有被选择的服务器进行响应,通过发送包含配置参数的DHCPAKC消息。客户端和服务器都使用“客户端标识符”或“chaddr”和分配的IP地址的组合作为客户端租约的唯一标识。DHCPOFFER消息中的配置参数表明服务器可以提供这些参数,DHCPACK消息中的参数是正式提供给客户端的,这两条消息里的配置参数要相同。如果被选择的服务器发现客户端请求的地址已经被用了,这时候就需要给客户端回复DHCPAK消息。最后两句话的意思是当服务器发送DHCPOFFER时,表明这里面的地址可以提供给客户端使用,此时服务器可以把这个地址设置为不可用,这样其他客户端就没法使用了。但是如果迟迟没收到此客户端的请求消息,就要把这个地址释放给其他客户端,所以要设置为可用

    这里还有一句话要注意,为什么在服务器提供IP地址的这一步,服务器不再检查网络地址了呢?

    因为前面已经检查过了

    1. 客户端收到带有配置参数的DHCPACK消息,应该对参数进行最终检查(例如,网络地址的ARP),并注意DHCPACK消息中指定的租约期限。至此,客户端就配置好了。如果客户端检测到该地址已被使用(例如,通过使用ARP),客户端必须向服务器发送DHCPDECLINE消息并重新启动配置过程。客户端应该在重新启动配置过程之前至少等待十秒钟,以避免在循环的情况下出现过多的网络流量。如果客户端收到DHCPNAK消息,则客户端重新启动配置过程。如果客户端既没有收到DHCPACK也没有收到DHCPNAK消息,则客户端超时并重新发送 DHCPREQUEST消息。如果客户端在重传后既没有收到DHCPACK也没有收到DHCPNAK消息,则客户端恢复到INIT状态并重新开始初始化过程。客户端应该通知用户初始化过程失败并且正在重新启动

    客户端在收到DHCPACK消息会一系列检查,并最终配置成功。在配置IP地址之前需要主动发送免费ARP检测该地址是否已经被使用。如果使用,需要发送DHCPDECLINE消息并重新启动配置过程等等,这里讲了各种客户端应该处理的情况

    1. 客户端可以选择通过向服务器发送DHCPRELEASE消息来放弃其对网络地址的租约。客户端使用其“客户端标识符”或“chaddr”和DHCPRELEASE消息中的网络地址来标识要释放的租约。如果客户端在获得租约时使用了“客户端标识符”,它必须在DHCPRELEASE消息中使用相同的“客户端标识符”

    DHCPRELEASE消息是客户端用来放弃租约的消息,服务器通过租约的唯一标识符进行回收操作

    所有的DHCP消息如下:

    - DHCPDISCOVER

    客户端广播以定位可用服务器

    - DHCPOFFER

    服务器对客户端的DHCPDISCOVER响应并提供配置参数

    - DHCPREQUEST

    • 客户端向一个服务器请求参数并隐式拒绝其他服务器
    • 客户端确认先前分配的地址的正确性,例如系统重启
    • 客户端延长特定网络地址的租约

    - DHCPACK

    服务器发送给客户端配置参数,包括提交的网络地址

    - DHCPNAK

    服务器告知客户端的网络地址概念不正确(例如,客户端已移动到新子网)或客户端的租约已过期

    - DHCPDECLINE

    客户端告知服务器网络地址已在使用中

    - DHCPRELEASE

    客户端告诉服务器客户端放弃网络地址并取消剩余租约

    - DHCPINFORM

    客户端告知服务器,只询问本地配置参数;客户端已经有外部配置的网络地址

    总结:

    客户端先是定位所有可用的服务器(DHCPDISCOVER);服务器收到定位后把可用的网络地址和配置参数提供给客户端,以便客户端选择(DHCPOFFER);客户端选择其中一个服务器并拒绝其他服务器(DHCPREQUEST);被选择的服务器分配网络地址和配置参数给客户端(DHCPACK);客户端收到后做一系列的检查,没有问题后,配置完成

    客户端-服务器交互—重用之前分配的网络地址

    如果客户端记住并希望重用以前分配的网络地址,那么它们的交互过程如下:

    这里大概描述下流程:

    1. 客户端广播DHCPREQUEST消息

    2. 服务器发送DHCPACK消息响应。如果客户端的请求无效,比如客户端移到新的子网中,那么服务器用DHCPNAK消息响应

    3. 客户端收到DHCPACK消息检查无误后,配置完成


    展开全文
  • DHCP协议PPT课件

    2022-04-11 22:30:52
    DHCP协议DHCP协议课件,DHCP协议PPT
  • DHCP协议

    2020-07-12 11:24:02
    1 DHCP简介   DHCP全称Dynamic Host Configuration Protocol(动态主机配置协议),... DHCP协议起源于早期的BOOTP协议,在早期版本的Wireshark抓包工具中,抓取DHCP报文使用的过滤字段为BOOTP协议 1.1 BOOTP协议 &n

    1 DHCP简介

      DHCP全称Dynamic Host Configuration Protocol(动态主机配置协议),是网络终端设备获取地址的两种方式之一,另外一种是静态配置。
      除了提供IP地址信息以外,可以通过Option字段,为DHCP Client分配其它信息,如:子网掩码、网关地址、DNS服务器
      DHCP协议起源于早期的BOOTP协议,在早期版本的Wireshark抓包工具中,抓取DHCP报文使用的过滤字段为BOOTP协议

    1.1 BOOTP协议

     BOOTP协议是一种引导启动操作系统的协议,当电脑启动时,硬盘上没有操作系统,可以通过BOOTP协议在BOOT阶段(PC上交BIOS)从服务器上获取操作系统。过程如下:
     a 客户端发送一个请求,请求获取IP地址、启动文件存放地址、启动文件名称。
      b 服务器回复一个报文,分配其IP地址、启动文件存放地址、启动文件名称
      c 客户端获取到文件信息以后,使用tftp协议,下载文件,然后启动文件。
     原始的BOOTM协议的报文与DHCP的报文相比要简单,只有两种交互报文,一个请求、一个回复,报文中不存在option字段。RFC951中定义各字段的作用
     报文格式如下
    在这里插入图片描述

    2.1 从BOOTP协议到DHCP协议

       DHCP定义了8种报文类型,由RFC1533定义了类型。其中,客户端支持的报文类型:DISCOVER 、REQUEST、DECLINE、RELEASE、INFORM;服务器端支持的报文类型: OFFER、 ACK、NAK

      如果客户端通过别的手段获得了网络地址,它可以使用DHCPINFORM请求获得其它配置参数,服务器接收到DHCPINFORM包,并建立一个DHCPACK消息,在其中包括一些客户的配置参数,只是不包括分配网络地址,检查现有的绑定,在信息中不填充’yiaddr’字段或租用时间参数。服务器取得DHCPINFORM包内的’ciaddr’地址,而返回DHCPACK包。

      区分BOOTP协议和DHCP协议的标准是有误Option(供应商扩展字段)

    2 DHCP报文协议

    2.1 DHCP协议的报文格式

    在这里插入图片描述
      DHCP服务器分配给客户端的IP地址存放于yiaddr字段中,硬件地址字段存放的是客户端mac地址
     dhcp rely发送的报文在Giaddr字段会有信息,表示DHCP Relay的IP地址
     服务器通Option(选项)字段提供其它信息给客户端

    2.2 Option

      常见Option字段的定义如下:
    在这里插入图片描述
      比较重要的Option82有一下功能:
      1 Relay在报文中添加DHCP Client报文的接口信息
      2 Relay在报文中添加DHCP Client报文的MAC地址信息

    2.2 流程

      DHCP获取地址的流程如下:
    在这里插入图片描述
      如果DHCP Server配置了多个地址池。DHCP Server应该分配哪个网段的地址给个客户端?
      1、如果是Client直接发出的报文,根据报文接收的接口的IP地址来决定
      2、如果是Relayt报文发出的,根据relay agent ip addr来决定
      DHCP的报文如下(以offer报文为例):
    在这里插入图片描述

    2.3 状态机

    在这里插入图片描述
       免费ARP的作用是检测局域网中是否有主机的地址与拿到的地址冲突,如果冲突,这个DHCP Server的地址是不能使用的。
     Windows在发送续约的Request的时候,会通过ARP检测DHCP服务器是否正常,如果异常,则不会在T1时间发送Request报文,会在T2时间发送Request报文,如果发送多次以后,没有回复,则会回到Init状态。

    2.3 DHCP特殊报文

       除了基本的DISCOVERY、OFFER、REQUEST、ACK四个基本的报文以外,还有其它几种少见的报文,在出现故障时,可以通过对异常报文的分析来定位问题。

    2.3.1 NAK(拒绝请求)

        NAK表示不能分配Request报文中的地址(option 50)。NAK报文由服务器发出。
     有两种情况可以看到NAK报文,都与地址分配失败有关:
     a Windows系统的电脑会关机时一般会保存获取到的IP地址,下次开机时,直接发送Request报文,请求关机前的地址,省略了DIscovey。如果此时服务器已经删除了该Client的租约信息或者DHCP Server的地址池配置发生变化,就会发送NACK请求,意味着地址分配失败。
     b DHCP Server的地址池配置发生变化,客户端续租时发送Request了报文。

        NAK报文如下:
    在这里插入图片描述

    2.3.2 DECLINE(拒绝IP)

        DECLINE报文由客户端发出,表示拒绝服务器分配的IP地址。DECLINE报文位于ACK报文的后面
     以下情况会导致client发送DECLINE报文:
     Windows电脑收到ACK报文以后,会发送免费ARP报文,来检测该IP是否被其它设备占用,如果被占用,则发送DECLINE。

     报文如下:
    在这里插入图片描述
    在这里插入图片描述

    2.3.3 Release(释放IP地址)

        Release表示客户端通知服务器,地址使用结束,不再使用该IP地址
     以下情况会导致client发送Release报文:
     将Windows网卡的动态IP改为静态IP,或者ipconfig /release命令,会触发Release。
     报文如下:
    在这里插入图片描述

    2.3 DHCP中的单播报文与广播报文

        DHCP协议交互时,会同时存在单播报文和广播报文。
      a IP地址获取成功前,Client与Server发送的都是广播报文
      b IP地址获取成功后,Client与Server发送的都是单播报文,续租、Release是单播报文

    2.4 续租

        发送Request报文,更新(renew)租约时间。

    2.5 重新绑定

        重新绑定时,会发送Discovery报文,重新获取IP地址
     当续租失败,租约到期以后,开始重新绑定
        重新绑定流程如下图所示。

    在这里插入图片描述

    展开全文
  • DHCP协议原理

    2013-08-05 21:27:46
    DHCP协议的详细解说,内容通俗易懂,值得大家收藏.
  • 一、DHCP 协议 概念、 二、DHCP 协议 特点、 三、DHCP 协议 流程、
  • DHCP协议介绍

    2021-05-26 15:05:48
    DHCP协议提供了即插即用联网的功能,使得我们的设备在不同的地方时(例如:家、公司、户外等),不需要自行地配置IP地址就可以进行网络的连接,只要用了DHCP协议,就可以在不同的地方使用不同的网络 如下图中,如果...
  • DHCP协议(或许是最详细的版本)

    千次阅读 2021-08-26 14:39:30
    前些天做了很多实验,我的小伙伴们后台私信纷纷都表示烦了想听一些干货,所以今天讲一下一个重要的协议,就是DHCP协议。 目录 DHCP DHCP作用 DHCP的好处: DHCP原理: DHCP租期: DHCP DHCP(动态主机配置...
  • dhcp协议详解

    千次阅读 2021-03-17 14:50:03
    DHCP,动态主机配置协议,前身是BOOTP协议,是一个局域网的网络协议,使用UDP协议工作,常用的2个端口:67(DHCP server),68(DHCP client)。DHCP通常被用于局域网环境,主要作用是集中的管理、分配IP地址,使client...
  • DHCP协议流程简析

    2017-10-29 21:18:49
    DHCP流程简单介绍。包含DHCP作用、DHCP报文格式、DHCP流程、DHCP抓包分析。
  • DHCP协议以及其配置

    2021-12-07 20:58:30
    DHCP协议以及其配置一、DHCP协议1.用途2.好处3.DHCP应用模式4.DHCP的IP地址自动获取原理二、DHCP配置接口模式全局模式三、中继模式中继工作原理中继配置 一、DHCP协议 DHCP(Dynamic Host Configuration Protocol,...
  • DHCP协议浅析

    2020-08-24 13:46:13
    DHCP协议采用CLIENT-SERVER方式实现,而且DHCP协议是基于UDP层之上的应用,DHCPCLIENT将采用端口号68,DHCPSERVER采用端口号67进行交互。 DHCP的三种分配IP机制: 自动分配方式:DHCP服务器为主机指定一个永久性的...
  • DHCP协议简析

    千次阅读 2021-08-10 03:34:37
    不知道看官大人是否有过这样的疑惑?一台计算机,插上网线是不是就可以直接上网了呢?其实没有这么简单,需要配置本机IP地址...于是,就有了今天的主角,基于UDP的DHCP(Dynamic Host Configuration Protcol),动态主...
  • 谈谈DHCP协议

    千次阅读 2021-01-12 13:04:42
    01、DHCP协议简介 02、DHCP工作原理 03、Wireshark抓包分析 04、DHCP缺点 01、DHCP协议简介 DHCP(DynamicHost ConfigurationProtocol),动态主机配置协议,是一个应用层协议,具体可以参考《TCP/IP四层模型》...
  • 很好的PPT,图文简洁明了。
  • DHCP 协议详解

    万次阅读 多人点赞 2020-01-08 13:00:31
    1 DHCP协议 1.1 DHCP协议理解 定义: DHCP:Dynamic Host Configuration Protocol,动态主机配置协议,是一个用于局域网的网络协议,位于OSI模型的应用层,使用UDP协议工作,主要有两个用途: 用于内部网或网络...
  • DHCP协议详解

    万次阅读 多人点赞 2019-03-09 21:48:07
    文章目录什么是DHCPDHCP协议DHCP报文种类DHCP报文格式DHCP工作流程IP地址分配方式租约表工作流程服务器处理流程 什么是DHCP DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),前身是BOOTP协议,是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 88,673
精华内容 35,469
关键字:

dhcp协议

友情链接: AT080TN64-Innolux.zip