系统管理指南:IP 服务

第 13 章 规划 DHCP 服务(任务)

您可以在正在创建的或已经存在的网络中使用 DHCP 服务。如果要设置网络,请在尝试设置 DHCP 服务之前先阅读第 2 章。如果网络已经存在,请继续阅读本章内容。

本章介绍在网络上设置 DHCP 服务之前需要执行的操作。虽然您还可以使用命令行实用程序 dhcpconfig 来设置 DHCP 服务,但是此信息旨在用于 DHCP 管理程序。

本章包含以下信息:

为 DHCP 服务准备网络(任务列表)

在将网络设置为使用 DHCP 之前,必须收集信息以帮助您确定是配置一台还是多台服务器。使用下表中的任务列表来识别为使用 DHCP 服务而需要进行的网络准备工作。下表列出了各项任务、对任务内容的说明,以及对任务步骤进行详细描述的章节。

任务 

说明 

参考 

映射网络拓扑。 

确定并找到系统上可用的服务。 

映射网络拓扑

确定所需的 DHCP 服务器数量。 

根据预期的 DHCP 客户机数量确定所需的 DHCP 服务器数量。 

确定DHCP 服务器的数量

更新系统文件和 netmasks 表。

准确反映网络拓扑。 

更新系统文件和网络掩码表

映射网络拓扑

如果尚未映射网络拓扑,则应映射网络的物理结构。指明路由器和客户机的位置,以及提供网络服务的服务器的位置。此网络拓扑图可以帮助您确定用于提供 DHCP 服务的服务器。该图还可帮助确定 DHCP 服务器可以提供给客户机的配置信息。

有关规划网络的更多信息,请参见第 2 章

DHCP 配置过程可以从服务器的系统和网络文件中收集一些网络信息。更新系统文件和网络掩码表中介绍了这些文件。但是,您可能需要为客户机提供其他必须输入服务器宏的服务信息。检查网络拓扑时,请记录需要客户机识别的任何服务器的 IP 地址。例如,以下服务器可能会在系统上提供服务。DHCP 配置不会搜索这些服务器。

要避免的网络拓扑

在一些 IP 网络环境中,多个局域网 (local area networks, LAN) 共享同一网络硬件介质。这些网络可能会使用多个网络硬件接口或多个逻辑接口。DHCP 在这种共享介质网络中不能很好地工作。当多个 LAN 在同一物理网络上运行时,DHCP 客户机的请求便会发送到所有网络硬件接口。这种效果就好像将客户机同时连接到所有 IP 网络上一样。

DHCP 必须能够确定客户机的网络地址,以便为客户机指定一个适当的 IP 地址。如果在硬件介质上提供多个网络,则服务器无法确定客户机的网络。服务器在不知道网络号的情况下不能指定 IP 地址。

可以仅在其中一个网络上使用 DHCP。如果一个网络不能满足您的 DHCP 需求,则必须重新配置网络。您应该考虑以下建议:

确定DHCP 服务器的数量

您选择的数据存储选项会直接影响支持 DHCP 客户机所必需的服务器数量。下表显示了针对每种数据存储,一台 DHCP 服务器可以支持的 DHCP 和 BOOTP 客户机的最大数量。

表 13–1 一台 DHCP 服务器支持的客户机最大估计数量

数据存储类型 

支持的客户机最大数量 

文本文件 

10,000 

NIS+ 

40,000 

二进制文件 

100,000 

此最大数量是一个一般原则,不是绝对数量。一台 DHCP 服务器的客户机容量很大程度上依赖于服务器每秒必须处理的事务数量。租用时间和使用模式对事务处理率有重要影响。例如,假定租用设置为 12 小时并且用户在夜间关闭系统。如果许多用户在早上同一时间打开系统,服务器就会遇到事务处理高峰,因为许多客户机会同时请求租用。在这种环境中,DHCP 服务器只能支持较少的客户机;而在租用时间较长的环境或者由持续连接的设备(如电缆调制解调器)构成的环境中,DHCP 服务器可以支持更多客户机。

选择 DHCP 数据存储一节对各种数据存储类型进行了比较。

更新系统文件和网络掩码表

在 DHCP 配置过程中,DHCP 工具会扫描服务器上的各种系统文件,以查找可用于配置服务器的信息。

