首页 > 其他分享 >动态主机配置协议DHCP

动态主机配置协议DHCP

时间:2023-07-17 19:33:47浏览次数:34  
标签:服务器发送 主机 报文 客户 服务器 租约 DHCP 动态

动态主机配置协议DHCP

DHCP(Dynamic Host Configuration Protocol)动态主机配置协议,自动分配IP地址。

DHCP的过程分成四个阶段:DHCP Discover(发现)、DHCP Offer(提供)、DHCP Request(请求)、DHCP ACK(确认)。

四个阶段:

DHCP服务器被动打开UDP端口67,等待接收客户端的报文。

  1. 客户从UDP端口68发送DHCP Discover报文,报文中包括客户的MAC地址(物理地址)和计算机名等。
  2. 服务器从地址池/作用域中取出一个IP地址响应客户,并向客户发送DHCP Offer报文,报文中包括IP地址等配置信息(但无子网掩码、网关等参数)。
  3. 客户一般选择向响应最快的服务器发送DHCP Request报文。
  4. 被选择的服务器向客户发送DHCP ACK报文,报文中包括租约时间、子网掩码、网关等参数。客户进入已绑定状态。

特殊情况:

1、当被选择服务器发现客户没有相应的租约记录,或由于某些原因(已经分配给其他设备、地址池耗尽或配置错误等)无法分配地址给客户,服务器会发送DHCP NAK报文给客户,客户重新发送Discover报文。

2、当客户不需要分配的IP地址时,会主动向服务器发送DHCP Release报文。

3、当客户收到服务器发送的ACK报文后,发现其他原因(分配的地址冲突等)导致IP不可用,客户会向服务器发送DHCP Decline报文,以获得新的IP地址。

4、客户想获得更为详细的配置信息,会向服务器发送DHCP Inform报文。

5、若无任何服务器响应客户发送的Discover报文,客户机会使用使用APIPA(Automatic Private IP Addressing)地址。用于临时内网通信。

APIPA:一种自动分配的私有IP地址(通常为169.254.x.x/16)

后期:

当租约过了一半时间(50%)时,客户会向服务器发送DHCP Request报文,若服务器同意,则发回DHCP ACK报文,并更新租约,若服务器不同意,客户须立即停用原IP,并重新进行DHCP的四个阶段。

若服务器未响应该报文,当租约期过了87.5%时,DHCP会再次向服务器发送DHCP Request报文,重复上述后期步骤,当租约到期时,服务器还未响应,客户再重新进行DHCP的四个阶段。

更新租约 假设租约时间原本从1:00至2:00,在1:30更新租约时,租约时间变成1:30至2:30。

标签:服务器发送,主机,报文,客户,服务器,租约,DHCP,动态
From: https://www.cnblogs.com/xhzccy/p/17560980.html

相关文章

  • iOS tableView中嵌套collectionView如何动态计算高度
    tableview中嵌套collectionview的使用场景经常见,一般都是collectionview高度写死,那么如何在tableview高度自适应的情况下,collectionview的高度还能动态算准,可以通过以下方式,在cell中重写-(CGSize)systemLayoutSizeFittingSize:(CGSize)targetSizewithHorizontalFittingPriorit......
  • linuxIP地址和主机名,再虚拟机中配置linux固定IP
    1.IP地址IPV4版本地址格式:a.b.c.d,其中abcd是0-255的数字可以通过ifconfig查看本机的IP地址2.特殊IP地址127.0.0.1,表示本机0.0.0.0,可以指代本机,也可以在端口绑定中用来确定绑定关系,还可以在IP地址限制中表示所有的IP允许所有IP访问3.主机名每一台电脑除......
  • phpcms本地网站迁移至虚拟主机的教程_PHPCms教程
    本人已成功将2008调试的网站迁移至虚拟主机中,现将有关设置和应注意的地方拿来与大家一道分享。由于是一次性成功,迁移后没有碰到任何问题(至少现在没有),因此以下提到的不一定全面,请大家谅解。[首先要在虚拟主机中根据第一、二条全新安装phpcms2008]第一,安装环境:本机电脑到虚拟主......
  • FPGA数码管动态显示
    FPGA驱动6位数码管,主控芯片EP4CE6F17C8N。所使用实验板的数码管原理图如图所示,所使用的数码管3661BS是6位共阳极的数码管。使用PNP三极管驱动数码管,当三极管基极SMG_W0引脚输入低电平时,PNP三极管导通。通过控制SMG_W0~W5的电平来控制三极管的导通,从而控制位选信号。共阳极数码管,......
  • 动态配置Redis参数
    在redis的使用过程中,有时候需要急需修改redis的配置,比如在业务运行的情况下,内存不够怎么办,这时要么赶紧删除无用的内存,要么扩展内存。如果有无用的内容可删除那么所有问题都已经解决,如果内容都是重要的,那只能选择扩展内存。CONFIGSET具体含义1CONFIGSETparametervalue2......
  • 机制的外卖员问题动态规划
    publicstaticvoidmain(String[]args){//517Scannerscanner=newScanner(System.in);while(scanner.hasNext()){intcurrent=scanner.nextInt();inttarget=scanner.nextInt();int[]dp=ne......
  • 【动态规划】牛客2023年儿童节比赛 G
    题目链接:https://ac.nowcoder.com/acm/contest/58604/G来源:牛客网设\(f[i]\)表示以\(s[i]\)为结尾的合法序列个数如果\(s[i]\ne1\),那么我们可以在从\(f[i-1]\)到\(f[1]\)所包含的序列后面添加\(s[i]\)构成答案,也可以单独以\(s[i]\)为新的合法序列(也就是后面......
  • 7.16 动态规划
    线性DP[USACO20DEC]SleepingCowsP先不考虑极大,将奶牛和牛棚放在一起排序并离散化,设\(F_{i,j}\)为处理到第i个元素(奶牛/牛棚),有j头奶牛还没有进入牛棚的方案数。对于牛棚:\[F_{i,j}\rightarrowF_{i+1,j}\]\[j*F_{i,j}\rightarrowF_{i+1,j-1}\]对于奶牛:\[F_{i,j}......
  • 6194: jump and jump 深搜/广搜/动态规划
    描述  寒假在家里无聊极了,小w看到地上的瓷砖,想出了一个游戏。这个游戏是这样子的,一共有n个格子,刚开始在起点的时候可以跳到第1个到第k个格子中的一个上面,之后在每个格子上只能向前跳相对应的长度。请问至少需要多少步可以恰好跳到最后一个格子呢?输入  第一行输入两......
  • .NET Native AOT的静态库与动态库
    .NET不仅可以使用C静态库与动态库,也可以将.NET实现的函数导出为C静态库与动态库。在没有NativeAot之前,.NET只能通过P/Invoke享受C/C++生态,而在NativeAot之后,不仅可以享受这些生态,还可以开发SDK供其他语言调用。.NETNativeAOT的NativeLib参数用于指定本机库的类型。在.NET7......