什么是DHCP? (动态主机配置协议)

动态主机配置协议的定义

DHCP(动态主机配置协议)是一种用于为网络内IP地址分配提供快速,自动和集中管理的协议。

DHCP还用于在设备上配置正确的子网掩码默认网关DNS服务器信息。

DHCP如何工作

DHCP服务器用于发布唯一的IP地址并自动配置其他网络信息。 在大多数家庭和小型企业中, 路由器充当DHCP服务器。 在大型网络中,一台计算机可能充当DHCP服务器。

简而言之,过程如下:设备(客户端)从路由器(主机)请求IP地址,然后主机分配一个可用的IP地址,以允许客户端在网络上进行通信。 下面更详细一点...

一旦设备打开并连接到具有DHCP服务器的网络,它将向服务器发送一个请求,称为DHCPDISCOVER请求。

DISCOVER数据包到达DHCP服务器后,服务器尝试保留设备可以使用的IP地址,然后为该客户机提供DHCPOFFER数据包的地址。

一旦为选定的IP地址提供报价,设备就会用DHCPREQUEST数据包对DHCP服务器进行响应以接受数据包,然后服务器发送用于确认设备具有该特定IP地址的ACK并定义设备在获取新地址之前可以使用该地址的时间量。

如果服务器确定设备不能拥有IP地址,它将发送一个NACK。

所有这些当然都发生得非常快,您不需要知道您刚刚阅读的任何技术细节就能从DHCP服务器获取IP地址。

注意:更详细地了解此过程中涉及的不同数据包可以在Microsoft的DHCP基础页面上阅读。

使用DHCP的优点和缺点

计算机或连接到网络(本地或互联网)的任何其他设备必须正确配置为在该网络上进行通信。 由于DHCP允许配置自动发生,因此它几乎用于连接到网络的所有设备,包括计算机, 交换机 ,智能手机,游戏控制台等。

由于这种动态IP地址分配,两台设备具有相同的IP地址的可能性较小,使用手动分配的静态IP地址时非常容易遇到。

使用DHCP也使网络更容易管理。 从管理的角度来看,网络上的每台设备都可以获得一个IP地址,其默认网络设置仅用于自动获取地址。 唯一的另一种选择是手动分配地址给网络上的每个设备。

由于这些设备可以自动获取IP地址,因此它们可以从一个网络自由移动到另一个网络(因为它们都使用DHCP进行设置)并自动接收IP地址,这对移动设备非常有用。

在大多数情况下,当设备具有由DHCP服务器分配的IP地址时,每次设备加入网络时该IP地址都会更改。 如果IP地址是手动分配的,这意味着管理员不仅必须为每个新客户端分配一个特定地址,而且已分配的现有地址必须手动取消分配给任何其他设备使用同一地址。 这不仅耗时,而且手动配置每个设备也增加了遇到人为错误的可能性。

尽管使用DHCP有很多优点,但也存在一些缺点。 动态的,不断变化的IP地址不应该用于固定且需要持续访问的设备,如打印机和文件服务器。

虽然这样的设备主要存在于办公环境中,但为它们分配不断变化的IP地址是不切实际的。 例如,如果网络打印机的IP地址将来会在某个时间点发生变化,那么连接到该打印机的每台计算机都必须定期更新其设置,以便计算机了解如何联系打印机。

这种设置是非常不必要的,可以通过使用DHCP来为这些类型的设备使用DHCP,而是通过为它们分配静态IP地址来轻松避免。

如果您需要永久远程访问家庭网络中的计算机,相同的想法就会起作用。 如果启用了DHCP,那么该计算机会在某个时候获得新的IP地址,这意味着您记录为该计算机的那个IP地址长时间不准确。 如果您使用的远程访问软件依赖于基于IP地址的访问,则需要为该设备使用静态IP地址。

有关DHCP的更多信息

DHCP服务器定义了用于为设备提供地址的IP地址范围或范围 。 这个地址池是设备获得有效网络连接的唯一方式。

这是DHCP非常有用的另一个原因 - 因为它允许大量设备在一段时间内连接到网络,而不需要大量的可用地址。 例如,即使只有20个地址由DHCP服务器定义,只要不超过20个地址同时使用一个可用IP地址,30,50或甚至200个(或更多)设备就可以连接到网络。

因为DHCP会在特定的时间段( 租期 )内分配IP地址,所以使用ipconfig命令查找计算机的IP地址会随着时间的推移产生不同的结果。

尽管DHCP用于向其客户端提供动态IP地址,但并不意味着静态IP地址不能同时使用。 获取动态地址的设备和手动分配IP地址的设备可能都存在于同一网络中。

即使是ISP使用DHCP来分配IP地址。 识别您的公共IP地址时可以看到这一点。 除非您的家庭网络具有静态IP地址,否则这种情况可能会随着时间而改变,通常只有具有可公开访问的Web服务的企业才会这样。

在Windows中,当DHCP服务器无法向设备提供功能性IP地址时, APIPA会分配一个特殊的临时IP地址,并使用此地址,直到获得可用的地址。

互联网工程任务组的动态主机配置工作组创建了DHCP。