Ifupdown 静态不工作 18.04.2 LTS 服务器

Ifupdown 静态不工作 18.04.2 LTS 服务器

因此,我用 Ifupdown 替换了 Netplan,因为 Netplan 不允许我实时应用网络配置,而且我被告知这是一个已知问题。为此,我安装了 ifupdown,用于ip link show查看我的接口名称并创建了以下内容/etc/network/interfaces

allow-hotplug eno1
iface eno1 inet dhcp

allow-hotplug eno2
iface eno2 inet dhcp

allow-hotplug enp10s0f0
iface enp10s0f0 inet static
    address 10.0.1.235
    netmask 255.255.255.0
    gateway 10.0.1.1

allow-hotplug enp10s0f1
iface enp10s0f1 inet dhcp

我之所以使用,是allow-hotplug因为当我断开某些接口时系统会在启动时挂起并等待网络,因为我经常不会同时使用它们。

系统启动时,所有连接的接口都会通过 DHCP 获取 IP 地址,包括我静态配置的接口。要获取要应用的静态 IP 地址,我必须这样做,ifdown enp10s0f0这样ifup enp10s0f0就没问题了。

如果它很重要,则使用 删除 Netplan,apt-get purge nplan并使用 删除 cloud-init apt-get purge cloud-init

如何才能使我的静态配置在启动时起作用?

答案1

不幸的是,上述步骤不能完全启用 ifupdown 所需的功能,也不能完全删除 Netplan。为了解决这个问题,我按照以下说明进行操作https://askubuntu.com/a/1052023/946893以 root 身份运行以下命令:

systemctl unmask networking
systemctl enable networking
systemctl restart networking

systemctl stop systemd-networkd.socket systemd-networkd \
networkd-dispatcher systemd-networkd-wait-online

systemctl disable systemd-networkd.socket systemd-networkd \
networkd-dispatcher systemd-networkd-wait-online

systemctl mask systemd-networkd.socket systemd-networkd \
networkd-dispatcher systemd-networkd-wait-online

apt-get --assume-yes purge nplan netplan.io

shutdown -r now

此时静态配置在启动时起作用。

注意:静态配置下也缺少配置dns-nameservers 1.1.1.1 1.0.0.1,并且如链接答案中所述,还必须指定这些服务器,/etc/systemd/resolved.conf然后必须重新启动 systemd-resolved 服务

相关内容