曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 3270|回复: 0
打印 上一主题 下一主题

DHCP 服务介绍

[复制链接]

4918

主题

5880

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34395
跳转到指定楼层
楼主
发表于 2012-12-20 13:32:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
DHCP 全称为 Dynamic Host Configuration Protocol ,是一个简化主机 IP 地址分配管理的 TCP/IP 标准协议。DHCP 服务器可以动态地为客户端分配 IP 地址及其他相关的环境配置工作。

简介
在 TCP/IP 网络中,每台计算机都有唯一标识自身的计算机名和 IP 地址。计算机获取 IP 地址的方式有两种,一是手工输入静态 IP 地址,二是使用 DHCP 服务器分配动态 IP 地址。

采用手工输入静态 IP 的缺点是容易出错,特别是当计算机比较多时,缺点尤其明显,不但劳动强度大,还效率低下且容易出错,因此这种方式只适合于计算机数量不多的小型网络。

采用 DHCP 服务器自动分配,客户端计算机可以自动获取 IP 地址,默认网关和 DNS 等信息,从而避免了上述静态分配的缺点,因此 DHCP 服务非常适合大中型网络。

在实际中,现在许多家庭都同时拥有多台计算机,并买来路由器共享上网,而市面上的路由器默认就是 DHCP 工作方式,只要家里的计算机连入路由器,那么在计算机启动时,路由器就会为该台计算机分配内网 IP ,而内网网关 IP 就是路由器的内网 IP。

作为一款优秀的 IP 地址管理工具,DHCP 具有以下优点:

1. 提高效率。计算机自动获得 IP 地址信息并完成配置,减少了由于手工设置而可能出现的错误,极大的提高了工作效率,降低了劳动强度,减少了可能由于 TCP/IP 设置问题导致的网络故障。

2. 便于管理。当网络使用的 IP 地址段改变时,只需要修改 DHCP 服务器的 IP 地址池即可,而不必逐台修改网络内的所有计算机。

3. 节约 IP 地址资源。只有当 DHCP 客户端请求时才由 DHCP 服务器提供 IP 地址,当计算机关机后,又会自动释放该 IP 地址。通常情况下,网络内的计算机并不都是同时开机,因此即使 IP 地址数量较少,也能满足较多计算机的需求。

但是,如果 DHCP 服务器的设置有问题,那么就会影响网络中所有的 DHCP 客户端的正常工作。如果网络中只有一台 DHCP 服务器,当它发生故障时,所有的 DHCP 客户端既无法获得 IP 地址,也不能释放已有的 IP 地址,从而导致网络通信的瘫痪。针对这种情况,可以在一个网络中配置两台以上的 DHCP 服务器,当其中的一台失效时,就由另一台(或几台) DHCP 服务器提供服务,不影响网络的正常运行。如果在一个由多网段组成的网络中使用 DHCP,就必须在每个网段上各安装一台 DHCP 服务器,或者保证路由器具有前向自举广播的功能。

DHCP租借过程
作为 DHCP 客户端的计算机启动时,将从 DHCP 服务器获得其 TCP/IP 配置信息,并得到 IP 地址的租期。租期是指 DHCP 客户端从 DHCP 服务器获得完整的 TCP/IP 配置后对该 TCP/IP 配置的使用时间。

DHCP 客户端从 DHCP 服务器获得 IP 地址信息的工作过程大致如下:

1. DHCP 发现
当计算机被设置为自动获取 IP 地址时,既不知道自己的 IP 地址,也不知道 DHCP 服务器的 IP 地址。它会使用 0.0.0.0 作为自己的 IP 地址,255.255.255.255 作为服务器的地址,广播发送 DHCP 发现信息,在发现信息中包含了网卡的 MAC 地址和 NetBios 名称。

当发送第一个 DHCP 发现信息后,DHCP 客户端将等待 1 秒钟的时间。在此期间,如果没有 DHCP 服务器响应,DHCP 客户端将分别在第 9 秒,第 13 秒和第 16 秒重复发送 DHCP 发现信息。如果仍然没有得到 DHCP 服务器的应答,将每隔 5 分钟再广播一次发现信息,知道得到一个应答为止。同时,对于 Windows98/Me/2000/XP 这些客户端将自动从 Microsoft 保留的 IP 地址段(169.254.0.1~169.254.255.254) 中选择一个座位自己的 IP 地址。所以即使在网络中没有 DHCP 服务器,计算机之间仍然可以通过网上邻居发现彼此。

