DHCP协议简介「建议收藏」

DHCP协议简介「建议收藏」DHCP协议简介

大家好,又见面了,我是你们的朋友全栈君。

  • DHCP协议简介

   DHCP协议是client端申请IP,server端分配IP的解决方案。DHCP协议兼容BOOTP协议,并具有动态分配IP的功能,也就是说IP地址被server分配给client端后,当client端主动释放IP,或IP租期到期后,server可以回收再分配

  • DHCP三种分配方式

    A  自动分配。


    B  动态分配。

    C  手动分配。

注释:
   自动分配和手动分配给client端的都是永久的IP,动态分配是可回收的。

  • DHCP的8种报文

    A  DHCPDISCOVER   
(Client开始要IP,发的第一个报文)

 
    B  DHCPOFFER            (server收到DHCPDISCOVER报文,回复报文,表示可以提供IP)

    C  DHCPREQUEST       

Client收到DHCPOFFER后的回应报文)

    D  DHCPACK
 
             
(Server收到DHCPREQUEST后,同意就发DHCPACK)
    
    E  DHCPNCK              
(Server收到DHCPREQUEST后,不同意就发DHCPNCK)

    F  DHCPDECLINE
      
(Client要到IP后,若发现IP冲突,就向server发送DHCPDECLINE报文)

    G  DHCPRELEASE
      
(Client主动释放IP时会发送DHCPRELEASE报文)

    H 
   
DHCPINFORM     
(Client向server发送,或取一些配置信息)

  • DHCP分配IP

   (一) 
Client处于初始化状态,client没有存储以前IP时,要IP过程如下图:


DHCP协议简介「建议收藏」

注释:
    1、Client端首先把需要的参数写入DHCPDISCOVER报文中,以广播的形式发送给网络里的所有DHCP server。 2、server会根据自己实际情况,若能够提供IP,就会把自己的IP和xian提供给Client的IP写入DHCPOFFER报文中,通过广播的方式发送出去。 3、Client可能会收到很多DHCPOFFER,Client一般会选择最早收到的DHCPOFFER报文,并把自己想要的IP和serverIP写入DHCPREQUEST中,以广播的方式发出。 4、网络上的所有server都会收到DHCPREQUEST,Server 把DHCPREQUEST中的serverIP和自己的IP作比较,若不同,就不做处理;若相同,就发送DHCPACK或DHCPNCK.    Client收到DHCPACK,client需要IP是否冲突检查,不冲突则成功;若冲突,client会向server发送DHCPDECLINE,server会把该IP标记为不可用。

         
(二)
Client要到过IP,再重启,要IP过程如下图:

DHCP协议简介「建议收藏」

注释:
     1Client首先把Client以前的IP和IP对应server的IP写入DHCPREQUEST报文中,以广播的形式发送给网络里的所有DHCP server。 2网络上所有server都会收到DHCPREQUEST,Server 把DHCPREQUEST中的serverIP和自己的IP作比较,若不同,就不做处理;若相同,就发送DHCPACK或DHCPNCK.   Client收到DHCPACK,client需要IP是否冲突检查,不冲突则成功;若冲突,client会向server发送DHCPDECLINE,server会把该IP标记为不可用。


     
(三)
Client进行IP续租过程如下图:


DHCP协议简介「建议收藏」

注释:
   1、在使用租期到50%后,clientserver单播发送DHCPREQUEST,延续租期。 2server若同意,则发送DHCPACKclient开始一个新的租用周期;若不同意,则发送DHCPNAK,继续使用目前IP。 3client单播请求没有被同意,在租期过去87.5%时刻处,clientserver广播发送DHCPREQUEST4server若同意,则发送DHCPACKclient开始一个新的租用周期;若不同意,则发送DHCPNAK租期到期后,client放弃这个IP,重要IP 


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142229.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • myeclipse中,项目上有个叉报错,文件没有错误[通俗易懂]

    myeclipse中,项目上有个叉报错,文件没有错误

    2022年1月19日
    44
  • 基于php教师档案管理系统毕业设计

    基于php教师档案管理系统毕业设计获取项目源文件,联系Q:1415736481,可指导毕设,课设随着经济的发展和社会的进步,高校的现代化管理逐渐被人们所重视,利用计算机对高校的管理在各个领域中都有广阔的发展空间和前景。高校教师档案管理系统的设计与实现对高等院校的决策者和管理者来说至关重要,对教育系统来说更是不可缺少的。本系统采用PHP语言和MySQL数据库等技术,基于B/S模式,根据管理员、教务处管理员、教师三种不同的用户权限…

    2025年6月27日
    0
  • 教育邮箱申请pycharm_python注册用户名和密码登录

    教育邮箱申请pycharm_python注册用户名和密码登录学生注册教育邮箱的方法不知道如何注册教育邮箱的看我上篇文。注册之后都会给登录的网址和初始密码。接下来进入这个网址JetBrains学生注册点击learnmore后,一直下拉点击applynow他会有一个信息表的填写进行申请后会发两个邮件,如下图,点击联接进行操作即可,网上说这个申请比较慢,我觉得还可以,可能是因为早上的关系,出现这个界面就说明注册成功了直接安装好pycharm的专业版在登录的时候直接填写我们的账号和密码就成功了,会显示使用终止…

    2022年8月28日
    0
  • jdbc的增删改查_使用jdbc完成数据的增删改查

    jdbc的增删改查_使用jdbc完成数据的增删改查JBDC数据的持久化:把数据保存到磁盘上。JDBC是java访问数据库的基石,JDO,Hibernate,Mybatis等都是基于JDBCJDBC是一个独立于特定数据库的管理系统,通用的SQL数据库存取和操作的公共接口配置文件:jdbc.propertiesuser=rootpassword=abc123url=jdbc:mysql://localhost:3306/testdriverClass=com.mysql.jdbc.Driver获取Connectionpublic s

    2022年8月8日
    0
  • A*算法之八数码问题 python解法

    A*算法之八数码问题python解法文章目录A*算法之八数码问题python解法问题描述A*算法与八数码问题状态空间的定义各种操作的定义启发式函数的定义人工智能课程中学习了A*算法,在耗费几小时完成了八数码问题和野人传教士问题之后,决定写此文章来记录一下,避免忘记问题描述在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字。棋盘中留有一个空格,空格用0来表示。空格周围的棋子可以移到空格中。要求解的问题是:给出一种初始布局(初始状态)和目标布局(为了使题目简单,设目标状态为12380

    2022年4月6日
    61
  • C语言链表详解_c语言中链表的使用

    C语言链表详解_c语言中链表的使用链表是一种常见的基础数据结构,结构体指针在这里得到了充分的利用。链表可以动态的进行存储分配,也就是说,链表是一个功能极为强大的数组,他可以在节点中定义多种数据类型,还可以根据需要随意增添,删除,插入节点。链表都有一个头指针,一般以head来表示,存放的是一个地址。链表中的节点分为两类,头结点和一般节点,头结点是没有数据域的。链表中每个节点都分为两部分,一个数据域,一个是指针域。说到这里你应该就明白…

    2022年10月21日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号