linux网络服务[DHCP动态主机配置协议]——————DHCP工作原理、相关信息、配置文件详解、配置DHCP服务器、配置DHCP客户端

DHCP(动态主机配置协议)是局域网中的网络协议,用于集中管理IP地址分配。本文详细介绍了DHCP的工作流程,包括客户端请求IP、服务器响应、租约确认和续租等步骤,并探讨了配置DHCP服务器和客户端的方法。通过实例展示了如何搭建DHCP服务器及配置客户端以获取IP地址。
摘要由CSDN通过智能技术生成

1.DHCP是什么?

DHCP(动态主机配置协议)是一个局域网的网络协议。

主要工作在应用层的局域网的网络协议,数据传输时使用UDP不可靠传输协议,通常运用在大型局域网。

主要是集中管理(限速、限时)、分配网络资源,使网络中的主机能动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。

当很多新的服务器整体装机就是无人执守自动部署时,每个机器都需要一个ip,这时就使用dhcp分配ip就可以进行整体装机

2.DHCP工作原理

2.1 建立租约

给需要ip地址的服务器分配一个ip地址,当服务器不使用了之后,就会将ip收回来。

通过下图来解释:
在这里插入图片描述

  • 当客户端出现在网络中,没有ip地址,是没法和其他人正常通信的。他的通信方式是向他所再的局域网把数据包广播。
  • 广播一个ip地址的请求:DHCP Discover(寻找)
  • 当局域网中含有一个dhcp服务器时,服务器会给客户端一个DHCP Offer。
  • 客户机接收到offer后,会给第一个给他发送offer的服务器广播发送DHCP Request(表示:我要你分配,也告诉了其他服务器,不需要他们分配)
  • 当服务器收到Request之后,发送了DHCP ACK(表示可以给你分配)
  • 如果服务器收到Request之后,回复了DHCP NAK就表示,这里已经没有多余的IP可以给你分配了。
  • 如果没有分配成功,就从头再来,重新找一个DHCP服务器,请求ip资源。

接下来我们进行详细解释:

2.1.1 DHCP客户端进行IP请求

当一台服务器启动之后,没有对应的ip地址,他会先把0.0.0.0作为自己的ip地址,但时0.0.0.0不能作为核发的ip进行通信,所以客户机就必须通过DHCP服务器来获取一个合法的IP地址。

由于客户机DHCP的ip地址,所以他使用0.0.0.0的地址作为源地址,使用255.255.255.255(能够工作的任意IP地址)作为目标地址,使用UDP67端口作为目的端口来广播请求ip地址信息

广播信息DHCP Discover中包含了DHCP客户机的MAC地址和计算机名,以便使DHCP服务器能确定是哪个客户机发送的请求。

而不是DHCP服务器的其他服务器不会接收DHCP Discover,因为他就没有UDP67端口。

2.1.2 DHCP服务器相应请求

当DHCP服务器接收到客户机请求IP地址的信息时,他就在自己的IP地址池中查找是否有核发的IP地址提供给客户机。如果有,DHCP服务器就将此IP地址做上标记,加入到DHCP Offer的消息中,然后DHCP服务器就广播一则DHCP Offer消息。

DHCP Offer中含有以下信息:

  • DHCP客户机的MAC地址,如果有多个请求者,用来区分请求者。
  • DHCP服务器提供的合法IP地址、子网掩码、网关、租约。
  • DHCP服务器的IP地址-MAC地址,方便客户端顺利找到服务器。

只有发送了DHCP Discover的有可能接收,由于Offer中含有请求者的MAC,所以最终只有对应的请求者接收。

因为DHCP客户机还没有IP地址,所以DHCP服务器使用自己的IP地址作为源地址,使用255.255.255.255作为目标地址,使用UDP 68端口来广播DHCP Offer消息。

2.1.3 DHCP客户机选择IP

DHCP客户机从接收到的第一个DHCP Offer消息中选择IP地址,发出IP地址的DHCP服务器将该地址保留,这样地址就不能提供给另一个dhcp客户机了。

当DHCP客户机从接收到的第一个DHCP Offer消息中选择IP地址后,DHCP租约的第三过程发生。

客户机将所有的DHCP Request消息广播到所有DHCP服务器,并表明接收发送Offer服务器提供的内容。

DHCP Request消息包括为该客户机提供IP配置的服务器的服务表示(IP地址)。

DHCP服务器查看服务器标识字段,以确定他自己是否被选择为指定的客户机提供IP地址。

如果DHCP Offer被拒绝,则DHCP服务器会取消提供并保留的IP地址以用于下一个IP租约请求。

在客户机选择IP地址的过程中,虽然客户机选择了IP地址,但是还没有配置IP地址,而在一个局域网中可能含有几个DHCP服务器,所以还是要使用广播的方式,以0.0.0.0最为源地址,使用255.255.255.255作为目标地址,使用UDP 67端口作为目的端口来广播DHCP Request信息。

2.1.4 DHCP服务器确认租约

2.1.4.1 服务器确认租约:DHCP ACK

DHCP服务器接收到DHCP Request消息后,以DHCP ACK消息的形式向客户机广播成功的确认,该消息报含有IP地址的有效租约和其他可能配置的信息。

虽然服务器确认了客户机的租约请求,但时客户机还没有收到收到DHCP ACK消息,所以服务器仍然使用ip作为自己的源地址,使用255.255.255.255作为目标地址,使用UDP 68端口作为源端口来广播DHCP ACK消息。

当客户机接收到DHCP ACK,他配置了IP地址,完成了TCP/IP的初始化。

DHCP客户机收到DHCP服务器回应的ACK报文后,通过地址冲突检测(arp)发现服务器分配的地址冲突,或由于其他原因导致不能使用,则发送DECLINE报文,通只服务器分配的IP地址不可用。重新分配。

2.1.4.1 服务器拒绝租约:DHCP NACK

如果DHCP Request不成功,例如客户机试图租之前的IP地址,但该IP不再可用,或者因为客户机移动到其他子网,该IP无效时,DHCP服务器将广播否定确定消息DHCP NACK。

当客户接接收不到确认消息,将会重新开始DHCP租约过程。

2.1.5 当局域网中没有DHCP服务器

如果客户机无法找到DHCP服务器,他将从TCP/IP的B类网段169.254.0.0/26中挑选一个IP地址作为自己的IP地址,继续每隔5分钟尝试与DHCP服务器进行通讯,一但与DHCP服务器取得联系,则客户机放弃自动配置的IP地址,而是用DHCP服务器分配的IP地址。

2.2 DHCP客户机续租

根据DHCP服务器中DHCP服务的配置文件来进行判断,其中含有两个租约的信息:

  • 默认租约:客户机和服务器确定租约后,默认租给客户机的租约时间,专门用来续租的时间,当使用到默认租约的50%时客户机向服务器发送续租请求。
  • 最长租约:加入客户端向服务端续租,续不到了。就是客户机发送续租消息,服务器没有理会,所以客户机就使用到最长
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值