接下来是这个问题:Ubuntu 18.04 上 DHCP 客户端的 IP 地址错误 。
这总结上述问题的另一种版本是,Ubuntu 已从使用 MAC 地址向 DHCP 服务器标识自身更改为在安装操作系统时生成的唯一标识符(可能)。解决方案是更改配置文件以恢复旧的行为。
我最近在使用一组 VirtualBox VM 时遇到了这种情况。我当时正在做一个涉及一组服务器之间通信的项目,因此我使用所需的软件设置了一个“基础”服务器,然后多次克隆它。当然,每个克隆的服务器都有相同的标识符,因此它们都从我们的 DHCP 服务器接收相同的 IP 地址。
上述问题的答案解决了这个问题,但是却让我感到疑惑:如何更改安装 Ubuntu 时分配的标识符?
答案1
正如我在您链接到的线程中所写,它会根据 生成 ID /etc/machine-id
。
默认客户端标识符=systemd-networkd 中的模式为
duid
,这意味着 DHCPv4 客户端 ID 基于 networkd 的 DHCPv6 DUID。默认DUID类型=networkd.conf 中的设置是
vendor
,其描述如下:如果“DUIDType=vendor”,则将使用“43793”作为供应商标识符(systemd)和 machine-id(5) 的哈希内容生成 DUID 值。如果未指定 DUIDType=,则这是默认值。
machine-id 还用于生成其他标识符,例如 IPv6 地址,因此即使您不使用 DHCP 也应该被删除/重新创建。