From 81843eeee0b4f8a24c4679cf7bd5914d9e768f32 Mon Sep 17 00:00:00 2001 From: "Xingyu.Wang" Date: Tue, 9 Oct 2018 12:14:54 +0800 Subject: [PATCH 1/2] PRF:20180907 How to Use the Netplan Network Configuration Tool on Linux.md @LuuMing --- ...lan Network Configuration Tool on Linux.md | 128 +++++++----------- 1 file changed, 47 insertions(+), 81 deletions(-) diff --git a/translated/tech/20180907 How to Use the Netplan Network Configuration Tool on Linux.md b/translated/tech/20180907 How to Use the Netplan Network Configuration Tool on Linux.md index 0027aafb6f..c4691e9651 100644 --- a/translated/tech/20180907 How to Use the Netplan Network Configuration Tool on Linux.md +++ b/translated/tech/20180907 How to Use the Netplan Network Configuration Tool on Linux.md @@ -1,21 +1,17 @@ 如何在 Linux 上使用网络配置工具 Netplan ====== +> netplan 是一个命令行工具,用于在某些 Linux 发行版上配置网络。 ![](https://www.linux.com/sites/lcom/files/styles/rendered_file/public/netplan.jpg?itok=Gu_ZfNGa) -多年以来 Linux 管理员和用户们使用相同的方式配置他们的网络接口。例如,如果你是 Ubuntu 用户,你能够用桌面 GUI 配置网络连接,也可以在 /etc/network/interfaces 文件里配置。配置相当简单且从未失败。在文件中配置看起来就像这样: +多年以来 Linux 管理员和用户们以相同的方式配置他们的网络接口。例如,如果你是 Ubuntu 用户,你能够用桌面 GUI 配置网络连接,也可以在 `/etc/network/interfaces` 文件里配置。配置相当简单且可以奏效。在文件中配置看起来就像这样: ``` auto enp10s0 - iface enp10s0 inet static - address 192.168.1.162 - netmask 255.255.255.0 - gateway 192.168.1.100 - dns-nameservers 1.0.0.1,1.1.1.1 ``` @@ -25,7 +21,7 @@ dns-nameservers 1.0.0.1,1.1.1.1 sudo systemctl restart networking ``` -或者,如果你使用不带systemd 的发行版,你可以通过老办法来重启网络: +或者,如果你使用不带 systemd 的发行版,你可以通过老办法来重启网络: ``` sudo /etc/init.d/networking restart @@ -33,13 +29,13 @@ sudo /etc/init.d/networking restart 你的网络将会重新启动,新的配置将会生效。 -这就是多年以来的做法。但是现在,在某些发行版上(例如 Ubuntu Linux 18.04),网络的配置与控制发生了很大的变化。不需要那个 interfaces 文件和 /etc/init.d/networking 脚本,我们现在转向使用 [Netplan][1]。Netplan 是一个在某些 Linux 发行版上配置网络连接的命令行工具。Netplan 使用 YAML 描述文件来配置网络接口,然后,通过这些描述为任何给定的呈现工具生成必要的配置选项。 +这就是多年以来的做法。但是现在,在某些发行版上(例如 Ubuntu Linux 18.04),网络的配置与控制发生了很大的变化。不需要那个 `interfaces` 文件和 `/etc/init.d/networking` 脚本,我们现在转向使用 [Netplan][1]。Netplan 是一个在某些 Linux 发行版上配置网络连接的命令行工具。Netplan 使用 YAML 描述文件来配置网络接口,然后,通过这些描述为任何给定的呈现工具生成必要的配置选项。 -我将向你展示如何在 Linux 上使用 Netplan 配置静态 IP 地址和 DHCP 地址。我会在 Ubuntu Server 18.04 上演示。有句忠告,你创建的 .yaml 文件中的间距必须保持一致,否则将会失败。你不用为每行使用特定的间距,只需保持一致就行了。 +我将向你展示如何在 Linux 上使用 Netplan 配置静态 IP 地址和 DHCP 地址。我会在 Ubuntu Server 18.04 上演示。有句忠告,你创建的 .yaml 文件中的缩进必须保持一致,否则将会失败。你不用为每行使用特定的缩进间距,只需保持一致就行了。 ### 新的配置文件 -打开终端窗口(或者通过 SSH 登录进 Ubuntu 服务器)。你会在 /etc/netplan 文件夹下发现 Netplan 的新配置文件。使用 cd/etc/netplan 命令进入到那个文件夹下。一旦进到了那个文件夹,也许你就能够看到一个文件: +打开终端窗口(或者通过 SSH 登录进 Ubuntu 服务器)。你会在 `/etc/netplan` 文件夹下发现 Netplan 的新配置文件。使用 `cd /etc/netplan` 命令进入到那个文件夹下。一旦进到了那个文件夹,也许你就能够看到一个文件: ``` 01-netcfg.yaml @@ -55,13 +51,11 @@ sudo cp /etc/netplan/01-netcfg.yaml /etc/netplan/01-netcfg.yaml.bak ### 网络设备名称 -在你开始配置静态 IP 之前,你需要知道设备名称。要做到这一点,你可以使用命令 ip a,然后找出哪一个设备将会被用到(图 1)。 +在你开始配置静态 IP 之前,你需要知道设备名称。要做到这一点,你可以使用命令 `ip a`,然后找出哪一个设备将会被用到(图 1)。 ![netplan][3] -图 1:使用 ip a 命令找出设备名称 - -[Used with permission][4] (译注:这是什么鬼?) +*图 1:使用 ip a 命令找出设备名称* 我将为 ens5 配置一个静态的 IP。 @@ -75,67 +69,46 @@ sudo nano /etc/netplan/01-netcfg.yaml 文件的布局看起来就像这样: +``` network: - -Version: 2 - -Renderer: networkd - -ethernets: - -DEVICE_NAME: - -Dhcp4: yes/no - -Addresses: [IP/NETMASK] - -Gateway: GATEWAY - -Nameservers: - -Addresses: [NAMESERVER, NAMESERVER] + Version: 2 + Renderer: networkd + ethernets: + DEVICE_NAME: + Dhcp4: yes/no + Addresses: [IP/NETMASK] + Gateway: GATEWAY + Nameservers: + Addresses: [NAMESERVER, NAMESERVER] +``` 其中: - * DEVICE_NAME 是需要配置设备的实际名称。 - - * yes/no 代表是否启用 dhcp4。 - - * IP 是设备的 IP 地址。 - - * NETMASK 是 IP 地址的掩码。 - - * GATEWAY 是网关的地址。 - - * NAMESERVER 是由逗号分开的 DNS 服务器列表。 + * `DEVICE_NAME` 是需要配置设备的实际名称。 + * `yes`/`no` 代表是否启用 dhcp4。 + * `IP` 是设备的 IP 地址。 + * `NETMASK` 是 IP 地址的掩码。 + * `GATEWAY` 是网关的地址。 + * `NAMESERVER` 是由逗号分开的 DNS 服务器列表。 这是一份 .yaml 文件的样例: ``` network: - - version: 2 - - renderer: networkd - - ethernets: - - ens5: - - dhcp4: no - - addresses: [192.168.1.230/24] - - gateway4: 192.168.1.254 - - nameservers: - - addresses: [8.8.4.4,8.8.8.8] + version: 2 + renderer: networkd + ethernets: + ens5: + dhcp4: no + addresses: [192.168.1.230/24] + gateway4: 192.168.1.254 + nameservers: + addresses: [8.8.4.4,8.8.8.8] ``` 编辑上面的文件以达到你想要的效果。保存并关闭文件。 -注意,掩码已经不用再配置为 255.255.255.0 这种形式。取而代之的是,掩码已被添加进了 IP 地址中。 +注意,掩码已经不用再配置为 `255.255.255.0` 这种形式。取而代之的是,掩码已被添加进了 IP 地址中。 ### 测试配置 @@ -165,20 +138,13 @@ sudo netplan apply ``` network: - - version: 2 - - renderer: networkd - - ethernets: - - ens5: - - Addresses: [] - - dhcp4: true - - optional: true + version: 2 + renderer: networkd + ethernets: + ens5: + Addresses: [] + dhcp4: true + optional: true ``` 保存并退出。用下面命令来测试文件: @@ -187,15 +153,15 @@ network: sudo netplan try ``` -Netplan 应该会成功配置 DHCP 服务。这时你可以使用 ip a 命令得到动态分配的地址,然后重新配置静态地址。或者,你可以直接使用 DHCP 分配的地址(但看看这是一个服务器,你可能不想这样做)。 +Netplan 应该会成功配置 DHCP 服务。这时你可以使用 `ip a` 命令得到动态分配的地址,然后重新配置静态地址。或者,你可以直接使用 DHCP 分配的地址(但看看这是一个服务器,你可能不想这样做)。 -也许你有不只一个的网络接口,你可以命名第二个 .yaml 文件为 02-netcfg.yaml 。Netplan 会按照数字顺序应用配置文件,因此 01 会在 02 之前使用。根据你的需要创建多个配置文件。 +也许你有不只一个的网络接口,你可以命名第二个 .yaml 文件为 `02-netcfg.yaml` 。Netplan 会按照数字顺序应用配置文件,因此 01 会在 02 之前使用。根据你的需要创建多个配置文件。 ### 就是这些了 -不管你信不信,那些就是所有关于使用 Netplan 的东西了。虽然它对于我们习惯性的配置网络地址来说是一个相当大的改变,但并不是所有人都用的惯。但这种配置方式值得一提...因此你会适应的。 +不管怎样,那些就是所有关于使用 Netplan 的东西了。虽然它对于我们习惯性的配置网络地址来说是一个相当大的改变,但并不是所有人都用的惯。但这种配置方式值得一提……因此你会适应的。 -在 Linux Foundation 和 edX 上通过 ["Introduction to Linux"] 课程学习更多关于 Linux 的内容。 +在 Linux Foundation 和 edX 上通过 [“Introduction to Linux”][5] 课程学习更多关于 Linux 的内容。 -------------------------------------------------------------------------------- @@ -204,7 +170,7 @@ via: https://www.linux.com/learn/intro-to-linux/2018/9/how-use-netplan-network-c 作者:[Jack Wallen][a] 选题:[lujun9972](https://github.com/lujun9972) 译者:[LuuMing](https://github.com/LuuMing) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出 From 952ef866611261e8cdc34baba4239e9a735d3cf1 Mon Sep 17 00:00:00 2001 From: "Xingyu.Wang" Date: Tue, 9 Oct 2018 12:15:15 +0800 Subject: [PATCH 2/2] PUB:20180907 How to Use the Netplan Network Configuration Tool on Linux.md @LuuMing https://linux.cn/article-10095-1.html --- ... How to Use the Netplan Network Configuration Tool on Linux.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {translated/tech => published}/20180907 How to Use the Netplan Network Configuration Tool on Linux.md (100%) diff --git a/translated/tech/20180907 How to Use the Netplan Network Configuration Tool on Linux.md b/published/20180907 How to Use the Netplan Network Configuration Tool on Linux.md similarity index 100% rename from translated/tech/20180907 How to Use the Netplan Network Configuration Tool on Linux.md rename to published/20180907 How to Use the Netplan Network Configuration Tool on Linux.md