什么是 DHCP?它是如何工作的?

听说过DHCP吗?它是让互联网每天正常工作的技术之一,大多数人不知道它的存在,更不用说知道它的作用了。但是,您可能听说过朋友或工作中的IT 人员(IT guy)提到DHCPDHCP服务器或DHCP客户端等术语。(Were)想知道那些乱七八糟的东西是什么吗?如果您想了解 DHCP 是什么、DHCP是如何工作(DHCP work)的以及它的用途,请继续阅读。在本文中,我们将解释所有这些以及更多内容:

什么是 DHCP?

DHCP 是动态主机配置协议(Dynamic Host Configuration Protocol)的首字母缩写。它是一种网络管理协议(network management protocol),服务器使用它来自动为连接到它们的计算机和设备分配 IP 地址。(used by servers to automatically assign IP addresses)

在局域网 ( LAN(LANs) ) 上,例如您的家庭或中小型办公室,提供DHCP的服务器通常由路由器运行。在大型网络中,例如由大公司或政府机构维护的网络,DHCP可以由专用服务器(专用计算机)提供,而不是简单的路由器。

在路由器上启用 DHCP 服务器

除了 IP 地址,DHCP还可用于自动为给定网络中的计算机和设备分配子网掩码(subnet mask)默认网关(default gateway)DNS服务器。(DNS)

DHCP 是如何工作的?

要了解DHCP的工作原理,您必须首先了解 IP 地址是什么的基础知识。简而言之(Put),IP 地址是连接到网络的计算机和其他设备的唯一标识符。网络中的PC(PCs)和其他设备(打印机、智能手机等)需要(network need)IP 地址才能在它们之间进行通信,向同一网络或互联网上的其他设备发送和接收数据。IP 地址适用于计算机网络,就像街道地址适用于城镇一样。您需要他们能够四处发送消息,知道它们被发送到哪里以及从哪里开始。

网络中的每台计算机和设备(computer and device)都需要一个有效的IP 地址(IP address)才能访问,并且计算机或设备(computer or device)可以通过两种方式获得一个。计算机(Computers)和设备可以使用静态(static)动态 IP 地址(dynamic IP addresses)静态 IP 地址(Static IP addresses)不是由服务器或路由器分配的。相反,它们是由您或您的网络管理员手动配置的。

在 Windows 10 PC 上手动设置 IP 地址

(Dynamic IP addresses,)另一方面,动态 IP 地址不是手动分配的,因此得名。它们是动态分配的,如果您愿意,也可以自动分配。谁或什么分配了他们?答案是DHCP,即动态主机配置协议(Dynamic Host Configuration Protocol)

Windows 10 PC 上的自动 (DHCP) IP 地址

当网络中的计算机或设备(computer or device)想要连接到其他人并与他们进行通信时,无论是在本地还是在 Internet 上,都会在短时间内发生一些事情:

  1. 想要连接到网络/互联网的计算机或设备向其(computer or device)服务器或路由器(server or router)询问IP 地址(IP address)主机或设备(host computer or device)发送的消息称为DHCP 发现(DHCP discovery)请求。
  2. 当服务器/路由器收到请求时,它将请求转发给其DHCP 网络(DHCP network)服务。服务器/路由器上的DHCP 服务(DHCP service)会查看其他计算机和设备尚未声明的可用IP 地址。(IP address)一旦DHCP server/router识别出空闲IP 地址(IP address),它就会将其发送到请求它的计算机或设备(computer or device)。这部分过程称为DHCP 提供(DHCP offer)
  3. PC/device接收到动态分配的IP地址(IP address)并将消息发送回DHCP server/router,确认它想要使用该IP 地址(IP address)。此步骤称为DHCP 请求(DHCP request)消息,因为主机实际请求提供的IP 地址(IP address)
  4. DHCP server/router收到请求消息(request message)时,它会向启动整个过程的计算机或设备(computer or device)发送最终消息。此消息称为DHCP 确认(DHCP acknowledgment),包含授予对计算机或设备(computer or device)的网络/互联网访问权限所需的所有其他配置信息(configuration information),例如网关和 DNS 服务器(gateway and DNS servers)
  5. 最后,DHCP server/routerIP 地址(IP address)标记为被请求它的计算机或设备(computer or device)占用和使用,它们现在可以与本地网络上的其他设备通信并访问(network and access)互联网(如果可用)。

家庭网络上运行的 DHCP 示意图

DHCP 租用时间是多少?

现在您知道了DHCP如何自动为计算机和设备分配 IP 地址。但是,从DHCP 服务器(DHCP server)接收到的 IP 地址不是永久的,您可能会想。IP 地址池是有限的,这意味着网络中可用的地址非常多。

此外,某些连接的计算机和设备可能不会永久保持打开状态,或者可能不会一直连接到同一个网络。这意味着,如果它们动态分配的 IP 地址是永久的,即使不再需要它们也会占用它们。因此,DHCP仅在有限的时间内临时分配 IP 地址。该时间称为DHCP 租用时间,(DHCP lease time,)您可以从这篇文章中了解更多信息:如何在Windows 10中更改(Windows 10)DHCP 租用(DHCP lease)时间。

路由器上的 DHCP 租用时间设置

总之,DHCP 租用时间(DHCP lease time)是一项功能,它允许DHCP服务器在经过指定的时间段后回收未使用的 IP 地址。

谁发明了DHCP?

虽然您现在知道为什么发明DHCP以及它的用途,但您可能还想知道DHCP是如何诞生的以及是谁发明了它。它的历史可以追溯到 1984 年,当时作为互联网标准权威的互联网工程任务组 (IETF)(Internet Engineering Task Force (IETF))创建了一个称为反向地址解析协议 (RARP)的(Reverse Address Resolution Protocol (RARP))网络协议(network protocol)。RARP 允许没有磁盘驱动器的计算机(称为无盘工作站——它们通过直接从中央服务器加载操作系统(operating system)来启动)自动接收 IP 地址。

然而,RARP难以实现和配置,因此很快(在 1985 年)改进为另一种称为BOOTP引导协议)的(Bootstrap Protocol)网络协议(network protocol)BOOTP服务器可以在多个子网上自动分配 IP 地址。

DHCP源于BOOTP,但也能够动态分配指定范围内的 IP 地址,以及在不再使用时回收它们(DHCP 租用时间(DHCP lease time)),并为网络计算机和设备提供其他配置选项,例如 IP 地址网关或DNS服务器。DHCP1993 年标准化,(standardized in 1993)此后不断得到改进。

您还有其他关于DHCP的问题吗?

现在您知道DHCP的含义和DHCP的作用了。这不是计算机世界和网络(computer world and networking)的一个小奇迹吗?您还有其他关于DHCP的问题吗?如果您这样做,或者您有什么要添加到我们的文章中,请随时在下面发表评论。



About the author

我是一名全职软件工程师,在使用 Windows 和 Mac 软件方面拥有超过 10 年的经验。我知道如何在两个平台上设计、测试和部署应用程序。我也有安全和系统管理方面的经验。我的技能和知识可以帮助您构建更好、更高效的计算机系统。



Related posts