如何使用Netplan在Linux中配置网络

旧的配置步骤已经过时,新的配置步骤已经过时

Ubuntu服务器18.04它对管理员使用平台的方式做了一些重大改变。一个重要的变化是网络的配置方式,这可能会让许多老派用户感到困惑。配置网络的旧方法已经过时/etc/network/interfaces. 要在最新迭代中配置网络,请向Netplan问好。

Netplan是什么?

Netplan是用于在Linux系统上配置网络的实用程序,它对服务器或桌面上的每个网络接口使用YAML描述。

Netplan是如何工作的?

Netplan读取在中找到的YAML描述文件/etc/网络计划. 在操作系统的早期引导阶段,Netplan随后将(从用户创建的YAML文件)在/run目录中生成必要的配置文件,以便将每个网络设备的控制权移交给特定的网络守护进程。换句话说,您可以为网络接口创建一个YAML描述文件,Netplan可以读取并使用该文件使该特定接口工作。

复杂吗?

不要惊慌。虽然网络计划上的网络配置已启用服务器与以前的迭代有很大的不同,它并没有那么具有挑战性。然而,这是具体的。让我们看看如何通过Netplan在Ubuntu服务器18.04安装上配置网络。正如您所期望的,在Linux服务器上配置网络通常是通过命令行完成的,所以请准备好进行一些键入。

使用Netplan配置静态IP地址

使用ip a命令查找网络接口名称

因为我们讨论的是服务器安装,所以我们希望为静态IP地址. 关于Netplan YAML文件,您需要知道一件事。对于块的每一行,必须遵循适当的代码缩进。这并不意味着您必须将特定行缩进到特定点。这意味着,如果将块的第一行缩进三个空格,则必须将块的其余部分缩进三个空格。如果您不遵守这一点,Netplan将出错。

话虽如此,让我们进行配置。

  1. 在进行任何更改之前,您需要知道网络接口的名称。为此,请发出以下命令:

    ip的一个

    您应该看到列出的网络接口的名称(如ens5或ens3)。有了这个接口名,就可以进行配置了。

  2. 开箱即用,您可能会在中找到一个YAML文件/etc/网络计划.该文件将命名为01-netcfg。yaml或50-cloud-init.yaml。您需要编辑01-netcfg文件。yaml文件。如果它不存在,用命令创建它:

    sudo touch 01-netcfg.yaml

    如果文件确实存在,使用命令编辑它:

    sudo nano 01-netcfg.yaml
  3. 您的默认文件可能如下所示:

    网络:
    版本:2
    渲染器:networkd
    以太网:
    ens5:
    dhcp4:对

    以上配置是针对DHCP的。因为这是一个服务器,所以您希望使用一个静态IP地址,所以它永远不会改变。您必须编辑ens5行以下的所有内容。首先要做的是将dhcp4设置为false,像这样:

    dhcp4:假
    用于配置静态IP地址的Netplan YAML文件
  4. 接下来,为地址、网关和DNS名称服务器添加条目。例如:设置服务器的IP地址为192.168.1.206,网关为192.168.1.254,DNS服务器为8.8.4.4和8.8.8.8。这些条目被添加到dhcp4条目下面,看起来像这样:

    地址:[192.168.1.206/24]
    网关4:192.168.1.254
    域名服务器:
    地址:[8.8.4.4 8.8.8.8]
  5. 请记住,必须与缩进一致,否则,Netplan在读取文件时会出错。另外,请注意,设置网络掩码的方式与通过接口文件进行设置的方式不同。而不是像这样设置地址和网络掩码:

    地址= 192.168.1.206
    网络掩码=255.255.255.0

    这两种配置均通过单线处理:

    地址:[192.168.1.206/24]
  6. 使用以下键盘组合保存并关闭该文件:Ctrl键+x

  7. 保存该文件后,必须让Netplan知道这些更改。要使Netplan重新读取和应用配置文件,发出命令:

    sudo netplan应用
    Debugging netplan命令输出信息
  8. 您根本不应该看到任何错误或输出。如果你确实看到了错误,添加调试选项,它会在Netplan尝试应用配置文件时给出如下输出:

    sudo netplan--调试应用

    使用--debug选项应该可以为您提供足够的信息,帮助您对YAML文件进行故障排除。如果未收到任何输出,请发出以下命令:

    ip的一个

    上述命令的输出应该反映您刚才所做的更改。由于Netplan,您的服务器现在有了一个静态IP地址。

这个页面有用吗?