如果不允许解释 DUID,DHCPv6 服务器如何为客户端分配固定 IPv6 地址?

如果不允许解释 DUID,DHCPv6 服务器如何为客户端分配固定 IPv6 地址?

根据RFC3315

每个 DHCP 客户端和服务器都有一个 DUID。DHCP 服务器使用 DUID 来识别客户端,以便选择配置参数并将 IA 与客户端关联。DHCP 客户端使用 DUID 在需要识别服务器的消息中识别服务器。

[...]

客户端和服务器必须将 DUID 视为不透明值并且必须仅比较 DUID 是否相等。客户端和服务器不得以任何其他方式解释 DUID

对于 IPv4,DHCP 服务器根据 MA​​C 地址等为客户端分配固定地址是很常见的。那么对于 IPv6,DHCPv6 服务器如何分配固定 IPv6 地址呢?

答案1

客户端不应在重启之间更改其 DUID,因此一旦您为客户端分配了特定的 IPv6 地址,它每次都应获取配置的地址。

DUID 的优点是,即使客户端使用具有不同 MAC 地址的不同网络适配器,它也会保持不变。缺点是您无法提前知道客户端将使用哪个 DUID(除非您有一些带外配置来强制客户端使用特定的 DUID)。

RFC6939指定一个选项,DHCPv6 中继可以使用该选项告诉 DHCPv6 服务器客户端的 MAC 地址。DHCPv6 服务器可以使用它来识别客户端。正式来说,DHCPv6 服务器不应该使用客户端的 MAC 地址或尝试解码 DUID,但它们当然可以作弊 :) 这种情况经常发生。

答案2

你读错了。他们可以比较 DUID 是否等于存储的值。他们不应该尝试以任何其他方式解释其内容,例如尝试检索 MAC 地址或类似的恶作剧。

它应该被视为一个不透明的值,即没有任何已知含义的数字序列。它们应该不是尝试推断序列的含义,但将其与存储的值进行比较以检查它们是否相等是可以的。根据 RFC,不能从序列中读取任何含义。

相关内容