当前位置:首页 > 游戏资讯 > 计算机网络中dhcp是什么(计算机网络原理怎么学)

计算机网络中dhcp是什么(计算机网络原理怎么学)

在TCP/lP网络中,每台计算机要想进行通信,存取网络上的资源,都必须配置TCP/IP参数,一些主要的TCP/IP参数如lP地址、子网掩码、默认网关、DNS服务器等是必不可少的。配置这些参数有两种方法:

自动分配(自动向DHCP服务器获得IP地址)

手动DHCP分配:管理员为客户端指定预分配的IP地址,DHCP只是将该IP地址传达给设备。

DHCP从可用地址池中选择静态IP地址,自动将它永久性地分配给设备。不存在租期问题,地址是永久性地分配给设备。

动态DHCP分配:DHCP自动动态地从地址池中分配或出租IP地址,使用期限为服务器选择的一段有限时间,或者直到客户端告知DHCP服务器其不再需要该地址为止。

手工配置TCP/IP参数是一些网络管理员习惯使用的方法。通常,网络管理员需要创建一张详细的配置清单,并将其带在身上或存放在计算机上,以便于随时查阅并配置IP地址、子网掩码以及默认网关和DNS服务器的IP地址。这种方法看似简单可行,但却相当费时且容易出错。

自动分配TCP/IP参数可以避免因手工配置带来的如工作量大、费时、易出错、地址易冲突等诸多问题,只需部署一台提供自动分配TCP/IP参数的服务器,其他计算机则无需配置或进行极为简单的配置就可以上网。我们把这种服务器称为DHCP服务器,动态获得IP地址的计算机就是DHCP客户端。

DHCP全称是DynamicHostConfigurationProtocol(动态主机配置协议),是由IETF(InternetEngineeringTaskForce,Internet工程任务组)设计开发的,专门用于为TCP/IP网络中的计算机自动分配IP地址,并完成TCP/IP参数(包括IP地址、子网掩码、默认网关以及DNS服务器等)配置的协议。DHCP服务器能够从预先设置的IP地址池中自动给主机分配IP地址,它不仅能够解决IP地址冲突的问题,也能及时回收IP地址以提高IP地址的利用率。

何时使用DHCP服务在实际工作中,通常在下列情况下需要采用DHCP服务器来自动分配TCP/IP参数:

1、网络的规模较大,网络中需要分配IP地址的主机较多,特别是要在网络中增加和删除网络主机或者要重新配置网络时,手工配置的工作量很大,而且常常会因为用户不遵守规则而出现错误,导致IP地址的冲突等,这时可以采用DHCP服务。

2、网络中的主机多,而IP地址不够用,这时也可以使用DHCP服务器来缓解这一问题。例如某个网络上有260台计算机,采用静态IP地址时,每台计算机都需要预留一个IP地址,即共需要260个IP地址,但可用的IP地址只有254个,若采用手工配置,永远有6台计算机无法接入网络,然而实际工作中,这260台计算机并不可能同时开机,使用DHCP恰好可以调节IP地址的使用。但这种情况对ISP(InternetServiceProvider,互联网服务供应商)来说是一个十分严重的问题,如果ISP有100000个用户,是否需要100000个IP地址?因此解决这个问题的方法就是使用DHCP服务。我们利用拨号上网实际上就是从ISP那里动态获得了一个公有的IP地址。

3、一些主机(例如采用无线或有线技术接入的笔记本电脑或PDA)在不同的子网中移动时,可以通过DHCP在移动到某一个子网时自动获得该子网的IP地址,无需做任何额外的配置,从而满足了移动用户的需求。报告厅、餐厅、宾馆等移动用户流动较大的公共场所通常采用DHCP服务器分配IP地址。

DHCP以客户端/服务器模式工作,像任何其它客户端/服务器关系一样运作。当一台PC连接到DHCP服务器时,服务器分配或出租一个IP地址给该PC。然后PC使用租借的IP地址连接到网络,直到租期结束。主机必须定期联系DHCP服务器以续展租期。这种租用机制可以确保主机在移走或关闭时不会继续占有它们不再需要的地址。DHCP服务器将把这些地址归还给地址池,根据需要重新分配。

租期的目的:合理有效的使用IP地址

假如DHCP给你的租期是10小时,当你用到5个小时的时候,DHCP会主动询问客户端你还要不要使用这个地址,如果你回应说还要用,那么DHCP会将你之前的使用时间清零,重新计时,租期任然10小时;如果你没有回应,则收回该地址。如果你一直续租则会永远循环下去,每隔5小时问你一次。

1.DHCP工作站第一次登录网络

当DHCP客户机第一次登录网络时,主要通过4个阶段与DHCP服务器建立联系,如图所示。

——DHCPDISCOVER(发现)IP租约选择——

——DHCPOFFER(提供)IP租约提供——

计算机网络中dhcp是什么,计算机网络原理怎么学

——DHCPACK(确认)IP租约确认——

(1)——DHCPDISCOVER(发现)IP租约选择——

当DHCP客户机第一次启动时由于客户机此时没有IP地址,也不知道服务器的IP地址,由于主机在启动时不具备有效的IP信息,因此它使用第2层和第3层广播地址与服务器通信。因此客户机在当前的子网中以0.0.0.0作为源地址,以255.255.255.255作为目标地址向DHCP服务器广播DHCPDiscover报文,申请一个IP地址。DHCPDiscover报文中还包括客户机的MAC地址和主机名。

(2)——DHCPOFFER(提供)IP租约提供——