在运行 DHCP 管理程序或 dhcpconfig 配置服务器之前,必须确保系统文件中的信息是最新的。如果在配置服务器之后发现错误,请使用 DHCP 管理程序或 dhtadm 修改服务器上的宏。

下表列出了在 DHCP 服务器配置过程中收集到的一些信息及信息来源。请确保在服务器上配置 DHCP 之前已经正确设置了此信息。如果配置服务器之后对系统文件进行更改,则应重新配置服务以反映这些更改。

表 13–2 用于 DHCP 配置的信息

信息 

源 

注释 

时区 

系统日期、时区设置 

在安装 Oracle Solaris : 的过程中初始设置的日期和时区。您可以使用 date 命令更改日期。可以通过编辑 /etc/default/init 文件(设置 TZ 环境变量)来更改时区。有关更多信息,请参见 TIMEZONE(4) 手册页。

DNS 参数 

/etc/resolv.conf

DHCP 服务器使用 /etc/resolv.conf 文件获取 DNS 参数,如 DNS 域名和 DNS 服务器地址。有关 resolv.conf 的更多信息,请参见《系统管理指南:名称和目录服务(DNS、NIS 和 LDAP)》resolv.conf(4) 手册页。

NIS 或 NIS+ 参数 

系统域名、nsswitch.conf、NIS 或 NIS+

DHCP 服务器使用 domainname 命令获取服务器系统的域名。nsswitch.conf 文件可指示服务器在何处查找基于域的信息。如果服务器系统是 NIS 或 NIS+ 客户机,则 DHCP 服务器会执行查询以获取 NIS 或 NIS+ 服务器的 IP 地址。有关更多信息,请参见 nsswitch.conf(4) 手册页。

缺省路由器 

系统路由表、用户提示符 

DHCP 服务器搜索网络路由列表来为连接到本地网络的客户机查找缺省路由器。如果客户机不在同一网络上,则 DHCP 服务器一定会提示您有关信息。 

子网掩码 

网络接口、netmasks

DHCP 服务器查看自己的网络接口来确定本地客户机的网络掩码和广播地址。如果请求已由中继代理转发,则服务器会在中继代理的网络上获取 netmasks 表中的子网掩码。

广播地址 

网络接口、netmasks

对于本地网络,DHCP 服务器通过查询网络接口来获取广播地址。对于远程网络,服务器使用 BOOTP 中继代理的 IP 地址和远程网络的网络掩码来计算网络的广播地址。 

为 DHCP 服务器配置制定决策(任务列表)

本节介绍在网络上配置第一台 DHCP 服务器之前要制定的一些决策。下表将指导您做出配置网络以使用 DHCP 所需的决定,并为每项任务提供相关链接,使其跳转至说明执行每项任务的步骤的章节。

任务 

说明 

参考 

为 DHCP 选择一台服务器。 

决定服务器是否满足系统运行 DHCP 服务的要求。 

选择运行 DHCP 服务的主机

选择数据存储。 

比较数据存储类型,确定最适用于站点的数据存储。 

选择 DHCP 数据存储

设置租用策略。 

了解 IP 地址租用,以帮助确定适用于站点的租用策略。 

设置租用策略

选择路由器地址或路由器搜索。 

确定 DHCP 客户机是使用路由器搜索还是使用特定的路由器。 

确定用于 DHCP 客户机的路由器

选择运行 DHCP 服务的主机

了解网络拓扑之后,可以根据以下系统要求来选择设置 DHCP 服务器的主机。

主机必须满足以下要求:

选择 DHCP 数据存储

您可以选择在文本文件、二进制文件或 NIS+ 目录服务中存储 DHCP 数据。下表总结了每种数据存储类型的功能,并指明了使用每种数据存储类型的环境。

表 13–3 DHCP 数据存储的比较

数据存储类型 

性能 

维护 

共享 

环境 

二进制文件 

高性能、高容量 

低维护成本,无需数据库服务器。必须使用 DHCP 管理程序或 dhtadmpntadm 来查看内容。建议对常规文件进行备份。

不能在 DHCP 服务器之间共享数据存储。 

包含许多网络的中型到大型环境,其中每个网络都包含数以千计的客户机。适用于小型到中型 ISP。 

NIS+  

中等性能和容量,依赖于 NIS+ 服务的性能和容量 

