Linux Mint 20(systemd networkd)通过不调用 dhclient(isc-dhcp 客户端)来忽略 dhclient.conf

Linux Mint 20(systemd networkd)通过不调用 dhclient(isc-dhcp 客户端)来忽略 dhclient.conf

我正在运行 Linux Mint 20“Ulyana”,当它启动时它似乎完全忽略了/etc/dhcp/dhclient.conf

在以前的 Linux Mint 版本中,可以添加以下行/etc/dhcp/dhclient.conf

send dhcp-requested-address 192.168.1.125;

当 Linux Mint 启动时,它会调用dhclient(isc-dhcp 客户端),默认情况下会将其用作/etc/dhcp/dhclient.conf默认配置文件。

虽然dhclientLinux mint 启动后手动调用似乎工作正常,但这不是一个可接受的解决方案:

sudo -i
dhclient -v -4 -cf /etc/dhcp/dhclient.conf -pf /run/dhclient.eno1.pid -lf /var/lib/dhcp/dhclient.eno1.leases

看起来在以前的版本中,Linux Mint 的 systemd-networkd、systemd-dispatcher 或 NetworkManager 会调用dhclient但现在不再发生这种情况了。

有人知道我该如何修复或解决这个问题吗?

到底我想向 DHCP 服务器传递一些额外的请求参数. 主要是,我想请求一个定义的 IP 地址,即:192.168.1.125。

这些是 systemd 网络相关服务,似乎正在运行

networkd-dispatcher. service loaded active running
networking.service loaded active exited
NetworkManager loaded active running
network.target loaded active active

答案1

systemd-networkd 有绝不使用了 dhclient;它有自己的内置 DHCP 客户端库。

NetworkManager 支持多个 DHCP 客户端。默认值取决于您的发行版(和 NM 版本),但可以通过/etc/NetworkManager/NetworkManager.conf[main]节进行更改。

  • dhcp=dhclient运行独立的 dhclient 程序。
  • dhcp=internal使用内置客户端(从 systemd-networkd 复制的 sd-dhcp 库或 nettools/n-dhcp4 库,取决于 NM 版本)。
  • dhcp=systemd使用内置客户端(sd-dhcp 库)。
  • dhcp=nettools使用内置客户端(nettools/n-dhcp4 库)。

(请注意 NetworkManager绝不使用独立的 systemd-networkd 服务 - 它只是直接嵌入了部分网络代码。)

相关内容