精华内容
下载资源
问答
  • DHCP工作原理
    千次阅读
    2022-04-13 23:44:29

    DHCP采用udp作为传输协议,server端采用67端口接受客户端的请求报文,client端采用68号端口接收server的应答报文。

    1、client发送discover广播报文,所有的dhcp server会进行响应并回offer包

    2、所有的dhcp server都会响应,发送dhcp offer报文,并将client端能使用的ip地址范围一并给客户端

    3、dhcp client只能处理一个dhcp offer报文,一般是优先原则,使用最先到达client端的offer包,然后回应一个dhcp request报文,并在报文中加入自己所选中的dhcp server服务器的ip地址,和自己所选中将要使用的ip地址,自己的mac地址等信息

    4、dhcp server收到client的request报文后先进行一个判断,检查报文中client所选中的服务器ip地址,需要的IP地址网段是不是自己的,如果不是则清除自己的分配记录,如果是则发送一个ACK(acknowledge)报文,包含使用租期等信息

    注:当client收到ACK报文后,会判断ip是否能使用,如果已经被占用,则会重新发送discover报文,通知dhcp服务器该ip地址被使用,重新开始上述过程。

    一个完整的dhcp获取地址过程,到这里就结束,之后等到租期到50%时,client端会直接发送request请求包,向dhcp server请求续约,如果得到server端回应的ack报文,则续约成功,如果没有得到回应则继续使用该ip地址,直到租期的87.5%时,client又会发送request广播包向服务器请求续约,如果还是没得到回应,则到租约时间到期,则会发送dhcp release报文释放自身ip地址。开始一个新的申请ip地址过程。

    * 客户端第三次的request是广播包主要是为了通知其他未被选择的服务器,释放自己在offer报文中预分配出去的ip地址。

     

     

    更多相关内容
  • DHCP工作原理知多少?

    2021-08-02 04:59:43
    所以,这里我们来介绍一下DHCP工作原理的内容,通过DHCP的相关使用,可以帮助我们大家来完成IP的管理。下面就看看具体内容吧。DHCP工作原理DHCP是Dynamic Host Configuration Protocol之缩写,它的前身是BOOTP。是...

    网络庞大的IP结构,在管理方面就显得比较繁琐了。所以,这里我们来介绍一下DHCP工作原理的内容,通过DHCP的相关使用,可以帮助我们大家来完成IP的管理。下面就看看具体内容吧。

    DHCP工作原理

    DHCP是Dynamic Host Configuration Protocol之缩写,它的前身是BOOTP。是基于C/S模式的,它提供了一种动态指定IP地址和配置参数的机制。这主要用于大型网络环境和配置比较困难的地方。DHCP服务器自动为客户机指定IP地址,指定的配置参数有些和IP协议并不相关,但没有关系,它的配置参数使得网络上的计算机通信变得方便而容易实现了。DHCP使IP地址的可以租用,对于许多拥有许多台计算机的大型网络来说,每台计算机拥有一个IP地址有时候可能是不必要的。租期从1分钟到100年不定,当租期到了的时候,服务器可以把这个IP地址分配给别的机器使用。

    DHCP工作原理

    视乎客户端是否***次登录网路﹐DHCP的工作形式会有所不同。

    ***次登录的时候﹕

    DHCP工作原理1.寻找Server。当DHCP客户端***次登录网路的时候﹐也就是客户发现本机上没有任何IP资料设定﹐它会向网路发出一个DHCPDISCOVER封包。因为客户端还不知道自己属于哪一个网路﹐所以封包的来源地址会为0.0.0.0﹐而目的地址则为255.255.255.255﹐然后再附上DHCPdiscover的信息﹐向网路进行广播。网络上每一台安装了TCP/IP协议的主机都会接收到这种广播信息,但只有DHCP服务器才会做出响应

    DHCPdiscover的等待时间预设为1秒也就是当客户端将***个DHCPdiscover封包送出去之后在1秒之内没有得到回应的话就会进行第二次DHCPdiscover广播。在得不到回应的情况下客户端一共会有四次DHCPdiscover广播(包括***次在内)除了***次会等待1秒之外其余三次的等待时间分别是9 13 16秒。如果都没有得到DHCP服务器的回应客户端则会显示错误信息宣告DHCPdiscover的失败。之后基于使用者的选择系统会继续在5分钟之后再重一次DHCPdiscover的要求。

    DHCP工作原理2.提供IP租用位址。当DHCP服务器监听到客户端发出的DHCPdiscover广播后﹐它会从那些还没有租出的位址范围内﹐选择最前面的的空置IP,连同其它TCP/IP设定,回应给客户端一个DHCPOFFER封包。由于客户端在开始的时候还没有IP位址﹐所以在其DHCPdiscover封包内会带有其MAC位址信息﹐并且有一个XID编号来辨别该封包﹐DHCP服务器回应的DHCPoffer封包则会根据这些资料传递给要求租约的客户。根据服务器端的设定﹐DHCPoffer封包会包含一个租约期限的信息。

    DHCP工作原理3.接受IP租约。如果客户端收到网路上多台DHCP服务器的回应﹐只会挑选其中一个DHCPoffer(通常是***抵达的那个)﹐并且会向网路发送一个DHCP request广播封包﹐告诉所有DHCP服务器它将指定接受哪一台服务器提供的IP位址。之所以要以广播方式回答,是为了通知所有的DHCP服务器,他将选择某台DHCP服务器所提供的IP地址同时﹐客户端还会向网路发送一个ARP封包﹐查询网路上面有没有其它机器使用该IP位址﹔如果发现该IP已经被占用﹐客户端则会送出一个DHCPDECLINE封包给DHCP服务器﹐拒绝接受其DHCPoffer﹐并重新发送DHCPdiscover信息。事实上﹐并不是所有DHCP客户端都会无条件接受DHCP服务器的offer﹐尤其这些主机安装有其它TCP/IP相关的客户软件。客户端也可以用DHCPrequest向服务器提出DHCP选择﹐而这些选择会以不同的号码填写在DHCPOptionField里面。换一句话说﹐在DHCP服务器上面的设定﹐未必是客户端全都接受﹐客户端可以保留自己的一些TCP/IP设定。而主动权永远在客户端这边。

    DHCP工作原理4.确认阶段。即DHCP服务器确认所提供的IP地址的阶段。当DHCP服务器收到DHCP客户机回答的DHCPrequest请求信息之后,它便向DHCP客户机发送一个包含它所提供的IP地址和其他设置的DHCPack确认信息,告诉DHCP客户机可以使用它所提供的IP地址。然后DHCP客户机便将其TCP/IP协议与网卡绑定,另外,除DHCP客户机选中的服务器外,其他的DHCP服务器都将收回曾提供的IP地址

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

    DHCP工作原理6.更新租约。DHCP服务器向DHCP客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。如果DHCP客户机要延长其IP租约,则必须更新其IP租约。DHCP客户机启动时和IP租约期限过一半时,DHCP客户机都会自动向DHCP服务器发送更新其IP租约的信息。至于IP的租约期限却是非常考究的﹐并非如我们租房子那样简单﹐DHCP客户机除了在开机的时候发出DHCPrequest请求之外﹐在租约期限一半的时候也会发出DHCPrequest﹐如果此时得不到DHCP服务器的确认的话﹐工作站还可以继续使用该IP﹔然后在剩下的租约期限的再一半的时候(即租约的75%)﹐还得不到确认的话﹐那么工作站就不能拥有这个IP了。

    【责任编辑:佟媛微 TEL:(010)68476606】

    点赞 0

    展开全文
  • 一、动机 Socket库的gethostbyname函数会请求操作系统向DNS服务器发送查询消息(即某域名对应的IP地址是什么)。 显然,要向DNS服务器发送...1.DHCP(Dynamic Host Configuration Protocal)的作用 常用于给主机动态分配

    一、动机

    Socket库的gethostbyname函数会请求操作系统向DNS服务器发送查询消息(即某域名对应的IP地址是什么)。
    显然,要向DNS服务器发送消息,得先知道DNS服务器的IP地址(有2种方式)。
    ①手动设置过DNS服务器的IP地址;
    自动获得DNS服务器地址
    在这里插入图片描述

    那么计算机是如何自动获得DNS服务器地址的呢?这就要让DHCP来大显身手了!

    二、动态主机配置协议(DHCP)

    1.DHCP(Dynamic Host Configuration Protocal)的作用

    常用于给主机动态分配IP地址。

    DHCP提供即插即用联网的机制,即允许一台计算机加入新的网络时自动获取IP地址。
    再通俗地解释一遍:当张三买了一台新笔记本,用网线将笔记本和网口连接时,该计算机就自动获取了IP地址。

    DHCP是怎么实现这一个功能的呢?

    2.DHCP的工作原理

    (0)预备知识
    DHCP属于应用层协议,使用UDP协议提供的服务,采用客户/服务器方式工作。

    (1)工作过程
    1)需要IP地址的主机在启动时就向DHCP服务器广播发送发现消息。

    说明:
    ①广播的IP地址结构:子网号+主机号全1。
    ②上述提到的网口可以通俗理解为路由器的一个端口,对应于1个子网
    综合①和②,那么就有了广播IP地址
    ③操作系统内部的网络控制软件(也叫协议栈)根据广播地址发送消息(内容大意:亲爱的DHCP服务器,施舍给小弟1个IP地址吧:))向子网中所有计算机进行广播。(当然了,消息实际是从网卡经网线传输出去的。)
    PS:如果计算机可以使用自动获得IP地址功能,那么接入的子网中有DHCP服务器。

    2)只有DHCP服务器才响应此广播信息。

    响应过程:
    DHCP服务器先在其数据库中查找该计算机的配置信息。若找到,则返回找到的信息(说明分配过IP地址了);若找不到,则从服务器的IP地址池中取一个地址分配给该计算机

    广播消息:
    向所在子网广播“DHCP提供”消息,包括该计算机的IP地址和相关配置。

    3)计算机收到“DHCP提供”消息后,广播“DHCP请求”信息

    4)DHCP服务器广播“DHCP”确认消息

    对该过程进行拟人化描述:
    ①张三(新笔记本)向自己所在的村子(子网)敲锣打鼓地呼喊“村长(DHCP服务器)在哪啊?给我分配套房(IP地址)呗”;(对应上述1
    ②只有村长才打理这一声呼喊,并将预分配房的消息通过村里的大喇叭传出去; (对应上述2)
    ③张三听到消息后,满意地点点头,然后呼喊“感谢村长!我就要那套房啦!”;(对应上述3
    ④村长得知后,就在自己的小本本上(DHCP服务器的数据库)记录了这一分配,并广播“m78号房就是你张三的了!”。(对应上述4)

    这时候小伙伴就要问了,这不是主机自动获得IP地址吗?那主机怎么自动获得DNS服务器IP地址呢?
    PS:由上述的“广播”也知道DHCP协议是基于UDP协议的。

    (2)自动获得DNS服务器IP地址
    1)前言
    张三已经有了IP地址了,那么他下一步就要上网冲浪了。
    而张三打开浏览器,输入网址(URL)进行冲浪。浏览器就得调用gethostbyname函数(请求将URL中的域名转化为IP地址),而这是DNS服务器的工作。
    作为新时代负有责任的村长大大(DHCP服务器)当然在提供给张三IP地址的同时,要告诉DNS服务器IP地址啊。否则,张三只有IP地址,没法将域名转化为目标IP地址,冲不了浪啊。

    2)结论
    当计算机选择自动获得DNS服务器IP地址时,DHCP服务器不仅为它分配主机IP地址还告诉它DNS服务器IP地址。

    3.说明

    上述内容掩盖了DHCP的一些细节,比如,DHCP服务器分配给主机的IP地址是临时的。但抓住DHCP工作原理的核心部分才是关键!

    展开全文
  • dhcp工作原理.gif

    2021-07-24 12:11:00
    dhcp工作原理.gif
  • DHCP 工作原理

    千次阅读 2018-11-05 10:47:33
    DHCP 工作原理   一、什么是DHCP?  DHCP,动态主机配置协议,前身是BOOTP协议,是一个局域网的网络协议,使用UDP协议工作,常用的2个端口:67(DHCP server),68(DHCP client)。DHCP通常被用于局域网环境,主要...

    DHCP 工作原理


     

    一、什么是DHCP?

      DHCP,动态主机配置协议,前身是BOOTP协议,是一个局域网的网络协议,使用UDP协议工作,常用的2个端口:67(DHCP server),68(DHCP client)。DHCP通常被用于局域网环境,主要作用是集中的管理、分配IP地址,使client动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。简单来说,DHCP就是一个不需要账号密码登录的、自动给内网机器分配IP地址等信息的协议。

    二、DHCP协议中的报文

    DHCP报文共有一下几种:

    • DHCP DISCOVER :客户端开始DHCP过程发送的包,是DHCP协议的开始
    • DHCP OFFER :服务器接收到DHCP DISCOVER之后做出的响应,它包括了给予客户端的IP(yiaddr)、客户端的MAC地址、租约过期时间、服务器的识别符以及其他信息
    • DHCP REQUEST :客户端对于服务器发出的DHCP OFFER所做出的响应。在续约租期的时候同样会使用。
    • DHCP ACK :服务器在接收到客户端发来的DHCP REQUEST之后发出的成功确认的报文。在建立连接的时候,客户端在接收到这个报文之后才会确认分配给它的IP和其他信息可以被允许使用。
    • DHCP NAK :DHCP ACK的相反的报文,表示服务器拒绝了客户端的请求。
    • DHCP RELEASE :一般出现在客户端关机、下线等状况。这个报文将会使DHCP服务器释放发出此报文的客户端的IP地址
    • DHCP INFORM :客户端发出的向服务器请求一些信息的报文
    • DHCP DECLINE :当客户端发现服务器分配的IP地址无法使用(如IP地址冲突时),将发出此报文,通知服务器禁止
      使用该IP地址。

    DHCP 的 工作流程:

     

    3、DHCP 协议包的组成

    • Xid :随机生成的一段字符串,两个数据包拥有相同的xid说明他们属于同一次会话
    • Ciaddr :客户端会在发送请求时将自己的ip地址放在此处
    • Yiaddr :服务器会将想要分配给客户端的ip地址放在此处
    • Siaddr :一般来说是服务器的ip地址.但是注意!根据openwrt源码给出的注释,当报文的源地址、siaddr、option­>server_id字段不一致(有经过跨子网转发)时,通常认为option­>srever_id字段为真正的服务器ip,siaddr有可能是多次路由跳转中的某一个路由的ip (下图中wireshark抓包中也有标明siaddr为nextserver ip address)
    • Chaddr :客户端的mac地址
    • Giaddr :如果需要跨子网进行DHCP地址发放,则在此处填入经过的路由器的ip地址
    • Sname :服务器主域名
    • Options :可以自由添加的部分,用于存放客户端向服务器请求信息和服务器的应答信息

     

    DHCP 客户端


     

    一、DHCP 原理

    1、什么是DHCP 客户端

        DHCP客户端一般来说是局域网中独立的PC主机。

      DHCP客户端发出的DHCP DISCOVER包是DHCP协议的开始。

      延续租期、发现、释放IP地址等大多数DHCP中的行为都是由DHCP客户端主动发起。

    2、DHCP 自动状态机

      DHCP获得ip地址的4步骤:discover­>offer­>request­>ack(nak)

      DHCP刷新租期的步骤:request­>ack(nak)

      DHCP释放ip的步骤:release

      wnr2000v5 1.0.0.8的代码中没有发现rebooting、init­reboot状态。所以DHCP client的状态一般从init开始,完整的状态机如下图(红色代表客户端的状态跳转):

     

    DHCP Server


     

     一、DHCPD 原理

    1、简述

       DHCP SERVER指的是服务器端,在路由器上体现的就是给LAN端动态分配IP的功能。DHCP SERVER负责接收客户端的DHCP请求,管理LAN端所有的IP网络设定资料,相比于BOOTP,DHCP通过“租约”来实现动态分配IP的功能,实现IP的时分复用,从而解决IP资源短缺的问题。其地址分配方式有三种,分别是人工配置(由管理员对每台具体的计算机指定一个地址),自动配置(服务器为第一次连接网络的计算机分配一个永久地址),动态配置(在一定的期限内将地址租给计算机,租期结束后客户必须续租或者停用该地址),而对于路由器,经常使用的地址分配方式是动态配置。

    2、两个租约表

    • 静态租约表:对应一个静态租约存储文件,server运行时从文件中读取静态租约表。
    • 动态租约表:对应一个周期存储文件,server周期性将租约表存进该文件,在程序开始时将会读取上次存放的租约表。(租约表记录了当前所有分配的租约,包括静态链接的)。

    3、基本逻辑

      原则上DHCP SERVER是一直处在被动接受请求的状态,当有客户端请求时,服务器会读取获得客户端当前所在的状态以及客户端的信息,并在静态租约表和动态租约表中进行检索找到相应的表项,再根据客户端的状态执行不同的回复。当收到客户端的首次请求时,DHCP服务器先查找静态租约表;若存在请求的表项,返回这个客户的静态IP地址;否则,从IP地址池中选择可用的IP分配给客户,并添加信息到动态数据库中。此外,服务器将会周期性的刷新租约表写入文件存档,在这个过程中会顺便对动态租约表进行租期检查。

    执行回复动作:

    • DHCPOFFER:
      • 静态租用:首先匹配MAC地址,看是否能在静态租约表中找到对应的项,若能找到就把IP分配给他。静态表中的IP不能被其他客户使用。   
      • 动态租用:
        • 1.server试图分配给client上次分配过的IP,在这之前检查这个IP是否正在使用。
        • 2.discover中含有request ip 时,检查该IP是否在地址池范围,是否正在使用,是否到期,是否是静态IP,网络上是否已经存在。
        • 3.discover不含request ip,从地址池上寻找一个最小的可用IP分配。
    • DHCPACK: 根据是否含有request ip和server ip识别客户端现在init_reboot,selecting,renewing/rebinding中的哪个状态,并根据以下规则执行DHCPACK回复:
      • 1.若client处于selecting状态,验证request ip和server ip是否同服务器中的匹配。
      • 2.若client处于init_reboot状态,验证request ip是否符合租约记录。
      • 3.若client处于renewing/rebinding状态,验证client ip address是否符合租约记录。
    • DHNAK:
      • 1.请求的IP是静态IP,但是MAC地址无法与其对应。
      • 2.上面DHCPACK中验证失败。  
    • 服务器还可能会收到其他包:
      • DHCPDECLINE:server会把租约表中相关client硬件地址置空,并保存这个地址一段时间。
      • DHCPRELEASE:清空租期回收IP。
      • DHCPINFORM:回复DHCPACK,数据包含有关于server的信息。

    其他参考资料:

    DHCP工作过程详解:http://tonyguo.blog.51cto.com/379574/163475/

    展开全文
  • Linux——DHCP工作原理

    2019-07-07 22:33:02
    DHCP DHCP:dynamic(动态) host configuration Protocal C(Client)/S(Server) 用途:局域网内自动为客户端分配网络参数 网络参数:IP地址 网管 掩码 DNS地址 NTP(网络时间服务器...DHCP协议的工作方式及过...
  • DHCP工作原理之步骤详细讲解

    千次阅读 2020-06-16 14:47:28
    DHCP 工作原理(租约四部曲+续租) 1. DHCP 客户端进行 IP 请求 当一个 DHCP客户机启动时, 会自动将自己的 IP地址配置成 0.0.0.0, 由于使用 0.0.0.0不能进行正常通信, 所 以客户机就必须通过 DHCP服务器来获取一...
  • 采用收工配置,工作量大,容易出错还不好管理,如果用户擅自更改上网参数,还有可能会造成IP地址冲突等问题,使用DHCP来分配IP等网络参数,可以减少管理员的工作量,还能避免出错。 DHCP可以实现动态分配主机上网...
  • dhcp工作原理

    2014-11-15 18:17:50
    根据客户端是否第一次登录网络,DHCP工作形式会有所不同。 第一次登录的时候: 寻找 Server。当 DHCP 客户端第一次登录网络的时候,也就是客户发现本机上没有任何 IP 数据设定,它会向网络发出一个 DHCP ...
  • DHCP工作原理DHCP地址释放和续约)
  • DHCP工作原理详解

    万次阅读 2014-11-11 17:55:52
    DHCP动态主机配置协议的作用我想作为网管的兄弟们都应该知道了,这里我就不多废话了,今天我要谈的是DHCP工作过程,了解了工作过程,要排除故障就容易了。   一、DHCP客户机初始化: 1. 寻找DHCP Server。 当...
  • DHCP工作原理DHCP租约过程:4个步骤,discover(广播)、offer(单播)、request(广播)、ACK(单播) 1、客户端请求IP地址,在局域网内发送discover广播包,寻找DHCP服务器。 2、如果局域网内,存在DHCP...
  • DHCP工作原理DHCP中继代理)

    千次阅读 多人点赞 2020-02-19 18:09:53
    DHCP工作原理DHCP中继代理) 1.概述: 当跨网段执行DHCP请求时,通过DHCP中继代理,将请求信息以单播方式转发给DHCP服务器 2.图解: 3.分类: DHCP Relay 客户端通知服务器,其所分配的地址已经被其他...
  • Windows DHCP工作原理

    2020-07-22 19:02:19
    动态主机设置协定(Dynamic Host Configuration Protocol, DHCPDHCP是一个局域网的网络协议,使用UDP协议工作,其前身是BOOTP协议。当前的DHCP定义可以在RFC 2131中找到,而基于IPv6的建议标准(DHCPv6)可以在...
  • 注1:在DHCP Discover报文中,客户端在请求地址时,一般会申请它之前使用过的地址,所以在option 50的字段中会存在上一次使用的地址。如果该客户所在的网络中此IP仍然可用,服务器就可以准许该申请。否则,就要看该...
  • DHCP工作原理及配置命令DHCPDHCP用途使用DHCP的好处DHCP工作原理DHCP配置1.接口模式2.全局模式DHCP中继应用场景原理配置命令DHCP中继服务器DHCP服务器 DHCP DHCP是一个局域网的网络协议,使用UDP协议工作 DHCP用途 ...
  • 路由交换基础——DHCP工作原理DHCP Relay

    千次阅读 多人点赞 2021-10-06 14:47:45
    DHCP????DHCP应用场景????DHCP配置????DHCP Relay????免费福利 ????技术背景 网络复杂度的不断提高伴随着网络规模的不断扩大,计算机的数量经常超过可供分配的IP地址数量。便携设备及无线网络的广泛使用也导致计算机...
  • DHCP工作原理解释

    2020-11-05 18:07:05
    工作原理】 用户第一次登录网络时,获取IP地址的步骤: (1)地址租用申请 (DHCP DISCOVER): DHCP客户机通过UDP 68端口发送DHCP DISCOVER广播信息来查找DHCP服务器。网络上每一台安装了TCP/IP协议的主机都会...
  • DHCP工作原理及过程

    万次阅读 2019-02-13 16:36:47
     DHCP,动态主机配置协议,前身是BOOTP协议,是一个局域网的网络协议,使用UDP协议工作,常用的2个端口:67(DHCP server),68(DHCP client)。DHCP通常被用于局域网环境,主要作用是集中的管理、分配IP地址,使client...
  • DHCP工作原理(地址请求过程)

    千次阅读 多人点赞 2020-02-16 20:49:14
    DHCP概述: ...②DHCP可以使得整网络的地址分配变得非常简单,大大减低了网络管理员的工作量。 ③DHCP基于UDP协议,采用端口号为67和68,其中68端口为DHCP客户端采用,67端口为DHCP服务端采用。 图...
  • 最近在做iot wifi开发的过程中遇到了模组连接上了路由器却迟迟拿不到ip的问题,所以决定借此机会深入了解下dhcp工作原理。 PS:wireshark是无法抓取模组连接路由器的dhcp的过程的,有需求的同学可以尝试使用...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 31,129
精华内容 12,451
关键字:

dhcp工作原理

友情链接: OLED.zip