系统管理指南:IP 服务

MAC 地址和客户机 ID

为了方便指定地址,DHCPv4 使用 MAC 地址和可选的客户机 ID 来标识客户机。每次同一客户机到达网络时,它都会获取同一地址(如果可能)。

DHCPv6 使用基本相同的方案,但是它必须使用客户机 ID,并强制它采用特定结构。DHCPv6 中的客户机 ID 由以下两部分组成: DHCP 唯一标识符 (DHCP Unique Identifier, DUID) 和身份关联标识符 (Identity Association Identifier, IAID)。DUID 标识客户机系统(而不是如 DHCPv4 中那样仅标识接口),而 IAID 标识该系统上的接口。

如 RFC 3315 中所述,身份关联是服务器和客户机用来标识、分组和管理一组相关 IPv6 地址的方法。客户机必须将至少一个不同 IA 与其每个网络接口关联,然后使用指定的 IA 从服务器获取该接口的配置信息。有关 IA 的其他信息,请参见下一节“协议详细信息”。

DUID+IAID 也可以用于 DHCPv4。可以明确地将它们串联在一起,以便它们可以用作客户机 ID。由于兼容性原因,没有对常规 IPv4 接口执行此操作。但是,对于逻辑接口 ("hme0:1"),如果未配置客户机 ID,则使用 DUID+IAID。

与 IPv4 DHCP 不同,DHCPv6 未提供“客户机名称”选项,因此无法仅基于 DHCPv6 来命名系统。相反,如果需要知道与 DHCPv6 提供的地址相配的 DNS 名称,请使用 DNS 反向解析(通过 getaddrinfo(3SOCKET) 函数的地址到名称查询)查找对应的名称信息。这意味着,如果仅使用 DHCPv6 且希望节点具有特定的名称,则必须在系统上设置 /etc/nodename