DHCP 服务器系统必须配置为 NIS+ 客户机。需要对 NIS+ 服务进行维护。必须使用 DHCP 管理程序或 dhtadmpntadm 来查看内容。建议使用 nisbackup 进行常规备份。

DHCP 数据分布在 NIS+ 中,并且多台服务器可以访问相同容器。 

小型到中型环境,其中每个网络最多可包含 5000 台客户机。 

文本文件 

中等性能、低容量 

低维护成本,无需数据库服务器。ASCII 格式是可读格式,不需要使用 DHCP 管理程序、dhtadmpntadm 来查看。建议对常规文件进行备份。

DHCP 服务器之间可以共享数据存储,前提是 DHCP 数据存储在一个通过 NFS 挂载点导出的文件系统上。 

包含少于 10,000 台客户机的小型环境,其中每个网络包含数百台到一千台客户机。 

由于 NIS 不支持快速增量更新,因此不会提供传统的 NIS 作为数据存储选项。如果网络使用的是 NIS,则应使用文本文件或二进制文件进行数据存储。

设置租用策略

租用期可指定 DHCP 服务器允许 DHCP 客户机使用特定 IP 地址的时间。在服务器的初始配置过程中,必须指定站点范围的租用策略。租用策略可指明租用时间,并指定客户机是否可以续订其租约。服务器会使用您提供的信息设置缺省宏中的选项值,这些宏在配置过程中由服务器创建。可以通过在创建的配置宏中设置选项来为特定的客户机或客户机类型设置不同的租用策略。

租用时间以小时数、天数或星期数的形式指定租用有效的时间。为客户机指定 IP 地址或者重新协商 IP 地址的租用时,会计算租用的截止日期和时间。同时还会将租用时间的小时数添加到客户机的 DHCP 确认的时间标记中。例如,假定 DHCP 确认的时间标记为 2005 年 9 月 16 日上午 9:15,并且租用时间为 24 小时。本示例中的租用截止时间为 2005 年 9 月 17 日上午 9:15。租用截止时间存储在客户机的 DHCP 网络记录中,可以使用 DHCP 管理程序或通过 pntadm 实用程序查看该时间。

租用时间值应该相对较小,以便快速回收过期地址,另外,该值还应该足够大,以使租用时间长于 DHCP 服务中断的时间。修复运行 DHCP 服务的系统后,客户机应当能够正常工作。一般原则是指定的时间应该是预期的系统停机时间的两倍。例如,如果需要四个小时来获取和更换故障部件并重新引导系统,请将租用时间指定为八个小时。

租用协商选项可确定客户机是否可以在租用过期之前与服务器重新协商租用。如果允许协商租用,则客户机会跟踪租用中剩余的时间。当租用时间经过一半时,客户机会请求 DHCP 服务器将租用延长到最初的租用时间。在系统多于 IP 地址的环境中,应禁用租用协商。然后,对于 IP 地址的使用强制执行时间限制。如果 IP 地址足够多,则应启用租用协商,以避免在租用到期时强制客户机关闭网络接口。如果使客户机获取新的租用,则客户机的 TCP 连接(如 NFS 和 telnet 会话)可能会中断。可以在服务器配置过程中针对所有客户机启用租用协商。您可以通过使用配置宏中的 LeaseNeg 选项针对特定的客户机或客户机类型启用租用协商。


注 –

在网络上提供服务的系统应保留它们的 IP 地址。这类系统不应受短期租用的限制。如果为这类系统指定保留的手动 IP 地址而不是永久租用的 IP 地址,则可以在这些系统中使用 DHCP。然后,可以检测何时不再使用系统的 IP 地址。


确定用于 DHCP 客户机的路由器

主机系统使用路由器来进行本地网络之外的任何网络通信。主机必须知道这些路由器的 IP 地址。

配置 DHCP 服务器时,必须通过两种方法之一为 DHCP 客户机提供路由器地址。其中一种方法是为路由器提供特定的 IP 地址。但是,首选方法是指定客户机应通过路由器搜索协议来查找路由器。

如果网络上的客户机可以执行路由器搜索,则即使只有一个路由器,也应该使用路由器搜索协议。通过路由器搜索,客户机可轻松适应网络中路由器的变化。例如,假定一个路由器出现故障并由具有新地址的路由器取代。客户机可以自动搜索新地址,而不必获取新的网络配置以得到新路由器地址。

为 IP 地址管理制定决策(任务列表)

作为 DHCP 服务设置的一部分,需要确定服务器要管理的 IP 地址的几个方面。如果网络需要多台 DHCP 服务器,可将某些 IP 地址的任务指定给每一台服务器。必须决定如何划分地址的责任。下表是一个任务列表,描述在网络上使用 DHCP 时管理 IP 地址的任务。该表还包括指向详细说明如何执行每项任务的相关章节的链接。

任务 

说明 

参考 

指定服务器应管理的地址。 

确定希望 DHCP 服务器管理的地址及其数量。 

IP 地址的数目和范围

决定服务器是否应自动为客户机生成主机名。 

了解如何生成客户机主机名,以便决定是否生成主机名。 

生成客户机主机名

确定要指定给客户机的配置宏。 

了解客户机配置宏,以便为客户机选择一个合适的宏。 

缺省客户机的配置宏

确定要使用的租用类型。 

了解租用类型,以帮助确定最适合您的 DHCP 客户机的类型。 

动态和永久租用类型

IP 地址的数目和范围

在服务器的初始配置过程中,可以使用 DHCP 管理程序,通过指定块中的地址总数和第一个地址来添加一个 IP 地址块(或称地址范围)。DHCP 管理程序可根据此信息添加一个连续地址的列表。如果有几个非连续地址块,则可以通过在初始配置之后再次运行 DHCP 管理程序的地址向导来添加其他地址。

在配置 IP 地址之前,需要了解待添加地址的初始块中的地址数目,以及地址范围中第一个地址的 IP 地址。

生成客户机主机名

DHCP 的动态性质意味着 IP 地址不会与使用它的系统的主机名永久关联。如果选择此选项,DHCP 管理工具可生成一个客户机名称来与每个 IP 地址关联。客户机名称由一个前缀(或称作根名称)、一个连字符和一个由服务器指定的编号组成。例如,如果根名称为 charlie,则客户机名称为 charlie-1charlie-2charlie-3,依此类推。

缺省情况下,生成的客户机名称以管理客户机的 DHCP 服务器的名称开头。此策略在包含多台 DHCP 服务器的环境下非常有用,因为您可以在 DHCP 网络表中快速查看任何给定的 DHCP 服务器所管理的客户机。不过,可以将根名称更改为您所选择的任何名称。

配置 IP 之前,请确定是否需要 DHCP 管理工具生成客户机名称,如果是,请再确定要使用的根名称。

如果指定在配置 DHCP 的过程中注册主机名,则可以将生成的客户机名称映射到 /etc/inet/hosts 、DNS 或 NIS+ 中的 IP 地址。有关更多信息,请参见客户机主机名注册

缺省客户机的配置宏

在 Oracle Solaris : DHCP 中,是指网络配置选项及其指定值的集合。DHCP 服务器使用宏来确定要发送到 DHCP 客户机的网络配置信息。

配置 DHCP 服务器时,管理工具将通过两种方法收集信息:一种是从系统文件中收集,另一种是通过用户指定的提示符或命令行选项直接从用户处收集。使用此信息,管理工具可创建以下宏:

客户机会先接收包含在网络地址宏中的选项,然后再接收映射到 IP 地址的宏中的选项。此处理顺序使服务器宏中的选项优先级高于网络地址宏中的任何冲突的选项。有关宏处理顺序的更多信息,请参见宏处理的顺序

动态和永久租用类型

租用类型可确定租用策略是否适用于您所配置的 IP 地址。在服务器的初始配置过程中,可以通过 DHCP 管理程序为正在添加的地址选择动态或永久租用。如果使用 dhcpconfig 命令配置 DHCP 服务器,则租用为动态租用。

如果某个 IP 地址具有动态租用,则 DHCP 服务器可管理该地址。DHCP 服务器可以将 IP 地址分配给客户机、延长租用时间、检测地址不再使用的时间以及回收该地址。如果某个 IP 地址具有永久租用,则 DHCP 服务器只能分配该地址。然后,客户机将一直拥有该地址,直到将其明确释放为止。释放该地址时,服务器可将其指定给另一台客户机。只要将地址配置为永久租用类型,它即可不受租用策略的限制。

配置 IP 地址范围时,选择的租用类型会应用于此范围内的所有地址。要最大限度地利用 DHCP,应针对大多数地址使用动态租用。如有必要,可随后将各个地址修改为永久租用。但是,应该将永久租用的总数保持在最小程度。

