DHCP 客户机配置文件

用途

动态主机配置协议 (DHCP) 客户机程序 (dhcpcd) 的缺省配置信息。

描述

dhcpcd 配置文件包含用于记录信息的条目,请求的选项,要配置的接口以及其他项。

以下是配置文件中数据的格式。

# Comment line
# 字符表示存在从该点到行尾的注释。
numLogFiles n
指定日志文件数。 如果指定了 0 ,那么将不会维护任何日志文件,并且不会在任何位置显示任何日志消息。 n 是在最近日志文件的大小达到其最大大小并创建新的日志文件时保留的最大日志文件数。
logFileSize n
日志文件的最大大小。 当最新日志文件的大小达到其值时,它会被重命名并创建新的日志文件。 n 以千字节 (KB) 为单位进行测量。
logFileName filename
最新日志文件的名称和路径。 更新较少的日志文件将数字 1 附加到 (n-1) 它们的名称; 数字越大,文件越旧。
logItem <option name>
将要记录的一项。 允许其中多行。 这允许打开指定的日志记录级别。 以下是选项名称:
SYSERR
系统错误,在与平台的接口处
OBJERR
对象错误,在进程中的对象之间
PROTERR
客户机与服务器之间的协议错误
警告
警告,值得用户注意
活动
进程发生事件
ACTION
进程采用的操作
信息
可能有用的信息
ACNTING
谁被服务了,什么时候
跟踪
代码流,用于调试。
interface <ifName>
要在其中配置 DHCP 的接口。 这可能是要配置的接口。 允许这些值的倍数。 有一个特殊的条目,any。这指示 DHCP 客户机配置它成功找到并完成的第一个客户机。 如果any选项,那么不应指定任何其他接口。 接口语句后面可以紧跟一对花括号,在花括号中可以指定为此接口请求的选项。 在接口花括号内请求的选项仅适用于此接口。 请参阅 DHCP 服务器配置文件 以获取选项和格式的列表。
clientid <MAC | HOSTNAME>
指定要在与服务器的所有通信中使用的客户机标识。 MAC 表示应将特定接口的硬件地址用作客户机标识。HOSTNAME表示域主机名应用作客户机标识。 缺省值为MAC.
sniffer <exec string>
指定用引号括起的字符串,指示要执行的程序以检测接口的硬件故障/恢复。 dhcp 客户机将查找信号 23 (SIGIO) 以指示网络接口已启动,而信号 16 (SIGURG) 以指示网络接口已关闭。
option <code> [<value>] [exec <string>]
指定此客户机请求的选项。 它的作用域由它是在特定接口的一组花括号内,还是在所有花括号外决定。 如果在外部,那么它适用于所有接口。code是请求的选项的选项代码。value是该选项的请求值。 此值将随选项一起传递到服务器。 该值不是必需的。 关键字exec表示在服务器返回此选项时应该执行的字符串。 此字符串应该是可执行的 shell 脚本或程序。 字符串中可能包含 "%s"。 如果存在,那么将在 ascii 中提供服务器返回的值。
vendor
指定供应商扩展字段规范的特殊语法。 接着是一组花括号。 在花括号内,指定了供应商扩展字段的选项和值。 供应商扩展选项内的选项上的 exec 字符串无效。 忽略它。
reject <code>
指定如果服务器返回此选项代码,那么客户机应忽略此选项。 不应使用其值。
otherOptions <accept | reject>
指定客户机应如何处理所有其他选项。 这指的是没有专门用 "option" 语句请求或用 "reject" 语句拒绝的任何选项。 缺省情况是接受所有选项。
updateDNS <string>
用引号括起的字符串,指示要执行的程序使用 dhcp提供的 IP 地址和名称的新反向映射来更新 DNS 服务器。 此字符串应该包含四个 %s,以指示 dhcp 客户机中以下信息的位置:
hostname
选项 12 的值。 如果提供了值,那么将使用 dhcp 服务器返回的值。 否则,如果客户机在 文件中指定了值,那么将使用客户机请求的值。 如果客户机既未指定请求的主机名,也未指定服务器提供的主机名,那么将不会执行此 exec 字符串。
domainname
选项 15 的值。 如果提供了值,那么将使用 dhcp 服务器返回的值。 否则,如果客户机在 文件中指定了值,那么将使用客户机请求的值。 如果客户机既未指定请求的主机名,也未指定服务器提供的主机名,那么为空字符串 ("") 将由 dhcp提供。 因此,此值是可选的。
Ip Address
服务器向此客户机租赁的 IP 地址。 该字符串以点分表示法提供,例如 9.2.23.43。
leasetime
服务器授予的租赁时间。 此字符串是表示租赁秒数的十进制数字。

这些值由 dhcp 按以下顺序输出:

hostname domainname Ip Address leasetime

此功能随附了脚本 /usr/sbin/dhcpaction ,以及帮助 NIM 与 DHCP 客户机交互的操作。 按如下所示运行脚本:

/usr/sbin/dhcpaction hostname domainname ipaddress
leasetime < A | PTR | BOTH | NONE > NONIM

前四个参数将用于更新 DNS 服务器。 第五个参数指示 dhcpaction 更新 A 记录和/或 PTR 记录,或者不更新两者。 选项包括:A,PTR,BOTH,NONE. 第六个参数用于告诉服务器正在使用 NIM ,当客户机更改地址时需要进行处理。 这方面的选项是 NIM 和 NONIM。 在客户机上,必须将此值设置为 NONIM。

示例如下所示:
updateDNS "/usr/sbin/dhcpaction %s %s %s %s %s PTR
NONIM 2>&1 >>/tmp/updns.out"
initTimeout <超时>
指定超时值 (以分钟计)。 如果 dhcp 客户机未能在此超时值内为接口配置地址,那么它将停止进一步尝试。 此条目适用于运行 AIX® 操作系统的系统。

此文件是基本操作系统 (BOS) 运行时的网络支持设施中 TCP/IP 的一部分。

示例

此示例告诉 dhcpcd 守护程序使用最大大小为 100Kb 的日志文件,最多四个日志文件。

日志文件的基本名称为 /usr/tmp/dhcpsd.log。 用户还希望仅记录九种可能的日志条目类型中的四种。 用户还指定了用于更新动态域名服务器的字符串。 用户还指定了clientid服务器应该基于尝试配置的接口适配器的 MAC 地址。 用户还指定应接受所有选项并将其实例化 (otheroptions accept) ,选项 9 除外 (reject 9).

用户指定的选项是域 (选项 15) ,但由于此选项是接口关键字的全局选项,因此它适用于两个接口。

在每个接口中,使用选项 12 指定主机名。

numLogFiles     4
logFileSize     100
logFileName     /usr/tmp/dhcpsd.log
logItem         SYSERR
logItem         OBJERR
logItem         PROTERR
logItem         TRACE
updateDNS "nsupdate -h%s -d%s -i% %s"
clientid MAC
otheroptions accept
reject 9
option 15 "austin.ibm.com"
interface en0
{
        option 12 "e-chisos"
}
interface tr0
{
        option 12 "t-chisos"
}