DHCP服务器提供IP地址DHCP服务器收DHCPDiscover报文后,将从地址池中为它提供一个尚未被分配出去的IP地址,并把提供的IP地址暂时标记为“不可用”。服务器单播DHCPOffer报文送回给客户机,DHCPOffer报文中包含的信息如图所示。如果网络中包含有不止一个DHCP服务器,则客户机可能收到好几个DHCPOffer报文,客户机通常只承认第一个DHCPOffer。

当DHCP服务器收到DHCDISCOVER消息时,它会找到一个可供租用的IP地址,创建一个包含请求方主机MAC地址和所出租的IP地址的ARP条目,并使用DHCPOFFER消息传送绑定提供报文。DHCPOFFER消息作为单播发送,服务器的第2层MAC地址为源地址,客户端的第2层地址为目的地址。

某些情况下,来自服务器的DHCP消息交换可能是广播,而不是单播。

DHCP请求和提供DHCP客户机将等待1秒,若DHCP客户机未能得到DHCP服务器提供的地址,将分别以2秒、4秒、8秒和16秒的时间间隔重新广播四次,若还没有得到DHCP服务器的响应,则DHCP客户机将以0~1000毫秒内的随机时间间隔再次发出广播请求租用IP地址。如果DHCP客户机经过上述努力仍未能从任何DHCP服务器端获得IP地址,则可能发生以下两种情况之一:客户机将使用保留的B类地址169.254.0.1~169.254.255.254范围中的一个。

①如果客户端使用的是Windows2000及后续版本,并且Windows操作系统将自动设置IP地址的功能处于激活状态,那么客户端将自动从Microsoft保留IP地址段中选择一个自动私有地址(AutomaticPrivateIPAddress,APIPA)作为自己的IP地址。自动私有IP地址的范围是169.254.0.1~169.254.255.254。使用自动私有IP地址,在DHCP服务器不可用时,DHCP客户端之间仍然可以利用私有IP地址进行通信。所以,即使在网络中没有DHCP服务器,计算机之间仍能通过网上邻居发现彼此。

②如果使用其他的操作系统或自动设置IP地址的功能被禁止,则客户机无法获得IP地址,初始化失败。但客户机在后台每隔5分钟发送四次DHCPDiscover信息直到它收到DHCPOffer信息。

(3)——DHCPREQUEST(请求)IP租约选择——

客户机收到DHCPOffer后,广播向服务器发送一个包含有关DHCP服务器提供的IP地址的DHCPRequest报文。如果客户机没有收到DHCPOffer报文并且还记得以前的网络配置,此时可以使用以前的网络配置(如果该配置仍然在有效期限内)。

当客户端收到来自服务器的DHCPOFFER时,它回送一条DHCPREQUEST消息。此消息有两个作用:一是租用发起,一是租用更新和检验。用于租用发起时,客户端的DHCPREQUEST消息要求在IP地址分配后检验其有效性。此消息提供错误检查,确保地址分配仍然有效。DHCPREQUEST还用作发给选定服务器的绑定接受通知,并隐式拒绝其它服务器提供的绑定提供信息。

许多企业网络使用多台DHCP服务器。DHCPREQUEST消息以广播的形式发送,将绑定提供接受情况告知此DHCP服务器和任何其它DHCP服务器。

(4)——DHCPACK(确认)IP租约确认——

DHCP服务器在收到DHCPRequest信息后,立即发送DHCPAck确认信息,以确定此租约成立,且此信息中还包含其他DHCP选项信息

客户机接收到包含配置参数的DHCPAck报文,利用ARP检查网络上是否有相同的IP地址。如果检查通过,则客户机接受这个IP地址及其参数。如果发现有问题,客户机向服务器发送DHCPDecline信息,并重新开始新的配置过程。服务器收到DHCPDecline信息后,将该地址标记为“不可用”。

收到DHCPREQUEST消息后,服务器检验租用信息,为客户端租用创建新的ARP条目,并用单播DHCPACK消息予以回复。除消息类型字段不同外,DHCPACK消息与DHCPOFFER消息别无二致。客户端收到DHCPACK消息后,记录下配置信息,并为所分配的地址执行APR查找。如果它没有收到回复,则它知道该IP地址是有效的,将开始把它用作自己的IP地址。

2.DHCP工作站第二次登录网络

DHCP客户机获得IP地址后再次登录网络时,就不需要再发送DHCPDiscover报文了,而是直接发送包含前一次所分配的IP地址的DHCPRequest报文。当DHCP服务器收到DHCPRequest报文,会尝试让客户机继续使用原来的IP地址,并回答一个DHCPAck(确认信息)报文。如果DHCP服务器无法分配给客户机原来的IP地址,则回答一个DHCPNAck(不确认信息)报文。当客户机接收到DHCPNAck报文后,就必须重新发送DHCPRequest报文来请求新的IP地址。

DHCP服务器将IP地址分配给DHCP客户机后,有租用时间的限制,DHCP客户机必须在该次租用过期前对它进行更新。客户机在50%租借时间过去以后,每隔一段时间就开始请求DHCP服务器更新当前租借,如果DHCP服务器应答则租用延期。如果DHCP服务器始终没有应答,在有效租借期的87.5%时,客户机应该与任何一个其他的DHCP服务器通信,并请求更新它的配置信息。如果客户机不能和所有的DHCP服务器取得联系,租借时间到期后,它必须放弃当前的IP地址,并重新发送一个DHCPDiscover报文开始上述的IP地址获得过程。客户端可以主动向服务器发出DHCPRelease报文,将当前的IP地址释放。