因此,显然 Ubuntu 18.04(或者甚至可能是 17.x 版本之一)引入了一种新机制来配置网络接口,称为netplan.io或netplan
简称。
现在所有这一切乍一看似乎都很好,直到您发现您的非常可定制的配置/etc/network/interfaces
无法轻松映射。我想这是我们为什么netplan
没有渲染器的/etc/network/interfaces
原因。
背后的主要目的netplan
似乎是提供一种统一的方法来表达网络配置,并以在撰写本文时 NetworkManager 和 Systemd-networkd 可以理解的格式呈现。显然/etc/network/interfaces
是事后才想到的(如果有的话)。我没有首先注意到这个开关,因为升级后的系统保留了包中实现的旧机制ifupdown
(以及许多提供替代方案的类似包)。
/etc/network/interfaces
允许通过将 shell 脚本放置在正确的文件夹中来引入新类型的节(参见此处的示例)。这种机制曾经(或在上游 Debian中)非常强大,但似乎在netplan
. 现在netplan
迎合了addresses
上述链接脚本引入的节的功能,但任何其他自定义脚本似乎都正确(我有一些脚本要为虚拟机和容器附加一些桥接并应用与它们相关的防火墙规则) .
我怎样才能实现类似的东西netplan
?或者更一般地说,如何从( , , , )中获得灵活性/etc/network/if-{down,post-down,pre-up,up}.d
和相应的节?interfaces(5)
down
post-down
pre-up
up
netplan
netplan
不支持ifupdown
钩子脚本,networkd-dispatcher
可用于配置您的脚本。Netplan : 使用 pre-up、post-up 等钩子脚本