Netplan以及如何正确烹饪

Ubuntu是一个很棒的操作系统,它已经很长时间没有与Ubuntu服务器一起使用了,从稳定版本更新您的桌面也没有意义。 不久前,我不得不遇到一个新版本的Ubuntu服务器18.04,当我意识到自己不如生活,无法配置网络时,我感到惊讶不已,因为使用/ etc / network文件编辑工具配置网络接口的旧系统/接口不见了。 但是什么代替了她呢? 可怕的事情,乍一看完全不可理解,请与Netplan见面。

坦白说,起初我不明白是什么问题,“为什么要这样做,因为一切都这么方便”,但是经过一番练习后,我意识到它具有自己的魅力。足够多的歌词让我们继续,什么是Netplan是一个新工具要在Ubuntu中配置网络,至少“在其他发行版中我没有看到这样的东西。” Netplan之间的显着区别是配置是用YAML编写的,是的,您没听说过YAML,开发人员决定紧跟时代(以及多少)。他们没有赞美它,但我仍然认为它是一种糟糕的语言。)主要的缺点 这种语言的一个特点是它对空格非常敏感,让我们通过一个示例来看一下配置。

配置文件位于路径/etc/netplan/file.yaml上,每个块之间应有+ 2个空格。

1)标准标头如下所示:

network: version: 2 renderer: networkd ethernets: enp3s0f0: dhcp4:no 

让我们看看我们刚刚做了什么:

  • 网络:是配置块的开始。
  • 渲染器:联网-在这里,我们指示将要使用的网络管理器,它可以是联网的或NetworkManager
  • 版本:2-据我所知,这里是YAML版本。
  • 以太网:-此块表示我们将配置以太网协议。
  • enps0f0:-指示我们将配置的网络适配器。
  • dhcp4:否-分别为6 v6 dhcp6禁用DHCP v4

2)让我们尝试分配IP地址:

  enp3s0f0: dhcp4:no macaddress: bb:11:13:ab:ff:32 addresses: [10.10.10.2/24, 10.10.10.3/24] gateway4: 10.10.10.1 nameservers: addresses: 8.8.8.8 

在这里,我们设置了poppy,ipv4,网关和dns服务器。 请注意,如果我们需要多个IP地址,则将它们用逗号分隔,并在其后加上一个必填空格。

3)如果需要粘合怎么办?

  bonds: bond0: dhcp4: no interfaces: [enp3s0f0, enp3s0f1] parameters: mode: 802.3ad mii-monitor-interval: 1 

  • 绑定:-一块块,说明我们将配置绑定。
  • bond0:-任意接口名称。
  • interfaces:-在bonding-ding中收集的一组接口,如果在方括号“中描述了多个参数,则如前所述”。
  • 参数:-描述参数设置块
  • 模式:-指示绑定的工作模式。
  • mii-monitor-interval:-将监视间隔设置为1秒。

在名为bond的块中,您还可以配置参数,例如地址,gateway4,路由等。

我们为网络增加了冗余,现在仅保留到挂起vlan ,就可以认为配置已完成。

 vlans: vlan10: id: 10 link: bond0 dhcp4: no addresses: [10.10.10.2/24] gateway: 10.10.10.1 routes: - to: 10.10.10.2/24 via: 10.10.10.1 on-link: true 

  • vlans:-声明vlan配置块。
  • vlan10:-vlan接口的任何名称。
  • id:-我们vlan的标签。
  • 链接:-通过VLAN可用的接口。
  • 路线:-声明路线描述块。
  • -至:-设置路由所需的地址/子网。
  • 通过:-指定将通过其提供子网的网关。
  • on-link:-表示在建立链接时始终需要注册路由。

注意如何放置空格,在YAML中非常重要。

在这里,我们描述了网络接口,创建了绑定,甚至添加了VLAN。 让我们应用配置,netplan应用团队将检查我们的配置是否有错误,如果成功,将其应用。接下来,当系统重新启动时,配置本身将上升。

收集了所有先前的代码块之后,我们得到的是:

 network: version: 2 renderer: networkd ethernets: enp3s0f0: dhcp4: no ensp3s0f1: dhcp4: no bonds: bond0: dhcp4: no interfaces: [enp3s0f0, enp3s0f1] parameters: mode: 802.3ad mii-monitor-interval: 1 vlan10: id: 10 link: bond0 dhcp4: no addresses: [10.10.10.2/24] routes: - to: 10.10.10.2/24 via: 10.10.10.1 on-link: true vlan20: id: 20 link: bond0 dhcp4: no addresses: [10.10.11.2/24] gateway: 10.10.11.1 nameserver: addresses: [8.8.8.8] 

因此,我们的网络已准备就绪,可以开始运行,所有内容都没有开始时那样令人恐惧,并且代码非常漂亮且可读性强。 PC感谢netplan, https: //netplan.io/上有一本非常好的手册。

Source: https://habr.com/ru/post/zh-CN448400/


All Articles