我有一个想在启动时调出的界面,但未配置。没有DHCP,没有静态IP。有没有办法在 18.04 中使用 Netplan 做到这一点?
我尝试了以下(有enp10s0f1
问题的设备在哪里),但它仍然只是让界面保持关闭:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
enp10s0f0:
dhcp4: yes
enp10s0f1:
dhcp4: no
这很重要的原因是我有 LXD 容器通过 macvlan 桥接使用该接口,因此该接口需要启动,但它不需要(而且我宁愿没有)主机上的 IP 地址。当我重新启动时,我真的不希望需要记住ip link set up enp10s0f1
。
更新:
我在 Netplan 的 Launchpad 中发现了这个看起来相关的错误报告,但据我所知,它是针对相反的情况:告诉 Netplan 配置一个接口,但不要自动启动它。但是,它确实表明我想做的事情也不可能。是这样吗?除了放弃Netplan,还有什么解决方法吗?
编辑,2019 年年中: 导致此问题的错误已修复。
有了这个错误修复,现在可以通过添加一个空配置来启动一个没有地址的接口:
{}
.使用问题中的示例,这样做
enp10s0f1
如下所示:原答案:
这实际上是 Netplan 中的一个错误:错误 #1728134,错误 #1763608。网络计划开发人员之一承认后者,但尚不清楚是否会提供修复。
一种解决方法是手动创建一个 systemd 单元来启动界面。创建一个
/etc/systemd/system/manual-iface.service
包含以下内容的文件:然后,使其在启动时运行:
你可以走了。您应该会看到
enp10s0f1
下次启动时自动出现。或者,如果您不想这样做,则恢复到 ifupdown 仍然是一种选择,正如问题所述。此处描述了回退。总而言之,安装 ifupdown,然后您可以使用传统的进行配置
/etc/network/interfaces
(这在网络上有很好的记录)。作为一种解决方法,如果只需要 IPv4 地址,可以通过 DHCP 配置 IPv6,这会自动启用接口: