众所周知,要配置网络,我们可以进行编辑/etc/network/interfaces
和执行/etc/init.d/networking restart
。
今天,我尝试使用Ubuntu 17.10,并且发现网络配置已更改。现在我们应该编辑/etc/netplan01-netcfg.yaml
并执行netplan apply
。
好的,这可能是一个不好的问题,但是我真的很想知道为什么Ubuntu进行了这样的更改。有充分的理由来解释这种变化吗?
众所周知,要配置网络,我们可以进行编辑/etc/network/interfaces
和执行/etc/init.d/networking restart
。
今天,我尝试使用Ubuntu 17.10,并且发现网络配置已更改。现在我们应该编辑/etc/netplan01-netcfg.yaml
并执行netplan apply
。
好的,这可能是一个不好的问题,但是我真的很想知道为什么Ubuntu进行了这样的更改。有充分的理由来解释这种变化吗?
Answers:
从“ 迁移到Netplan”的Ubuntu Wiki页面上:
基本原理
已实施Netplan以支持复杂网络配置的简单声明式表示,并解决了ifupdown的一些当前限制。Netplan提供了一种简单优雅的yaml配置格式,并支持多个后端提供程序。
netplan涵盖的ifupdown的一些缺点:
- ifupdown不能使用纯声明性语法表示所有配置;因此我们无法解析配置
- 所有netplan配置完全是声明性的。
- ifupdown只能按名称表示接口,因此不能跨设备移植
- netplan使用名称,MAC地址,驱动程序等进行匹配。
- 复杂配置中的竞争条件
- netplan在接口的定义中具有层次结构的上下文,因此该信息被传递到按正确顺序使用和应用的渲染器。
鉴于对复杂网络场景的需求不断增加(大型云使用通常需要对不同功能进行复杂的分层,例如VLAN上的绑定桥等),对于提高表示网络配置的简便性非常重要。
就像对更好但不兼容的事物进行了许多更改一样,将来的收获也会有些痛苦。
如果仍然需要/etc/network/interfaces
,可以使用它。从上Netplan Ubuntu的wiki页面:
我确实需要ifupdown,是否还可以使用它?
如果遇到确实需要使用
ifupdown
的情况netplan
,我们真的很想知道,所以您应该在Launchpad中提交一个错误。虽然我们不建议这样做,但是您可以在安装后删除
netplan
并ifupdown
安装,然后/etc/network/interfaces
手动填写以 按照您想要的方式配置网络。
众所周知,要配置网络,我们可以进行编辑
/etc/network/interfaces
和执行/etc/init.d/networking restart
。
众所周知,这曾经严重破坏了台式机。