2. DHCP 提供
当网络中的任何一个 DHCP 服务器(同一个网络中存在多个 DHCP 服务器时)收到 DHCP 客户端的 DHCP 发现信息后,就从 IP 地址池里选取一个没有租借出去的 IP 地址,利用广播的方式提供给 DHCP 客户端。在还没有将该 IP 地址正式租用给 DHCP 客户端之前,这个 IP 地址会暂时被保留起来,以免分配给其他的 DHCP 客户端。

如果网络中有多台 DHCP 服务器都收到了 DHCP 客户端的 DHCP 发现信息,同时这些 DHCP 服务器都广播了一个应答信息给 DHCP 客户端时,则 DHCP 客户端将从收到应答信息的第 1 台 DHCP 服务器中获得 IP 地址及其配置。

提供应答信息是 DHCP 服务器发给 DHCP 客户端的一个响应,其中包含 IP 地址,子网掩码,租用期(以小时为单位) 和提供响应的 DHCP 服务器的 IP 地址。

3. DHCP 请求
当 DHCP 客户端收到第 1 个由 DHCP 服务器提供的应答信息后,将以广播方式发送 DHCP 请求信息信息给网络中所有的 DHCP 服务器。既通知它已选择的 DHCP 服务器,也通知其他没有被选中的 DHCP 服务器,以便这些 DHCP 服务器释放原本保留的 IP 地址,供其他 DHCP 客户端使用。在 DHCP 请求信息中包含所选择 DHCP 服务器的 IP 地址。

4. DHCP 应答
一旦被选择的 DHCP 服务器接收到 DHCP 客户端的 DHCP 请求信息后,就将已保留的 IP 地址标识为已租用,并以广播方式发送一个 DHCP 应答信息给 DHCP 客户端。该 DHCP 客户端在收到 DHCP 应答信息后,IP 地址的获得过程完成,并利用该 IP 地址与网络中的其它计算机进行通信。

IP 租约的更新与释放
当 DHCP 客户端租到 IP 地址后,不可能长期占用,而是有一个试用期(租期)。当 IP 地址使用时间到达租期的一半时,将向 DHCP 服务器发送一个新的 DHCP 请求,服务器收到该请求后,回送一个 DHCP 应答信息,重新开始一个租用周期。该过程就像是续签租赁合同,只是续约时间必须在合同期的一半时进行。

在进行 IP 地址的续租中有以下两个特例:

(1). DHCP 客户端重新启动时。
不管 IP 地址的租期有没有到期,当 DHCP 客户端重新启动时,都会自动以广播方式向网络中所有的 DHCP 服务器发送 DHCP 请求信息,请求继续使用原来的 IP 地址信息。如果没有 DHCP 服务器对此请求应答,并且原来 DHCP 客户端的租期还没有到期,DHCP 客户端将继续使用该 IP 地址。

(2). IP 地址的租期超过一半时。
当 IP 地址的租期到达一半的时间时,DHCP 客户端就会向 DHCP 服务器发送一个 DHCP 请求信息,以续租该 IP 地址。续租成功后,DHCP 客户端将开始一个新的租用周期;续租失败后,DHCP 客户端仍然可以继续使用原来的 IP 地址及其配置,但是该 DHCP 客户端将在租期达 87.5% 的时候再次利用广播方式发送一个 DHCP 请求信息,以便找到一台可以继续提供租期的 DHCP 服务器;如果还是续租失败,那么该 DHCP 客户端会立即放弃正在使用的 IP 地址,重新向 DHCP 服务器获得一个新的 IP 地址。

在以上的续租过程中,如果续租成功,DHCP 服务器会给该 DHCP 客户端发送一个 DHCPACK 信息,DHCP 客户端在收到该 DHCPACK 信息后进入新的一个 IP 地址租用周期;当续租失败时,DHCP 服务器将给 DHCP 客户端发送一个 DHCPNACK 信息,DHCP 客户端收到该信息说明该 IP 地址已经无效或被其它的 DHCP 客户端使用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2025-5-4 20:08 , Processed in 0.076942 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表