dhcp request报文的作用是(DHCP request报文的作用是)

      最后更新:2023-09-28 07:16

      DHCP工作过程包括哪四种报文

      使用DHCP正常获取地址的过程中使用的是以下4种报文:(1)客户端广播DHCP发现(DHCP Discovery)(2)服务器回应DHCP响应(DHCP Offer)(3)客户端广播DHCP请求(DHCP Request)(4)服务器回应DHCP确认(DHCP ACK)其实还有其他类型的报文,客户端发现分配的IP地址已经被占用时,发送DHCP Decline,通知服务器IP地址已被占用,要求重新分配。客户端可以主动释放IP地址,DHCP Release。如果客户端移动到了另一个IP地址不同的网络,并向服务器申请续租时,服务器发现客户端IP地址错误,发送DHCP NAK通知客户端重新申请IP地址。延展阅读:【DHCP简介】DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段,在RFC 2131中有详细的描述。DHCP有3个端口,其中UDP67和UDP68为正常的DHCP服务端口,分别作为DHCP Server和DHCP Client的服务端口;546号端口用于DHCPv6 Client,而不用于DHCPv4,是为DHCP failover服务,这是需要特别开启的服务,DHCP failover是用来做“双机热备”的。【功能概述】DHCP协议采用客户端/服务器模型,主机地址的动态分配任务由网络主机驱动。当DHCP服务器接收到来自网络主机申请地址的信息时,才会向网络主机发送相关的地址配置等信息,以实现网络主机地址信息的动态配置。DHCP具有以下功能:1、 保证任何IP地址在同一时刻只能由一台DHCP客户机所使用。2、DHCP应当可以给用户分配永久固定的IP地址。3、DHCP应当可以同用其他方法获得IP地址的主机共存(如手工配置IP地址的主机)。4、DHCP服务器应当向现有的BOOTP客户端提供服务。
      DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。DHCP协议采用客户端/服务器模型,主机地址的动态分配任务由网络主机驱动。当DHCP服务器接收到来自网络主机申请地址的信息时,才会向网络主机发送相关的地址配置等信息,以实现网络主机地址信息的动态配置。DHCP具有以下功能:1. 保证任何IP地址在同一时刻只能由一台DHCP客户机所使用。2. DHCP应当可以给用户分配永久固定的IP地址。3. DHCP应当可以同用其他方法获得IP地址的主机共存(如手工配置IP地址的主机)。4. DHCP服务器应当向现有的BOOTP客户端提供服务。DHCP四种报文数据包一、discover二、offer三、request四、ack
      客户端广播DHCP发现(DHCP Discovery) 服务器回应DHCP响应(DHCP Offer)客户端广播DHCP请求(DHCP Request)服务器回应DHCP确认(DHCP ACK)其实还有其他类型的报文,客户端发现分配的IP地址已经被占用时,发送DHCP Decline,通知服务器IP地址已被占用,要求重新分配。客户端可以主动释放IP地址,DHCP Release。 如果客户端移动到了另一个IP地址不同的网络,并向服务器申请续租时,服务器发现客户端IP地址错误,发送DHCP NAK通知客户端重新申请IP地址。
      使用DHCP正常获取地址的过程中使用的是以下4种报文: DHCP DiscoverDHCP OfferDHCP Request DHCP Ack
      DHCP工作过程包括哪四种报文

      [协议]DHCP 协议原理与分析(一)

      Chapter 01 : DHCP(Dynamic Host Configuration Protocol)协议的作用在TCP/IP网络中向Internet主机提供配置信息。它以Bootstrap Protocol(BOOTP)协议为基础发展起来的,并增加了重新使用的网络地址的自动分配能力和附加配置选项(Configuration Options),同时DHCP保留了BOOTP的Relay代理功能。Chapter 02: 协议简介DHCP(Dynamic Host Configuration Protocol)协议是在Bootstrap Protocol (BOOTP)基础上提出的,其作用是在TCP/IP网络中向Internet主机提供配置信息。DHCP采用Client / Server模式,由客户端向服务器提出配置申请(包括分配的IP地址、子网掩码、缺省网关等参数),服务器根据策略返回相应配置信息。DHCP报文采用UDP作为传输层协议进行封装。DHCP 2个部分:1、 DHCP Relay功能,把DHCP Server指定的配置信息传输给Host;2、 Server功能,分配网络地址和其他配置参数给主机。DHCP 分配IP 方式:1、 Automatic Allocation,为首次连接到网络的某些主机分配固定IP地址,该地址将长期由该主机使用。2、 Dynamic Allocation,DHCP Server为Host指定一个IP地址,同时为此地址规定了一个租用期限,如果租用时间到期,Client必须重新申请地址,这是Client申请地址最常用的方法;3、 Manual Allocation,网络管理员为某些少数特定的Host指定固定IP地址。DHCP指定地址的优先级分类:1、 DHCP Server地址池中与Client的MAC地址静态绑定的IP地址。2、 Client曾经使用过的地址。当Client端再次申请地址时,Client发送DHCP Discover报文,其地址选项中会包含上次使用的IP地址,除非此IP地址被分配出去或此地址进行了其他不可用操作(例如:此IP地址被Forbidden等),否则Client端将再次使用此地址。3、 “requested IP address”选项中Client自己指定的IP地址,如果这个地址是地址池里的有效地址,而且没有被分配出去,那么将此地址分配给Client使用。4、 顺序查找DHCP地址池中可供分配的IP地址,最先找到的可用IP地址,优先级高。Chapter 03: DHCP 报文格式报文每个字段的含义“options”域是个可变长度域,DHCP Client必须能够接收包含有312bytes长度的“options”域的DHCP报文,也就是说DHCP Client必须能够接受至少576bytes长度的IP报文。DHCP Client可以通过“Maximum DHCP Message Size”Option来协商DHCP报文的最大长度。flag 格式:B : 最左边的bit,Broadcast flag;MBZ : 剩余的bits为保留位,留作将来使用Chapter 04 : DHCP 报文构造与发送DHCP 使用 UDP 协议的端口号DHCP报文采用UDP作为传输层协议进行封装。Client到Server的DHCP报文发送到DHCP Server的端口号是67,Server到Client的报文发送到DHCP Client的端口号是68DHCP 的选项DHCP报文中需要包含一系列的选项,即,选项列表(Options Lists)。选项列表是以4个字节的魔术字开始,后面跟随一系列的选项,最后以“end”选项结束。Client IDDHCP定义了一个用来标识Client的选项,即,“Client Identifier”Option。Client必须选择一个能够在自己所在的物理网络中唯一标识自己的值来填充Client ID选项的值,一旦该值被初始化,在随后的报文交互中,该值不能改变。推荐使用Client的MAC地址作为Client ID值。Server IDDHCP定义了一个用来标识Server的选项,即,“Server Identifier”Option。Server选择自己的IP地址作为Server ID。如果一个DHCP Server有多个IP地址,它可以任意选择一个作为Server ID,但是,推荐使用Client可达的IP地址。例如,当Server与Client位于同一网段时,最好选择该网段的地址作为Server ID。如果Client向Server发送单播报文,目的地址就使用Server ID值。Client 端发送报文的源 IP 地址在Client端没有获取到IP地址之前,其发送报文的源IP(指IP首部中的源IP字段)必须填0。广播标志Flags,第1bit用作广播标志,后面15bits保留,必须置0。在软件没有对自己IP协议的IP地址进行有效配置时,Client可能无法处理收到的单播报文,这时,Client在发送Discover和Request报文时,必须将广播标志位置1, Server或RelayAgent收到这样的报文,必须回复广播报文给Client。如果Client可以处理广播报文,它就将广播标志位置0,Server或Relay Agent收到这样的Discover和Request报文,可以使用单播报文进行回复,其目的IP地址为Server分配给Client的IP地址,即,报文中yiaddr (You IP Address)字段的值。当然,Server或Relay Agent也可以以广播的方式回复。Server 端对 ciaddr 和 giaddr 字段的处理ciaddr,Client IP Address,只有Client是BOUND、RENEW、REBINDING状态,并且能响应ARP requests时,才能被填充;giaddr,Relay Agent IP Adress;1、 如果Server收到的报文giaddr字段不为0(即,说明该报文是经过Relay Agent进行转发的报文),那么它将以单播的方式进行回复,其目的地址为giaddr字段的值;2、 如果Server收到的报文giaddr字段为0,ciaddr字段不为0(即,说明Client已经有效配置了自己的IP地址),那么它将以单播的方式进行回复,其目的地址为ciaddr字段的值;3、 如果Server收到的报文giaddr字段为0,ciaddr字段为0,广播标志位不为0(即,说明Client没有配置自己的IP地址,并且,此时无法处理单播报文),那么它将以广播的方式进行回复;4、 如果Server收到的报文giaddr字段为0,ciaddr字段为0,广播标志位为0(即,说明Client虽然没有配置自己的IP地址,但是,此时可以处理单播报文),那么它将以单播的方式进行回复(推荐以单播方式回复,当然,也可以以广播方式回复)。Transaction IDXid(Transaction ID),由Client选择的一个随机数,用于Server和Client之间交互报文的匹配。Client必须采用相应的算法来保证其选取的xid值与其他Client选取的xid值尽量不同,即,将相同的概率降到最低。选项过载在DHCP报文头中,sname和file字段都占用较多的字节,如果一个报文中的这两个字段有一个或两个不含信息,空间就浪费了。为此,DHCP可以将选项内容扩充到sname和file字段中。DHCP定义了一个Overload Option(过载选项),如果出现Overload Option,就告诉接收者sname和file字段失去了原来的含义,而表示Option报文类型DHCP在Message Type Option中,定义了报文类型,Message Type Option的格式如下:Option Code:长度为1个字节,其值为53,表示Message Type Option;Option Length:长度为1字节,其值为1,表示Option Value字段长度为1个字节;Option Value:长度为1个字节,其值标识了DHCP的报文类型(Message Type)。在RFC2131中定义了如下8种DHCP报文:Type 描述1 DHCPDISCOVER2 DHCPOFFER3 DHCPREQUEST4 DHCPDECLINE5 DHCPACK6 DHCPNAK7 DHCPRELEASE8 DHCPINFORMDHCP Server可以收到Client的报文为:DHCPDISCOVER、DHCPREQUEST、DHCPDECLINE、DHCPRELEASE和DHCPINFORM;DHCP Client可以收到Server的报文为:DHCPOFFER、DHCPACK和DHCPNAK。DHCPDISCOVER当Server收到来自Client的DHCPDISCOVER报文后,Server会为此Client选择一个网络地址,如果没有可用地址,那么Server会向系统管理员报告;如果有可用地址,那么Server会选择一个可用地址给Client,选择机制为:1、 Server地址池中与Client的MAC地址静态绑定的IP地址;2、 Client先前使用的已经过期或释放掉的地址,如果此地址在地址池里是可用地址,并且没有被分配出去,那么将此地址分配给Client使用;3、 “requested IP address”选项中Client自己指定的IP地址,如果这个地址是地址池里的有效地址,而且没有被分配出去,那么将此地址分配给Client使用;4、 地址池里的有效的未分配出去的新地址,根据一定的选择方法分配给Client使用。租期选择机制:1、 如果Client在DHCPDISCOVER中请求了指定租期,这时不管Client是否已经被指定了网络地址,Server都会指定为请求租期;2、 如果Client没有请求指定租约期限,而Client已经被指定了网络地址,那么Server将把先前此地址使用的租期指定给该地址;3、 如果Client没有请求指定租约期限,而Client也没有被指定网络地址,那么Server将指定本地默认租期。DHCPREQUESTDHCPREQUEST是Client响应来自Server的DHCPOFFER报文、检验先前分配的网络地址或扩展已存在的租约的。如果DHCPREQUEST报文中包含“server identifier”选项,那么这个报文是用来响应DHCPOFFER的,否则,这个报文是用来请求检验和扩展已存在的租约的。如果在DHCPREQUEST中Client使用了“client identifier”选项,那么在以后的所有后续报文中都要使用相同的“client identifier”;如果在DHCPDISCOVER报文中包含需求参数列表,那么在后续的报文中都要包含这个参数列表。DHCPACK中的配置参数不应该和DHCPOFFER报文产生冲突,而Client使用的配置参数就是DHCPACK报文中的配置参数。DHCPDECLINE如果Client发现Server建议使用的网络地址已被使用,那么Client将向Server发送DHCPDECLINE报文,Server必须把这个网络地址标记为不可用,并且应该通报本地系统管理员可能的配置问题。Client检查Server分配的地址是否已经被使用的方法:Client收到Server的ACK报文,在配置自己的IP地址和其他参数之前,发送免费ARP进行检查该IP地址是否在网络中被使用。DHCPRELEASE如果Client不再需要使用它的指定地址,那么Client将向Server发送DHCPRELEASE报文,当收到DHCPRELEASE后,Server会标记此网络地址不再被分配,但Server应该保留Client的初始化参数记录,以备以后响应Client对此地址可能的重使用。DHCPINFORM当Client已经配置了自己的IP地址,但又要配置其他参数时,它将向Server发送DHCPINFORM报文,请求其他参数配置。当收到DHCPINFORM报文,Server直接对报文“ciaddr”域中给出的地址发送DHCPACK报文。Server不必发送租期超出时间,也不应该填充“yiaddr”域。DHCPOFFERServer收到DHCPDISCOVER报文,使用DHCPOFFER报文进行回应。DHCPOFFER报文应该包括“yiaddr”域的可用网络地址和其它DHCP options的配置参数。当分配新的地址时,Server应该确认提供的网络地址没有被其他Client使用(Server可以通过发送指向被分配地址的ICMP echo request来确认被分配地址没有被使用)。DHCPACK&DHCPNAK如果某个Server提供的配置参数是可以接受的,那么Client记录下Server的地址,并且把此地址写入DHCPREQUEST的“server identifier”域,并以广播形式向外发送,如果收到DHCPREQUEST报文里面的配置参数是有效的,Server会响应一个DHCPACK报文。一旦DHCPACK被收到,Client将会被初始化并且进入BOUND状态。如果DHCPREQUEST报文里面的配置参数是无效的,那么Server会响应一个 DHCPNAK报文。
      [协议]DHCP 协议原理与分析(一)

      DHCP服务的作用???

      DHCP DHCP 是 Dynamic Host Configuration Protocol(动态主机分配协议)缩写,它的前身是 BOOTP。BOOTP 原本是用于无磁盘主机连接的网络上面的:网络主机使用 BOOT ROM 而不是磁盘起动并连接上网络,BOOTP 则可以自动地为那些主机设定 TCP/IP 环境。但 BOOTP 有一个缺点:您在设定前须事先获得客户端的硬件地址,而且,与 IP 的对应是静态的。换而言之,BOOTP 非常缺乏 "动态性" ,若在有限的 IP 资源环境中,BOOTP 的一对一对应会造成非常可观的浪费。 DHCP 可以说是 BOOTP 的增强版本,它分为两个部份:一个是服务器端,而另一个是客户端。所有的 IP 网络设定数据都由 DHCP 服务器集中管理,并负责处理客户端的 DHCP 要求;而客户端则会使用从服务器分配下来的IP环境数据。比较起 BOOTP ,DHCP 透过 "租约" 的概念,有效且动态的分配客户端的 TCP/IP 设定,而且,作为兼容考虑,DHCP 也完全照顾了 BOOTP Client 的需求。 DHCP 的分配形式 首先,必须至少有一台 DHCP 工作在网络上面,它会监听网络的 DHCP 请求,并与客户端搓商 TCP/IP 的设定环境。它提供两种 IP 定位方式:Automatic Allocation自动分配,其情形是:一旦 DHCP 客户端第一次成功的从 DHCP 服务器端租用到 IP 地址之后,就永远使用这个地址。Dynamic Allocation动态分配,当 DHCP 第一次从 HDCP 服务器端租用到 IP 地址之后,并非永久的使用该地址,只要租约到期,客户端就得释放(release)这个 IP 地址,以给其它工作站使用。当然,客户端可以比其它主机更优先的更新(renew)租约,或是租用其它的 IP 地址。 动态分配显然比自动分配更加灵活,尤其是当您的实际 IP 地址不足的时候,例如:您是一家 ISP ,只能提供 200 个IP地址用来给拨接客户,但并不意味着您的客户最多只能有 200 个。因为要知道,您的客户们不可能全部同一时间上网的,除了他们各自的行为习惯的不同,也有可能是电话线路的限制。这样,您就可以将这 200 个地址,轮流的租用给拨接上来的客户使用了。这也是为什么当您查看 IP 地址的时候,会因每次拨接而不同的原因了(除非您申请的是一个固定 IP ,通常的 ISP 都可以满足这样的要求,这或许要另外收费)。当然,ISP 不一定使用 DHCP 来分配地址,但这个概念和使用 IP Pool 的原理是一样的。 DHCP 除了能动态的设定 IP 地址之外,还可以将一些 IP 保留下来给一些特殊用途的机器使用,它可以按照硬件地址来固定的分配 IP 地址,这样可以给您更大的设计空间。同时,DHCP 还可以帮客户端指定 router、netmask、DNS Server、WINS Server、等等项目,您在客户端上面,除了将 DHCP 选项打勾之外,几乎无需做任何的 IP 环境设定。 DHCP 的工作原理 根据客户端是否第一次登录网络,DHCP 的工作形式会有所不同。 第一次登录的时候:寻找 Server。当 DHCP 客户端第一次登录网络的时候,也就是客户发现本机上没有任何 IP 数据设定,它会向网络发出一个 DHCP DISCOVER 封包。因为客户端还不知道自己属于哪一个网络,所以封包的来源地址会为 0.0.0.0 ,而目的地址则为 255.255.255.255 ,然后再附上 DHCP discover 的信息,向网络进行广播。 在 Windows 的预设情形下,DHCP discover 的等待时间预设为 1 秒,也就是当客户端将第一个 DHCP discover 封包送出去之后,在 1 秒之内没有得到响应的话,就会进行第二次 DHCP discover 广播。若一直得不到响应的情况下,客户端一共会有四次 DHCP discover 广播(包括第一次在内),除了第一次会等待 1 秒之外,其余三次的等待时间分别是 9、13、16 秒。如果都没有得到 DHCP 服务器的响应,客户端则会显示错误信息,宣告 DHCP discover 的失败。之后,基于使用者的选择,系统会继续在 5 分钟之后再重复一次 DHCP discover 的过程。提供 IP 租用地址。当 DHCP 服务器监听到客户端发出的 DHCP discover 广播后,它会从那些还没有租出的地址范围内,选择最前面的空置 IP ,连同其它 TCP/IP 设定,响应给客户端一个 DHCP OFFER 封包。 由于客户端在开始的时候还没有 IP 地址,所以在其 DHCP discover 封包内会带有其 MAC 地址信息,并且有一个 XID 编号来辨别该封包,DHCP 服务器响应的 DHCP offer 封包则会根据这些资料传递给要求租约的客户。根据服务器端的设定,DHCP offer 封包会包含一个租约期限的信息。接受 IP 租约。如果客户端收到网络上多台 DHCP 服务器的响应,只会挑选其中一个 DHCP offer 而已(通常是最先抵达的那个),并且会向网络发送一个DHCP request广播封包,告诉所有 DHCP 服务器它将指定接受哪一台服务器提供的 IP 地址。 同时,客户端还会向网络发送一个 ARP 封包,查询网络上面有没有其它机器使用该 IP 地址;如果发现该 IP 已经被占用,客户端则会送出一个 DHCPDECLINE 封包给 DHCP 服务器,拒绝接受其 DHCP offer ,并重新发送 DHCP discover 信息。 事实上,并不是所有 DHCP 客户端都会无条件接受 DHCP 服务器的 offer ,尤其这些主机安装有其它 TCP/IP 相关的客户软件。客户端也可以用 DHCP request 向服务器提出 DHCP 选择,而这些选择会以不同的号码填写在 DHCP Option Field 里面:换一句话说,在 DHCP 服务器上面的设定,未必是客户端全都接受,客户端可以保留自己的一些 TCP/IP 设定。而主动权永远在客户端这边。租约确认。当 DHCP 服务器接收到客户端的 DHCP request 之后,会向客户端发出一个 DHCPACK 响应,以确认 IP 租约的正式生效,也就结束了一个完整的 DHCP 工作过程。 如上的工作流程如下图:DHCP 发放流程第一次登录之后: 一旦 DHCP 客户端成功地从服务器哪里取得 DHCP 租约之后,除非其租约已经失效并且 IP 地址也重新设定回 0.0.0.0 ,否则就无需再发送 DHCP discover 信息了,而会直接使用已经租用到的 IP 地址向之前之 DHCP 服务器发出 DHCP request 信息,DHCP 服务器会尽量让客户端使用原来的 IP 地址,如果没问题的话,直接响应 DHCPack 来确认则可。如果该地址已经失效或已经被其它机器使用了,服务器则会响应一个 DHCPNACK 封包给客户端,要求其从新执行 DHCP discover。 至于 IP 的租约期限却是非常考究的,并非如我们租房子那样简单, 以 NT 为例子:DHCP 工作站除了在开机的时候发出 DHCP request 请求之外,在租约期限一半的时候也会发出 DHCP request ,如果此时得不到 DHCP 服务器的确认的话,工作站还可以继续使用该 IP ;然后在剩下的租约期限的再一半的时候(即租约的75%),还得不到确认的话,那么工作站就不能拥有这个 IP 了。至于为什么不是到租约期限完全结束才放弃 IP 呢?,对不起,小弟也是不学无术之人,没有去深究了,只知道要回答 MCSE 题目的时候,您一定要记得 NT 是这么工作的就是了。 要是您想退租,可以随时送出 DHCPLEREASE 命令解约,就算您的租约在前一秒钟才获得的。跨网络的 DHCP 运作 从前面描述的过程中,我们不难发现:DHCDISCOVER 是以广播方式进行的,其情形只能在同一网络之内进行,因为 router 是不会将广播传送出去的。但如果 DHCP 服务器安设在其它的网络上面呢?由于 DHCP 客户端还没有 IP 环境设定,所以也不知道 Router 地址,而且有些 Router 也不会将 DHCP 广播封包传递出去,因此这情形下 DHCP DISCOVER 是永远没办法抵达 DHCP 服务器那端的,当然也不会发生 OFFER 及其它动作了。要解决这个问题,我们可以用 DHCP Agent (或 DHCP Proxy )主机来接管客户的 DHCP 请求,然后将此请求传递给真正的 DHCP 服务器,然后将服务器的回复传给客户。这里,Proxy 主机必须自己具有路由能力,且能将双方的封包互传对方。 若不使用 Proxy,您也可以在每一个网络之中安装 DHCP 服务器,但这样的话,一来设备成本会增加,而且,管理上面也比较分散。当然喽,如果在一个十分大型的网络中,这样的均衡式架构还是可取的。端视您的实际情况而定了。 DHCP封包格式以下为各字段的简要说明: OP若是 client 送给 server 的封包,设为 1 ,反向为 2 。 HTYPE硬件类别,Ethernet 为 1 。HLEN硬件地址长度, Ethernet 为 6 。HOPS若封包需经过 router 传送,每站加 1 ,若在同一网内,为 0 。TRANSACTION IDDHCP REQUEST 时产生的数值,以作 DHCPREPLY 时的依据。SECONDSClient 端启动时间(秒)。FLAGS从 0 到 15 共 16 bits ,最左一 bit 为 1 时表示 server 将以广播方式传送封包给 client ,其余尚未使用。ciaddr要是 client 端想继续使用之前取得之 IP 地址,则列于这里。yiaddr从 server 送回 client 之 DHCP OFFER 与 DHCPACK 封包中,此栏填写分配给 client 的 IP 地址。siaddr若 client 需要透过网络开机,从 server 送出之 DHCP OFFER、DHCPACK、DHCPNACK 封包中,此栏填写开机程序代码所在 server 之地址。giaddr若需跨网域进行 DHCP 发放,此栏为 relay agent 的地址,否则为 0 。chaddrClient 之硬件地址。snameServer 之名称字符串,以 0x00 结尾。file若 client 需要透过网络开机,此栏将指出开机程序名称,稍后以 TFTP 传送。options允许厂商定议选项(Vendor-Specific Area),以提供更多的设定信息(如:Netmask、Gateway、DNS、等等)。其长度可变,同时可携带多个选项,每一选项之第一个 byte 为信息代码,其后一个 byte 为该项数据长度,最后为项目内容。 CODE LEN VALUE 此字段完全兼容 BOOTP ,同时扩充了更多选项。其中,DHCP 封包可利用编码为 0x53 之选项来设定封包类别:项值 类别1 DHCP DISCOVER2 DHCP OFFER3 DHCP REQUEST4 DHCPDECLINE5 DHCPACK6 DHCPNACK7 DHCPRELEASE DHCP 的选项非常多,有空请查阅 RFC 或相关文献,并好好理解,这里不再叙述了。 DHCP 协议之 RFC 文件 RFC-951、RFC-1084、RFC-1123、RFC-1533、RFC-1534、RFC-1497、RFC-1541
      自动分配IP给下面的分机
      DHCP的作用就是动态分配IP的。例如:当一个局域网里才装500台计算机时,如果要人工地去每一台每一台地设置IP,那是挺麻烦的。也挺耗时的。于是就那域里一台计算机来域控制器。然后设好DHCP。至于要分配的IP段,由你个人来定。例:你可以让DHCP从192.168.0.0---192.168.0.255里分给下面的计算机. 如果是Sysgate做代理,那么就不要用专门的DHCP服务器了,它自带有。
      可以安装(客户端IP地址动态指定)也可不装(客户端指定IP地址)! DHCP是可自动将IP位址指派给登入TCP/IP网络的用户端的一种软件,(此种IP位址称为「动态IP位址」)。这种软件通常是在路由器及其他网络设备上执行的。依照预先设定,您的服务器设定为使用DHCP,因此就无须手动指派永久IP位址给网络上的每个设备。建议不要改变这个设置,这样您的个人电脑就可以被分辨为DHCP服务器。Windows默认安装并起用DHCP客户端服务! DHCP的作用就是动态分配IP的。例如:当一个局域网里才装500台计算机时,如果要人工地去每一台每一台地设置IP,那是挺麻烦的。也挺耗时的。于是就那域里一台计算机来域控制器。然后设好DHCP。至于要分配的IP段,由你个人来定。例:你可以让DHCP从192.168.0.0---192.168.0.255里分给下面的计算机
      DHCP服务的作用???

      DHCP原理详解

      DHCP的原理与配置 DHCP叫做动态主机配置协议,它可以帮助主机动态下发IP地址以及网关DNS服务器等信息,减少大型组网中手动配置IP地址的过程,将管理员的工作简化。以上是DHCP的原理,至于配置方面由于厂商很多,配置脚本也很多,,大家在配置的时候只需要记住几个点:1、创建地址池2、地址池中包含的网段信息,即可分配给主机的所有可用地址3、网关地址信息4、DNS服务器地址信息5、在接口上挂接地址池 无论什么品牌的设备,只要遵循这五个步骤,都可以完成DHCP的基础配置,当然,DHCP中还有很多更加深入技术点,例如基于DHCP安全的DHCP SNOOPING,以及DHCP RELAY等等。
      动态主机设置协议(Dynamic Host ConfigurationProtocol, DHCP)是一个局域网的网络协议,前身是BOOTP,采用C/S架构,使用UDP协议工作,DHCP是可自动将IP位址指派给登入TCP/IP网络的用户端的一种软件,主要有两个用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段。同时,DHCP 还可以帮客户端指定 router、netmask、DNS Server、WINSServer、等等项目 缺点:不能发现非DHCP客户端,不能查出被其他服务器使用的IP,不能跨路由。特性:DHCP snooping:监控客户端和服务器交互报文,也对DHCP有过滤功能,对非法DHCP进行过滤和屏蔽,可抵御DHCP服务器欺骗攻击、ARP中间人攻击和IP/MAC欺骗攻击。DHCP relay:中继地址分配:人工分配:为特定的计算机或网络设备绑定固定IP,地址不会过期。自动分配:一旦 DHCP 客户端第一次成功的从 DHCP 服务器端租用到 IP 地址之后,就永远使用这个地址动态分配:当DHCP客户端第一次从 DHCP 服务器端租用到 IP 地址之后,并非永久的使用该地址,只要租约到期,客户端就得释放(release)这个 IP 地址,以给其它工作站使用DHCP运作状态DHCP Server 与他的 Clients 都在同一个网段之内,可以透过软件广播的方式来达到相互沟通的状态。1、Client 端计算机设定使用 DHCP 协议以取得网络参数时,则在PC开机或重启网卡时会自动的发出 DHCPClient 的需求(DHCP DISCOVER 封包)给网域内的每部计算机,讯息内容:源地址0.0.0.0 目的地址255.255.255.255,非DHCP服务器将丢弃该包。(四次,周期为1s/9s/13s/16s),如果没有DHCP响应,客户端将会显示错误信息,宣告失败,之后,基于使用者的选择,系统会继续在 5 分钟之后再重复一次 DHCP discover 的过程。2、DHCP 主机响应讯息:DHCP会针对MAC对比确定是否做了静态IP映射,若有则将相关网络讯息返回给客户端,否则DHCP会在IPpool里捞一个未使用的IP(附上租约期限)返回给客户端(DHCP OFFER 封包,里面会带MAC和XID编号)。3、Client 端接受来自DHCP 主机的网络参数,并设定 Client自己的网络环境:当 Client 端接受响应的讯息之后,(若收到多DHCP响应,会向网络发送一个DHCP request广播封包,诉所有 DHCP 服务器它将指定接受哪一台服务器提供的 IP 地址)首先会以 ARP 封包在网域内发出讯息,以确定来自DHCP 主机发放的 IP 并没有被占用!如果该 IP 已经被占用了,那么,客户端则会送出一个 DHCPDECLINE 封包给 DHCP 服务器,拒绝接受其 DHCP offer ,并重新发送DHCP discover 信息;若该 IP 没有被占用,则client可以接受 DHCP 主机所给的网络的参数,那么这些参数将会被使用于 client端的网络设定当中,同时, Client 端也会对 DHCP 主机发出确认封包(DHCP request),告诉 Server这次的需求已经确认!而 Server 也会将该信息记录下来,会向客户端发出一个,DHCPACK 响应,以确认IP 租约的正式生效,也就结束了一个完整的 DHCP 工作过程。DHCP 发放流程第一次登录之后:一旦 DHCP 客户端成功地从服务器那里取得 DHCP 租约之后,除非其租约已经失效并且 IP 地址也重新设定回 0.0.0.0 ,否则就无需再发送 DHCP discover 信息了,而会直接使用已经租用到的 IP 地址向之前的DHCP服务器发出 DHCP request 信息,DHCP 服务器会尽量让客户端使用原来的 IP 地址,如果没问题的话,直接响应 DHCPack 来确认则可。如果该地址已经失效或已经被其它机器使用了,服务器则会响应一个 DHCPNACK 封包给客户端,要求其重新执行 DHCP discover。以 NT 为例子:DHCP客户端除了在开机的时候发出 DHCP request 请求之外,在租约期限一半的时候也会发出 DHCP request ,如果此时得不到 DHCP 服务器的确认的话,客户端还可以继续使用该 IP ;当租约期过了87.5%时,如果客户端仍然无法与当初的DHCP服务器联系上,它将与其它DHCP服务器通信。如果网络上再没有任何DHCP服务器在运行时,该客户端必须停止使用该IP地址,并从发送一个Dhcpdiscover数据包开始,再一次重复整个过程。要是您想退租,可以随时送出 DHCPRELEASE 命令解约,就算您的租约在前一秒钟才获得的。4、Client 端结束该IP 的使用权:Client 端离线、租约到期、主动释放(DHCPRELEASE)跨网络的 DHCP 运作问题:DHCP客户端还没有 IP 环境设定,所以也不知道 Router 地址,而且一般 Router 也不会将DHCP 广播封包传递出去,解决:使用DHCPAgent (或 DHCP Proxy )主机来接管客户的 DHCP 请求,然后将此请求传递给真正的 DHCP 服务器,然后将服务器的回复传给客户。这里,Proxy 主机必须自己具有路由能力,且能将双方的封包互传对方。DHCP配置:在Windows Server 2003系统中默认没有安装DHCP服务,因此需要安装DHCP服务。1、安装DHCP服务:开始-----控制面板------添加或删除程序-----添加/删除Windows组件---Windows组件向导---网络服务---详细信息--动态主机配置协议(DHCP)-- 依次单击“确定→下一步”按钮开始配置和安装DHCP服务。最后单击“完成”按钮完成安装。提示:如果是在Active Directory(活动目录)域中部署DHCP服务器,还需要进行授权才能使DHCP服务器生效。本例的网络基于工作组管理模式,因此无需进行授权操作即可进行创建IP作用域的操作。2、创建IP作用域1)开始→管理工具→DHCP,右键新建作用域。2)域名和描述。(只作标示,无意义)3)IP地址范围:4)添加排除5)租约期限(默认8天)6)配置DHCP选项(非域环境可以跳过)7)在打开的“域名称和DNS服务器”向导页中没有做任何设置,这是因为网络中没有安装DNS服务器且尚未升级成域管理模式.依次单击“下一步”按钮,跳过“WINS服务器”向导页打开“激活作用域”向导页。保持“是,我想现在激活此作用域”单选框选中状态,并依次单击“下一步”→“完成”按钮结束配置。8)开始→程序→管理工具→DHCP,单击右键,在快捷菜单中选中“授权”。(2K)设置DHCP客户端启动服务:services.msc----DHCP client域环境建议网络配置顺序为:活动目录的建立→WINS的建立→DNS的建立→DHCP的建立,这样可以减少很多麻烦。路由器配置DHCP服务器(Ipv4)Router(config)#intf0/0Router(config-if)#ipadd 192.168.1.1 255.255.255.0Router(config-if)#noshRouter(config)#ipdhcp excluded-address 192.168.1.1 //需排除路由器的接口既网关地址Router(config)#ipdhcp pool IPv4 //创建DHCP池Router(dhcp-config)#network192.168.1.0 /24 //宣告可分配网段er(dhcp-config)#default-Router192.168.1.1 //设置客户端的默认网关Router(dhcp-config)#dns-server61.128.114.133 //设置客户端DNS地址Router(dhcp-config)#lease2 //地址租期 Router(dhcp-config)#domain-nameewao_cn //设置客户端所在域
      DHCP原理详解

      DHCP协议

      DHCP动态主机配置协议TCP/IP协议想要运行正常的话,网络中的主机和路由器不可避免地需要配置一些信息(如接口的IP地址等)。有了这些配置信息主机/路由器才能提供/使用特定的网络服务。主机信息的必要元素有:IP地址、子网掩码、DNS服务器IP地址TCP/IP协议配置主机信息主要有三种方法:DHCP协议由来DHCP有Bootp协议发展而来。Bootp协议提供了有限的主机信息配置,且主机信息已经配置就很难被修改。DHCP提供 几乎所有的主机信息的配置,且引入了租约等概念,使得主机信息能够动态发生变化。 DHCP向后兼容Bootp。DHCP基于UDP/IP传输。DHCP服务器使用端口号67,DHCP 客户端使用端口号68.DHCP 主要分为两部分: 地址的管理 和 配置信息的传递DHCP协议数据包格式学习DHCP协议不能单纯学习协议本身,还必须连带了解它的封包结构,之所以这么说,是因为DHCP是一个特殊的"服务发现"类型的协议,它用于客户端"获取某种资源",所以它的封包格式具有一定的特殊性由于DHCP协议是初始化协议,更简单的说,就是让终端获取IP地址的协议,既然终端连IP地址都没有,何以能够发出IP报文呢?SERVER给CLIENT回送的报文该怎么封装呢?带着这些疑问,继续学习为了解决这个问题,DHCP报文的封装采取了如下措施:DHCP报文类型DHCP共有八种报文,不同报文之间的区别除了DHCP数据包本身之外,在封包上(UDP头,IP头、链路层头)也有一些差别DHCP Client发现阶段:即DHCP客户端寻找DHCP服务端的过程,对应于客户端发送DHCP Discovery,因为DHCP Server对应于DHCP客户端是未知的,所以DHCP 客户端发出的DHCP Discovery报文是广播包,源地址为0.0.0.0目的地址为255.255.255.255。网络上的所有支持TCP/IP的主机都会收到该DHCP Discovery报文,但是只有DHCP Server会响应该报文。DHCP Server提供阶段,即为DHCP Server响应DHCP Discovery所发的DHCP Offer阶段,即DHCP服务器提供IP地址的阶段。在网络中接收到DHCPdiscover发现信息的DHCP服务器都会做出响应,它从尚未出租的IP地址中挑选一个分配给DHCP客户机,向DHCP客户机发送一个包含出租的IP地址和其他设置的DHCPoffer提供信息即DHCP客户机选择某台DHCP服务器提供的IP地址的阶段。如果有多台DHCP服务器向DHCP客户机发来的DHCPoffer提供信息,则DHCP客户机只接受第一个收到的DHCPoffer提供信息,然后它就以广播方式回答一个DHCPrequest请求信息,该信息中包含向它所选定的DHCP服务器请求IP地址的内容。之所以要以广播方式回答,是为了通知所有的DHCP服务器,他将选择某台DHCP服务器所提供的IP地址即DHCP服务器确认所提供的IP地址的阶段。当DHCP服务器收到DHCP客户机回答的DHCPrequest请求信息之后,它便向DHCP客户机发送一个包含它所提供的IP地址和其他设置的DHCPack确认信息,告诉DHCP客户机可以使用它所提供的IP地址。然后DHCP客户机便将其TCP/IP协议与网卡绑定,另外,除DHCP客户机选中的服务器外,其他的DHCP服务器都将收回曾提供的IP地址当DHCP Client重新登录后,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCP ack确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时(比如此IP地址已分配给其它DHCP客户机使用),则DHCP服务器给DHCP客户机回答一个DHCP nack否认信息。当原来的DHCP客户机收到此DHCP nack否认信息后,它就必须重新发送DHCP discover发现信息来请求新的IP地址。DHCP获取到的IP地址都有一个租约,租约过期后,DHCP Server将回收该IP地址,所以如果DHCP Client如果想继续使用该IP地址,则必须更新租约。更新的方式就是,当当前租约期限过了一半后,DHCP Client都会发送DHCP Renew报文来续约租期。
      DHCP协议

      本文由 在线网速测试 整理编辑,转载请注明出处。

          热门文章

          文章分类