保留的 IP 地址和租用类型

可以通过将 IP 地址手动指定给特定的客户机来保留它们。保留的地址既可以与永久租用关联,也可以与动态租用关联。将保留的地址指定给一个永久租用时,以下语句成立:

如果将保留的地址指定给动态租用,则只能将该地址分配给与其绑定的客户机。但是,客户机必须像地址未保留那样跟踪租用时间并协商延长租用期。使用此策略,您可以通过查看网络表来跟踪客户机使用地址的时间。

在初始配置过程中,不能为所有 IP 地址创建保留的地址。保留的地址旨在少量地用于单个地址。

规划多台 DHCP 服务器

如果要配置多台 DHCP 服务器来管理 IP 地址,请考虑以下几条原则:

规划远程网络的 DHCP 配置

完成 DHCP 的初始配置之后,即可将 IP 地址放入 DHCP 管理的远程网络中。但是,由于系统文件不是服务器的本地文件,并且 DHCP 管理程序和 dhcpconfig 无法查找提供缺省值的信息,因此必须提供此信息。尝试配置远程网络之前,请确保您了解以下信息:

有关添加 DHCP 网络的过程,请参见添加 DHCP 网络

选择用于配置 DHCP 的工具

收集信息和规划 DHCP 服务之后,即可准备配置 DHCP 服务器。您可以使用 DHCP 管理程序或命令行实用程序 dhcpconfig 配置服务器。使用 DHCP 管理程序,可以选择选项并指定之后用于创建 DHCP 服务器所用的 dhcptab 和网络表的数据。dhcpconfig 实用程序要求使用命令行选项指定数据。

DHCP 管理程序功能

DHCP 管理程序是一种基于 Java™ 技术的 GUI 工具,可提供 DHCP 配置向导。第一次在未配置为 DHCP 服务器的系统上运行 DHCP 管理程序时,配置向导会自动启动。DHCP 配置向导提供了一系列对话框,提示您配置服务器所需的基本信息: 数据存储格式、租用策略、DNS/NIS/NIS+ 服务器和域,以及路由器地址。向导从系统文件中获取某些信息,您只需确认信息是否正确,或者在需要时更正信息。

完成对话框并确认信息之后,DHCP 服务器守护进程便会在服务器系统上启动。然后,系统将提示您启动“添加地址向导”来配置网络的 IP 地址。最初仅会为 DHCP 配置服务器的网络,并且为其他服务器选项指定缺省值。完成初始配置之后,可以再次运行 DHCP 管理程序,以添加网络并修改其他服务器选项。

有关 DHCP 配置向导的更多信息,请参见使用 DHCP 管理程序来配置和取消配置 DHCP 服务器。有关 DHCP 管理程序的更多详细信息,请参见关于 DHCP 管理程序

dhcpconfig 功能

dhcpconfig 实用程序支持可用于配置和取消配置 DHCP 服务器,转换为新的数据存储以及从其他 DHCP 服务器中导入/导出数据的选项。使用 dhcpconfig 实用程序配置 DHCP 服务器时,此实用程序可从更新系统文件和网络掩码表中介绍的系统文件中获取信息。您不能像使用 DHCP 管理程序那样来查看和确认从系统文件中获取的信息。因此,在运行 dhcpconfig 之前更新系统文件非常重要。您也可以使用命令行选项覆盖 dhcpconfig 在缺省情况下从系统文件中获取的值。dhcpconfig 命令可以在脚本中使用。有关更多信息,请参见 dhcpconfig(1M) 手册页。

DHCP 管理程序与 dhcpconfig 的比较

下表总结了两种服务器配置工具之间的差异。

表 13–4 DHCP 管理程序与 dhcpconfig 命令的比较

功能 

DHCP 管理程序 

带有选项的 dhcpconfig

从系统中收集的网络信息。 

允许您查看从系统文件中收集的信息,并在需要时更改此信息。 

您可以使用命令行选项指定网络信息。 

配置速度。 

通过省略不必要的服务器选项的提示并改用缺省值来加快配置过程。您可以在完成初始配置之后更改不必要的选项。 

最快的配置过程,但是您可能需要指定许多选项值。 

第 14 章介绍了可用于通过 DHCP 管理程序或 dhcpconfig 实用程序来配置服务器的过程。