深论DHCP服务器和客户端的IP分配(1)


在对DHCP协议学习的过程中,我们可能发现了不少值得注意的地方,尤其是DHCP服务器的使用,在很多方面都有所关注的重点问题。那么这里我们主要介绍DHCP服务器是如何为DHCP客户端自动分配IP地址,以及DHCP服务在跨子网中是如何实施DHCP中继代理的。

一 DHCP服务的自动IP地址分配原理

DHCP使用客户端/服务器Client/Server)模型。网络管理员建立一个或多个维护TCP/IP配置信息,并将其提供给客户端的DHCP服务器。服务器数据库包含以下信息。

网络上所有客户端的有效配置参数。

在指派到客户端的地址池中维护的有效IP地址,以及用于手动指派的保留地址。

服务器提供的租约持续时间。

通过在网络上安装和配置DHCP服务器,启用DHCP的客户端可在每次启动并加入网络时动态地获得其IP地址和相关配置参数。DHCP服务器以地址租约的形式将该配置提供给发出请求的客户端。

在以下3种情况下,DHCP客户机将申请一个新的IP地址。

计算机第一次以DHCP客户机的身份启动。

DHCP客户机的IP地址因某种原因如租约期到了,或断开连接了)已经被服务器收回,并提供给其他DHCP客户机使用。

DHCP客户机自行释放已经租用的IP地址,要求使用一个新的IP地址。DHCP客户机申请一个新的IP地址的总体过程如图6所示。其具体的过程如下。

1)DHCP客户机设置为"自动获得IP地址"后,因为还没有IP地址与其绑定,此时称为处于"未绑定状态"。这时的DHCP客户机只能提供有限的通信能力,如可以发送和广播消息,但因为没有自己的IP地址,所以自己无法发送单播的消息。

2)DHCP客户机试图从DHCP服务器那里"租借"到一个IP地址,这时DHCP客户机进入"初始化状态"。这个未绑定IP地址的DHCP客户机会向网络上发出一个源IP地址为广播地址0.0.0.0的DHCP探索消息,寻找看哪个DHCP服务器可以为它分配一个IP地址。

3)子网络上的所有DHCP服务器收到这个探索消息。各DHCP服务器确定自己是否有权为该客户机分配一个IP地址。

4)确定有权为对应客户机提供DHCP服务后,DHCP服务器开始响应,并向网络广播一个DHCP提供消息,包含了未租借的IP地址信息以及相关的配置参数。

5)DHCP客户机会评价收到的DHCP服务器提供的消息并进行两种选择。一是认为该服务器提供的对IP地址的使用约定称为"租约")可以接受,就发送一个请求消息,该消息中指定了自己选定的IP地址并请求服务器提供该租约。还有一种选择是拒绝服务器的条件,发送一个拒绝消息,然后继续从第1)步开始执行。

6)DHCP服务器在收到确认消息后,根据当前IP地址的使用情况以及相关配置选项,对允许提供DHCP服务的客户机发送一个确认消息,其中包含了所分配的IP地址及相关DHCP配置选项。

7)客户机在收到DHCP服务器的消息后,绑定该IP地址,进入"绑定状态"。这样客户机就有了自己的IP地址,就可以在网络上进行通信了。

二 DHCP中继代理原理

在大型的网络中,可能会存在多个子网。DHCP客户机通过网络广播消息获得DHCP服务器的响应后得到IP地址。但广播消息是不能跨越子网的。因此,如果DHCP客户机和服务器在不同的子网内,客户机还能不能向服务器申请IP地址呢?这就要用到DHCP中继代理。DHCP中继代理实际上是一种软件技术,安装了DHCP中继代理的计算机称为DHCP中继代理服务器,它承担不同子网间的DHCP客户机和服务器的通信任务。

中继代理是在不同子网上的客户端和服务器之间中转DHCP/BOOTP消息的小程序。根据征求意见文档RFC),DHCP/BOOTP中继代理是DHCP和BOOTP标准和功能的一部分。


相关内容