如何让 17.10 服务器上的 netplan 与使用 MAC 地址保留的 Windows Server DHCP 服务器协同工作?

如何让 17.10 服务器上的 netplan 与使用 MAC 地址保留的 Windows Server DHCP 服务器协同工作?

要在较新的 Fedora 和 Arch 上执行此操作,必须进行设置dhcp-client-identifier = hardware以使 DHCP 正常工作。我怀疑 17.10 也是如此。但是,Artful 使用 netplan 和 systemd-networkd。

对于后者,我可以 [DHCP] ClientIdentifier=mac 在 /etc/systemd/network/(interface name).network 中设置,它会覆盖 /run/systemd/network/10-netplan-(ifname).network。

我更愿意在文件 /etc/netplan/01-netcfg.yaml 或 /etc/netplan/ 中的某处进行此项设置。

不过,这些是解决上述问题的具体方法。总体问题是如何使用 netplan 将具有 MAC 预留的 MS Windows Server 2012 DHCP 服务器与 Ubuntu 17.10 服务器结合使用。如果 DHCP 服务器不会对其他客户端产生重大影响,或者可以以某种方式按预留进行配置,我可能能够请求重新配置 DHCP 服务器。

(我本来想使用标签 windows-server,但由于某种原因它不存在)

答案1

我最近也遇到了这个问题。答案就在 netplan.io 示例中。您可以将该行添加dhcp-identifier: mac到 /etc/netplan/ 中的 yaml 文件中,然后运行netplan apply以立即应用更改。

从最后一项开始https://netplan.io/examples

Windows DHCP 服务器

对于由 Windows Server 使用 dhcp-identifier 键提供 DHCP 的网络,可以实现互操作性:

network:
  version: 2
  ethernets:
    enp3s0:
      dhcp4: yes
      dhcp-identifier: mac

答案2

对于那些在等待 Ubuntu 从上游提取此错误修复时只需要快速解决方案的人:

sudo rm /etc/machine-id
sudo systemd-machine-id-setup
sudo reboot

这通过强制 Ubuntu 客户端生成新的机器 ID 来解决重复的 IP 问题,这反过来又导致 netplan/networkd 生成新的 DUID,因此您将如预期的那样从 DHCP 服务器获得新的 IP 地址。

因此,它实际上并不是读取克隆后更改的 MAC,而是为克隆后的操作系统生成新的 DUID。

本质上,这是 Linux 的 newsid。

相关内容